Atitit.软件开发的几大规则,法则,与原则Principle v3

Atitit.软件开发的几大规则,法则,与原则Principle  v3


1.1. 修改历史 2
2. 设计模式六大原则 2
2.1. 设计模式六大原则(1):单一职责原则 2
2.2. 设计模式六大原则(2):里氏替换原则 2
2.3. 设计模式六大原则(3):依赖倒置原则 2
2.4. 设计模式六大原则(4):接口隔离原则 2
2.5. 设计模式六大原则(5):迪米特法则 2
2.6. 设计模式六大原则(6):开闭原则 2
3. S.O.L.I.D原则(oo fp) 3
3.1. Single Responsibility Principle (SRP)–职责单一原则 3
3.2. Open/Closed Principle (OCP)–开闭原则 3
3.3. Liskov substitution principle (LSP)–里氏代换原则 3
3.4. Interface Segregation Principle (ISP)–接口隔离原则 3
3.5. Dependency Inversion Principle(DIP)–依赖倒置原则 3
4. Dky法则 dry kiss yagni 3
5. Other原则 4
5.1. 可读性优先原则 4
5.2. 拥抱变化原则  扩展性 4
5.3.  :迪米特法则最少知识原则”(Principle of Least Knowledge) 4
5.4. 迪米特法则(Law?ofDemeter,?LOD) 4
5.5. Don’t Repeat Yourself(DRY) 4
5.6. Keep It Simple, Stupid (KISS) 4
5.7. Program to an interface, not an implementation4
5.8. You Ain’t Gonna Need It(YAGNI) 4
5.9. 最小惊讶原则 遵守标准约定注释说什么代码就做什么 5
5.10. 最小化耦合原则与最大内聚 5
5.11. 隐藏实现细节原则 5
5.12. 避免过早优化原则 5
5.13. 得墨忒耳定律 5
5.14. Common Closure Principle(CCP)–共同封闭原则 5
5.15. Common Reuse Principle (CRP)–共同重用原则 5
5.16. Hollywood Principle–好莱坞原则 5
5.17. High Cohesion & Low/Loose coupling & –高内聚,低耦合6
5.18. Convention over Configuration(CoC)–惯例优于配置原则 惯例优先原则6
5.19. Acyclic Dependencies Principle (ADP)–无环依赖原则 6
5.20. Postel's law伯斯塔尔法则  后向兼容性设计 6
5.21. 软件,就像所有技术一样,具有天然的政治性。代码必然会反映作者的选择、偏见和期望。 6
5.22. 首先为人类设计,其次为机器设计。 6
5.23. 抽象原则 6
6. 《编程法则》二十一条 6
7. Recy 7
7.1. Command-Query Separation (CQS)–命令-查询分离原则 7
7.2. Separation of Concerns (SoC)–关注点分离 7
7.3. Design by Contract (DbC)–契约式设计 7
8. 参考 7










1.1.修改历史
V3 调整栏目 。Add Dky法则 增加了一些原则,删除了一些模式放入recy
2.设计模式六大原则
2.1.设计模式六大原则(1):单一职责原则
2.2.设计模式六大原则(2):里氏替换原则
2.3.设计模式六大原则(3):依赖倒置原则
2.4.设计模式六大原则(4):接口隔离原则
2.5.设计模式六大原则(5):迪米特法则
最少知识原则”(Principle of Least Knowledge)
  
2.6.设计模式六大原则(6):开闭原则
  
  
作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com
转载请注明来源: http://blog.csdn.net/attilax




3.S.O.L.I.D原则(oo fp)
一般来说这是面向对象的五大设计原则,但是,我觉得这些原则可适用于所有的软件开发。
3.1.Single Responsibility Principle (SRP)–职责单一原则
3.2.Open/Closed Principle (OCP)–开闭原则
3.3.Liskov substitution principle (LSP)–里氏代换原则
3.4.Interface Segregation Principle (ISP)–接口隔离原则
3.5.Dependency Inversion Principle(DIP)–依赖倒置原则
4.Dky法则 dry kiss yagni 


5.Other原则
5.1.可读性优先原则
代码应该尽可能地易于阅读和理解
5.2.拥抱变化原则  扩展性
这是Kent Beck写的一本书的副标题,也被认为是极端编程和通用敏捷方法的原则。许多其他原则都基于这个理念:你应该期待和欢迎变化。事实上,很多古老的软件工程法则,例如最小化耦合原则,就是和让代码变得更容易改变是直接相关的。无论你是不是一个极端编程的实践者,这种写代码的方法真的很有意义。


5.3. :迪米特法则最少知识原则”(Principle of Least Knowledge)
  5.合成/聚合复用原则(Composite/Aggregate Reuse Principle,CARP)
在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分;新的对象通过这些向对象的委派达到复用已有功能的目的.这个设计原则有另一个简短的表述:要尽量使用合成/聚合,尽量不要使用继承.
5.4.迪米特法则(Law?ofDemeter,?LOD)
5.5.Don’t Repeat Yourself(DRY)
5.6.Keep It Simple, Stupid (KISS)
5.7.Program to an interface, not an implementation
5.8.You Ain’t Gonna Need It(YAGNI)
这个原则简而言之为——只考虑和设计必须的功能,避免过度设计。只实现目前需要的功能,在以后您需要更多功能时,可以再进行添加。
5.9.最小惊讶原则 遵守标准约定注释说什么代码就做什么
5.10.最小化耦合原则与最大内聚
5.11.隐藏实现细节原则
5.12.避免过早优化原则
5.13.得墨忒耳定律
代码组件应该只和它们的直接关系(如,继承的类,包含的对象,通过参数传递的对象等)沟通


5.14.Common Closure Principle(CCP)–共同封闭原则
5.15.Common Reuse Principle (CRP)–共同重用原则
5.16.Hollywood Principle–好莱坞原则
好莱坞原则就是一句话——“don’t call us,we’ll call you.”。意思是,好莱坞的经纪人们不希望你去联系他们,而是他们会在需要的时候来联系你。也就是说,所有的组件都是被动的,所有的组件初始化和调用都 由容器负责。组件处在一个容器当中,由容器负责管理。
单的来讲,就是由容器控制程序之间的关系,而非传统实现中,由程序代码直接操控。这也就是所谓“控制反转”的概念所在:
?1.不创建对象,而是描述创建对象的方式。
?2.在代码中,对象与服务没有直接联系,而是容器负责将这些联系在一起。
5.17.High Cohesion & Low/Loose coupling & –高内聚,低耦合
5.18.Convention over Configuration(CoC)–惯例优于配置原则 惯例优先原则
5.19.Acyclic Dependencies Principle (ADP)–无环依赖原则
5.20.Postel's law伯斯塔尔法则  后向兼容性设计 
伯斯塔尔法则(Postel's law)特别适用:
Be conservative in what you send, be liberal in what you accept.
发送时要保守,接收时要开放。


5.21.软件,就像所有技术一样,具有天然的政治性。代码必然会反映作者的选择、偏见和期望。
5.22.首先为人类设计,其次为机器设计。
   容易让用户理解更重要。相比 让机器理解(解析)
5.23.抽象原则
6.《编程法则》二十一条
《编程法则》二十一条
7.Recy


7.1.Command-Query Separation (CQS)–命令-查询分离原则
查询:当一个方法返回一个值来回应一个问题的时候,它就具有查询的性质;
命令:当一个方法要改变对象的状态的时候,它就具有命令的性质;
7.2.Separation of Concerns (SoC)–关注点分离
7.3.Design by Contract (DbC)–契约式设计


8.参考
软件设计的七大原则 - On the way - 博客园.html
一些软件设计原则 - 博客 - 伯乐在线.html
一些软件设计原则 - 博客 - 伯乐在线.html


优秀程序员的18大法则 - 程序员 - IT之家.htm


作者::?绰号:老哇的爪子claw of Eagle?偶像破坏者Iconoclast image-smasher
捕鸟王"Bird?Catcher 王中之王King of Kings 虔诚者Pious 宗教信仰捍卫者 Defender?of?the?Faith. 卡拉卡拉红斗篷 Caracalla red cloak
简称:: Emir Attilax?Akbar 埃米尔 阿提拉克斯 阿克巴
全名::Emir Attilax Akbar?bin Mahmud bin  attila bin Solomon bin adam Al?Rapanui?
埃米尔 阿提拉克斯 阿克巴 本 马哈茂德?本 阿提拉 本 所罗门 本亚当? 阿尔?拉帕努伊?? 
常用名:艾提拉(艾龙), ??EMAIL:1466519819@qq.com




头衔:uke总部o2o负责人,全球网格化项目创始人,
uke宗教与文化融合事务部部长, uke宗教改革委员会副主席
,Uke部落首席大酋长,
uke制度与重大会议委员会委员长,uke保安部首席大队长,uke制度检查委员会副会长,
奶牛科技cto ,uke 首席cto 
uke波利尼西亚区大区连锁负责人,克尔格伦群岛区连锁负责人,莱恩群岛区连锁负责人,uke汤加王国区域负责人。布维岛和南乔治亚和南桑威奇群岛大区连锁负责人 
 Uke软件标准化协会理事长理事长 uke终身教育学校副校长 
Uke 数据库与存储标准化协会副会长 uke出版社编辑总编
Uke医院方面的创始人


转载请注明来源:attilax的专栏  ?http://blog.csdn.net/attilax
--Atiend

posted @ 2016-12-17 16:14  attilaxAti  阅读(28)  评论(0编辑  收藏  举报