Atitit 软件的俩大要点 提升可读性 提升扩展性 目录 1. 命名可读性 1 2. 提升扩展性法 1 3. 项目常见扩展法 2 1.结构可读性 表驱动代替if else 减少层次 Dsl

Atitit 软件的俩大要点 提升可读性  提升扩展性

 

目录

1. 命名可读性 1

2. 提升扩展性法 1

3. 项目常见扩展法 2

 

 

 

  1. 结构可读性

表驱动代替if else

减少层次

Dsl化

适当命名空间化  分类化

递归代替循环

异常处理

 

Atitit. 提升存储过程与编程语言的可读性解决方案v3 qc25.docx

 

1. 大原则:分解+命名 1

1.1. 命名规范 1

1.2. 分层、DI和AOP是继OO 1

1.3. 运算符可读性一般要比函数好 1

1.4. 函数式样 流程控制全部函数化 2

1.5. 递归代替循环 2

1.6. 中缀表达式  取代 前后缀表达式 2

1.7. 有时候异常处理也会提升可读性 2

1.8. dsl 2

2. Refactor 2

2.1. 方法链 2

2.2. 其他 2

2.3. PIE 原则:意图清楚而且表达明确地编程; 3

2.4. 恰到好处的注释 3

2.5. 简单就是美,避免简单的功能写出复杂的代码; 4

2.6. 坚持操作方法的原子性,而后使用组合模式实现业务逻辑; 4

2.7. 参考 4

  1. 命名可读性

命名空间命名

类命名

变量命名

函数命名

 

 

Atitit 提升sql与编程语言代码可读性----大力使用中文解决方案

 

1.1. 为了提升可读性,使用汉字命名可以大力提升可读性。。 1

1.2. 打字麻烦,还好有Ide里面的自动提示,可以增加对于的拼音或者英文缩写前缀,这样方便打字自动提示 2

1.3. 跨国项目怎么办,对方不认识中文怎么办??增加英文即可  czyh_queryUser_查找用户 2

1.4. 环境对汉字支持不佳怎么办??使用拼音中文。。拼音也是中文的一种形式嘛。。 2

1.5. 这样就比较完美了,唯一的问题,就是长度可能有点长,但这个就没办法啦 2

1.6. 不必全部使用中文 常见的英文query from where user等可以不用汉字。。英汉夹杂融合他们的优点 2

1.7. 函数命名规范:可以参考sql  select语句规范,提升可读性 3

 

 

  1.  提升扩展性法

 

atitit 高扩展性解决方案 功能扩展法 v2 t66.docx

atitit 高扩展性解决方案.docx

 

1. 功能扩展 vs 性能扩展 2

1.1.       人无远虑,必有近忧。       系统也一样。 2

1.2. 预留接口 插件机制 2

1.3. 通用语言解析接口 多功能接口 就类似usb接口那样通用 2

1.4. Dsl接口和ast接口 2

1.5. 脚本。脚本是扩展复杂功能的利器 2

1.6. 自定义语言 工作流 规则引擎 2

1.7. api类库扩展 2

1.8. Cli扩展     udf机制 3

1.9. 3

2. Other 3

2.1. 原件最小封装 3

2.2. 接口的层次化 功能 模块 子系统 3

2.3. 接口转换器 adapter模式 3

2.4. 无中心节点组件设计 避免庞大组件出现, 3

2.5. 使用配置化 ioc提升扩展性,配置lazy化 3

2.6. 插件系统或者模块化平台。插件系统平台从理论上提供了无数的可扩展性。比如Eclipse和NetBeans平台。这儿是抽象的最高点, 4

2.7. 灵活性和可扩展性 其易用性差的三角关系 4

2.8. 稳定性。越是灵活和可扩展 4

2.9. 扩展性与性能的关系 4

2.10. Vm+dsl vm 其实就是添加了一个layer,无所不能 4

2.11. 功能使用和功能定义的关注点分离 5

3. 其他的常见扩展模式 6

3.1. Php使用其他语言写lib 6

3.2. Cms的插件机制 6

3.3. 浏览器的插件机制,使用其他语言写插件 6

3.4. Oracle支持java写sp 6

3.5. 用lua扩展你的Nginx( 6

3.6. oa office excel vbs vba  com 6

3.7. 游戏外挂 6

4. 常用的写扩展的语言 6

4.1. Lua c++ python  xml 6

5. 参考资料 6

 

 

  1. 项目常见扩展法

组合 vs 继承扩展

回调扩展法

 

 

Atitit. 提升存储过程与编程语言的可读性解决方案v3 qc25.docx

 

posted @ 2019-08-19 01:16  attilaxAti  阅读(49)  评论(0编辑  收藏  举报