自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 问答 (1)
  • 收藏
  • 关注

原创 面向对象的分析(OOA)

文章目录OOA模型OOA过程OOA模型OOA模型:需求模型:用况图:捕获与描述用户的要求基本模型(类图):对象层:给出所有与问题域和系统责任有挂你的对象,用对象类表示特征层:定义每个对象类的属性与服务关系层:通过已定义的关系描述对象类之间的关系辅助模型交互图:完成某项特定功能的一组对象之间的详细交互状态图:一个对象的状态变迁活动图:一个服务的流程或业务流程...

2019-05-27 15:09:14 6592 3

原创 LR(1)分析法

SLR(1)分析法只是简单地考察下一个输入符号b是否属于与归约项目A→αA\rightarrowαA→α相关联的FOLLOW(A),但b∈FOLLOW(A)b\in FOLLOW(A)b∈FOLLOW(A) 只是归约的一个必要条件,而非充分条件。假设栈内的符号串为 $ $ \delta\alpha $ ,规约之后变为 $ $\delta A$ ,当前读到的输入为a,若文法中不存在以 $ $\de...

2019-05-26 21:15:49 13322 2

原创 SLR(1)分析法

文章目录SLR分析法的基本思想SLR(1)分析表的构造LR(0)文法要求文法的每一个LR(0)项目都不含有冲突的项目,这个条件比较苛刻。对于大多数程序设计语言来说,一般都不能满足LR(0)文法的条件。例如:不难看出在状态I2I_2I2​中既存在规约项目,又存在移进项目,因而这个文法不是LR(0)文法。为了对语言句子进行确定性的分析,需要解决冲突。可以采用对含有冲突的项目集向前查看一个输入...

2019-05-26 09:52:11 28464 4

原创 LR(0)分析表的构造

文章目录文法规范句型的活前缀LR(0)项目构造识别文法所有规范举行活前缀DFA的方法定义闭包函数(CLOSURE)定义状态转移函数(GO)构造识别文法规范语句活前缀DFA的方法LR(0)分析表的构造文法规范句型的活前缀字符串的前缀是指字符串的任意首部,例如字符串"abc"的前缀有ϵ\epsilonϵ、a、ab、abc。规范语句活前缀是指规范语句的前缀,这种前缀不包括句柄右边的任何符号在...

2019-05-26 08:30:31 14701

原创 面向对象方法概论

文章目录OOAD方法发展过去4中主要的OO方法UML发展历史UML1的9种模型图扩展机制UML2UML1与UML2各种图的对照OOAD方法发展过去4中主要的OO方法Booch方法:特点:思想活跃,开拓和创新,可操作性不够强,类图与对象图并存Coad/Yourdon方法概念简练,过程清晰,强调概念的一致性,过程指导不够具体。Jacobson方法通过用况描述用户需求...

2019-05-22 09:02:06 417

原创 面向对象核心概念

文章目录对象哲学中的对象面向对象中的对象面向对象与基于对象面向对象基于对象封装与信息隐藏封装信息隐藏信息隐藏内容实例化抽象数据类型(Abstract Data Type,ADT)性质类属性(attribute)操作消息传递泛化与多态泛化多态原型与基调覆盖(override)与重载(overload)动态链接对象哲学中的对象与主体(subject)相对客体(对象)是可感知到或想象到的任何...

2019-05-21 16:46:16 1687

原创 Linux—用make进行宏编译

文章目录gcc的简易用法为什么要用makemakefile的基本语法与变量gcc的简易用法gcc - c hello.c:会自动生成hello.o这个文件,但并不会生成可执行文件gcc -O helo.c -c:会自动的生成hello.o这个文件,并进行优化gcc -o hello hello.c:-o后面接的是要输出binary file文件名gcc -o hello hello.c...

2019-05-21 09:09:19 1679 1

原创 类型表达式

文章目录类型表达式基本类型类型构造符数组构造符指针构造符笛卡尔乘积构造符`$✖$`函数构造符`$\rightarrow$`记录构造符类型表达式基本类型基本类型是类型表达式integerrealcharbooleantype_error(出错类型)void(无类型)可以为类型表达式命名,类型名也是类型表达式,将类型构造符作用于类型表达式可以构成新的类型表达式类型构造符...

2019-05-17 10:16:37 2333

原创 语法制导翻译方案SDT

文章目录概念将S-SDD转换为SDTS-SDD的SDT实现将L-SDD转换为SDTL-SDD的SDT实现概念语法制导翻译方案SDT是在产生式右部嵌入了程序片段(称为语义动作)的CFG例如:SDT可以看做是SDD的具体实施方案。在两种情况下,SDT可以在语法分析过程中实现:基本文法可以使用LR分析技术,且SDD为S属性基本文法可以使用LL分析技术,且SDD为L属性将S-SDD转...

2019-05-15 21:49:45 2971

转载 软件体系结构--责任链模式

文章目录概念例子总结优点缺点概念责任链模式为某个请求创建一个对象链,每个对象依次检查此请求,并对其进行处理,或者将它传给链中的下一个对象。链表是很常见一种数据结构,责任链模式的结构其实和链表相差无几,唯一的区别就是责任链模式中所有的对象都有一个共同的父类(或接口):在责任链模式中,N个 Handler 子类都处理同一个请求,只不过具体的职责有所差别。当有一个请求进入时,先经过 AHan...

2019-05-14 00:00:45 268

原创 软件体系结构--模板方法模式

文章目录概念例子钩子函数总结优点缺点概念模板方法模式在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。模板方法模式类图:例子大家可能还记得2000年赵本山跟宋丹丹小品的笑话吧,“把大象装冰箱总共分三步,把冰箱门打开、把大象装进去、把冰箱门关上”。那么这个过程用代码描述如下:public class Put...

2019-05-14 00:00:07 231

原创 软件体系结构--模板方法模式

文章目录概念例子钩子函数总结优点缺点概念模板方法模式在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。模板方法模式类图:例子大家可能还记得2000年赵本山跟宋丹丹小品的笑话吧,“把大象装冰箱总共分三步,把冰箱门打开、把大象装进去、把冰箱门关上”。那么这个过程用代码描述如下:public class Put...

2019-05-13 22:39:27 315

原创 软件体系结构--外观模式

文章目录概念例子总结优点缺点概念外观模式提供了一个接口,用来访问子系统中定义的一堆接口。换句话说,外观模式提供了一个高层接口,使得可以更简便的使用子系统。现在很多汽车上都有“一键启动”的功能。这个“一键启动”的按钮,就可以理解为外观模式提供的高层接口。汽车中包含了各种各样的子系统,子系统之间也许还有各种各样的关系。那如果我们如果要一个一个的启动车上的各类子系统才能最终发动车辆是不是就过于...

2019-05-13 16:05:40 602

原创 软件体系结构--适配器模式

文章目录概念例子总结优点缺点概念适配器模式将一个类的接口,转换成客户期望的另一个接口。就像生活中常见的转接头,转接头可以帮助我们将一种接口转换为另一种完全不同的接口。那么这个转接头就是适配器。适配器分为两种:类适配器对象适配器类适配器类图:可以看出,类适配器模式需要语言支持多继承,而在不支持多继承的语言中,则需要使用对象适配器。对象适配器类图:类适配器中的适配器是继承自...

2019-05-13 09:28:07 1207 1

转载 软件体系结构--观察者模式

文章目录概念例子总结优点缺点概念观察者模式是对象的行为模式,又叫发布-订阅(Publish/Subscribe)模式、模型-视图(Model/View)模式、源-监听器(Source/Listener)模式或从属者(Dependents)模式。观察者模式一般是一种一对多的关系,可以有任意个(一个或多个)观察者对象同时监听某一个对象。监听的对象叫观察者(后面提到监听者,其实就指观察者,两者是等...

2019-05-13 00:09:15 1590

原创 软件体系结构--装饰器模式

文章目录概念例子分析总结概念装饰器模式可以动态地将一些属性、能力添加到一个对象上。若要扩展功能,装饰器提供了比继承更具有弹性的方式。装饰器模式类图:例子如果大家看过变形金刚2,应该还记得电影后期擎天柱接受了一个老霸天虎(好像是吧)的翅膀等一系列零件,从而具备了飞行的能力。通过这个例子就能很好地理解装饰器模式。首先是变形金刚的接口:public interface Transform...

2019-05-12 23:09:02 564

原创 软件体系结构--策略模式

文章目录概念代码实现优点概念策略模式定义了一类算法,分别封装起来,让这些算法之间可以相互替换,从而达到实现不同功能的目的。策略模式让算法的变化独立于使用算法的客户。策略模式类图:从图中可以看出,操作被封装到类中,这些又都实现了同一个接口,然后在Context类中被调用。举一个具体的例子,如计算器:代码实现还是以计算器为例首先是Operation接口:public interf...

2019-05-12 11:22:08 1060

原创 S-属性定义与L-属性定义

文章目录S-属性定义L-属性定义S-属性定义仅仅使用综合属性的SDD称为S属性的SDD,或S-属性定义、S-SDD。例如:如果一个SDD是S属性的,可以按照语法分析树节点的任何自底向上顺序来计算它的各个属性值S-属性定义可以在自底向上的语法分析过程中实现L-属性定义直观含义:在一个产生式所关联的各属性之间,依赖图的边可以从左到右,但不能从右到左。正式定义:一个SDD是L...

2019-05-11 20:00:43 13794

原创 SDD的求值顺序

文章目录依赖图属性值的计算顺序语义规则建立了属性之间的依赖关系,在对语法分析树节点的一个属性求值之前,必须首先求出这个属性值所依赖的所用属性值。依赖图依赖图是一个描述了分析树种节点属性间依赖关系的有向图分析树中每个标号为X的节点的每个属性a都对应着依赖图中的一个结点如果属相X.a的值依赖于属性Y.b的值,则依赖图中有一条从Y.b的结点指向X.a的结点的有向边例如:属性值的计算顺...

2019-05-11 18:50:40 777

原创 语法制导翻译概述

文章目录部分概念语义翻译语法制导翻译语法制导翻译的基本思想语法制导翻译的相关概念语法制导定义(Syntax-Directed Definitions,SDD)语法制导翻译方案(Syntax-Directed Translation Scheme,SDT)SDD与SDTSDDSDT部分概念语义翻译语义分析的结果通常用中间代码来表示,于是语义分析与中间代码生成这两个步骤合称语义翻译。语法制导翻...

2019-05-11 18:06:38 7519

原创 语法制导定义SDD

文章目录概念文法符号的属性综合属性继承属性例子属性文法概念语法制导定义SDD是对CFG的推广将每个文法符号和一个语义属性集合相关联将每个产生式和一组语义规则相关联,用来计算该产生式中各文法符号的属性值文法符号的属性综合属性在分析树节点N上的非终结符A的综合属性只能通过N的子节点或N本身的属性值来定义。终结符可以具有综合属性,终结符的综合属性值是由词法分析器提供的词...

2019-05-11 18:05:41 3236

原创 语法制导翻译概述

文章目录部分概念语义翻译语法制导翻译语法制导翻译的基本思想语法制导翻译的相关概念语法制导定义(Syntax-Directed Definitions,SDD)语法制导翻译方案(Syntax-Directed Translation Scheme,SDT)SDD与SDTSDDSDT部分概念语义翻译语义分析的结果通常用中间代码来表示,于是语义分析与中间代码生成这两个步骤合称语义翻译。语法制导翻...

2019-05-11 10:03:18 2812

原创 LR(0)项目

文章目录项目的概念增广文法文法中的项目后继项目LR自动机项目的概念右部某位置标有圆点的产生式称为相应文法的一个 ·LR(0)项目(简称为项目)。例如:$S \rightarrow{bBB}$$S \rightarrow{·bBB}$为移进项目$S \rightarrow{b·BB}$、$S \rightarrow{bB·B}$为待约项目。$S \rightarrow{bBB·}$为规...

2019-05-10 14:52:20 2970

原创 Linux—ps命令

文章目录进程的查看ps命令参数仅查看自己的bash的相关进程查看系统所有进程进程的查看ps命令ps命令能将某个时间点的进程运行情况选取下来。参数-A:所有的进程均显示出来-a:不与terminal有关的所有进程-u:有效用户相关的进程x:通常与a这个参数一起使用,可列出较完整信息。仅查看自己的bash的相关进程使用ps -l就可以查看自己的bash的相关进程。查看系统所有...

2019-05-07 09:29:16 2094

原创 Linux--进程

文章目录进程和程序子进程与父进程进程调用的流程服务进程和程序“执行一个命令或者程序”便可以触发一个事件而取得一个PID,这就产生了一个进程。而当我们想要系统进行工作时,我们就得需要启动一个二进制文件,而这个二进制文件就是程序。每个进程都有三组人的权限,每组人都具有r/w/x的权限,不同的用户执行这个程序时,系统所给予的权限也不一样。例如当我们登录并执行bash的时候,系统就已经根据etc/...

2019-05-07 08:57:54 79

原创 自底向上的语法分析

文章目录概念移入-规约分析工作过程可采取的动作例子存在的问题概念从分析树的 底部(叶节点)向 顶部(根节点) 方向构造分析树可以看成是将输入穿$w$规约为文法开始符号S的过程自顶向下的语法分析采用最左推导方式自底向上的语法分析采用最左规约方式(反向构造最右推导)移入-规约分析工作过程在对输入串的一次从左到右扫描过程中,语法分析器将零个或多个输入符号移入到栈的顶端,直到它可以对...

2019-05-05 21:57:20 3800

原创 非递归的预测分析法

文章目录概念例子算法流程预测分析法实现步骤概念非递归的预测分析不需要为每个非终结符编写递归下降过程,而是根据预测分析表构造一个自动机,也叫表驱动的预测分析。通过增加一个栈,来增强自动机的识别能力。例如,$L=\{a^nb^n|n\ge 1\}$。这个产生式识别一切以先是a后是b 的句子,而且a与b的个数一致。若是用有穷状态机则无法实现。若是增加了一个栈,则可以在每接收到一个a之后将a进...

2019-05-05 21:55:48 1612

原创 Linux--连接文件

文章目录连接文件的方式硬链接(hard link)原理例子特点符号连接原理例子特点ln命令参数连接文件的方式硬链接(hard link)通过文件系统的inode连接来产生新文件名,而不是产生新文件。原理由于每个文件都会占用一个inode,文件内容由inode的记录来指向。想要读取该文件,必须要经过目录记录的文件名来指向到正确的inode号码才能读取。换句话说,文件名只与目录有关,但是文件...

2019-05-05 08:52:45 285

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除