6.3 Maintainability-Oriented Construction Techniques面向可维护性的构造技术

6.3 Maintainability-Oriented Construction Techniques面向可维护性的构造技术

 

1.状态驱动的构造技术

--基于自动机的编程

--Memento设计模式

--State设计模式

2表驱动的构造模式(略)

2.基于语法的构造技术

--语法和解析器

--正则表达式

--Interpreter设计模式

 

 

1 State-based construction 状态驱动的构造技术

使用有限状态机来定义程序的行为、使用状态来控制程序的执行

根据当前状态,决定下一步要执行什么操作、执行操作之后要转移到什么新的状态

(1) Automata-based programming基于自动机的编程

核心思想:将程序看作是一个有限状态自动机,侧重于对“状态”及“状态转换”的抽象和编程

程序的执行被分解为一组自动执行的步骤

各步骤之间的通讯通过“状态变量”进行

程序执行就可看作是各自动步骤的不断循环

使用二维数组和enum枚举类型定义状态转换表

 

(2) State Pattern状态模式 (behavioral pattern)

使用 delegation ,将状态转换的行为委派到独立的 state 对象去完成

 

 

 

 

 

(3) Memento Pattern备忘录模式 (behavioral)

记住对象的历史状态,以便于“回滚“

 

 

 

 

2略

3 Grammar-based construction语法驱动的构造

有一类应用,从外部读取文本数据,在应用中做进一步处理。

用 grammar 判断字符串是否合法,并解析成程序里使用的数据结构

 

(1) Constituents of a Grammar

 

用语法定义一个“字符串”

遵循特定规则,利用操作符、终止节点和其他非终止节点,构造新的字符串

 

(2) Operators in a Grammar

 

(3) Recursion in grammars

(4) Parse Trees 语法树

(6) Regular Grammars and Regular Expressions正则表达式

正则语法:简化之后可以表达为一个产生式而不包含任何非终止节点

 

 

解释器模式略

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值