`
rensanning
  • 浏览: 3561610 次
  • 性别: Icon_minigender_1
  • 来自: 大连
博客专栏
Efef1dba-f7dd-3931-8a61-8e1c76c3e39f
使用Titanium Mo...
浏览量:38417
Bbab2146-6e1d-3c50-acd6-c8bae29e307d
Cordova 3.x入门...
浏览量:608361
C08766e7-8a33-3f9b-9155-654af05c3484
常用Java开源Libra...
浏览量:683657
77063fb3-0ee7-3bfa-9c72-2a0234ebf83e
搭建 CentOS 6 服...
浏览量:90089
E40e5e76-1f3b-398e-b6a6-dc9cfbb38156
Spring Boot 入...
浏览量:402686
Abe39461-b089-344f-99fa-cdfbddea0e18
基于Spring Secu...
浏览量:69894
66a41a70-fdf0-3dc9-aa31-19b7e8b24672
MQTT入门
浏览量:92099
社区版块
存档分类
最新评论

软件开发原则Software Principles

 
阅读更多
(1)避免重复原则(DRY - Don't repeat yourself)
http://en.wikipedia.org/wiki/Don%27t_repeat_yourself

(2)简单原则(KISS - Keep it simple, stupid)
http://en.wikipedia.org/wiki/KISS_principle

(3)适可而止原则(YAGNI - You aren't gonna need it)
http://en.wikipedia.org/wiki/You_aren%27t_gonna_need_it

(4)SOLID原则
http://en.wikipedia.org/wiki/SOLID_(object-oriented_design)
S 单一责任原则Single responsibility principle
O 开闭原则Open/closed principle
L 里氏代换原则Liskov substitution principle
I 接口隔离原则Interface segregation principle
D 依赖倒转原则Dependency inversion principle

(5)三次原则(Rule of three)
http://en.wikipedia.org/wiki/Rule_of_three_(computer_programming)

(6)迪米特法则(LoD - Law of Demeter)
又叫作最少知识原则(principle of least knowledge)
http://en.wikipedia.org/wiki/Law_of_Demeter

(7)维尔特法则(Wirth's law)
http://en.wikipedia.org/wiki/Wirth%27s_law

(8)布鲁克斯法则(Brooks's law)
http://en.wikipedia.org/wiki/Brooks%27s_law

(9)康威法则(Conway's law)
http://en.wikipedia.org/wiki/Conway%27s_Law

(10)伯斯塔尔法则(Postel's law)
https://en.wikipedia.org/wiki/Robustness_principle

(11)最小惊讶原则(POLA - Principle of least astonishment)
http://en.wikipedia.org/wiki/Principle_of_least_astonishment

参考:
http://www.artima.com/weblogs/viewpost.jsp?thread=331531
http://code.tutsplus.com/tutorials/3-key-software-principles-you-must-understand--net-25161
分享到:
评论

相关推荐

    软件开发的201个原则v1.3.pdf

    ### 软件开发的201个原则 #### 一、概述 《软件开发的201个原则》是一本全面阐述软件开发过程中应当遵循的原则性指导书籍。该书内容丰富,覆盖了从项目启动到交付的各个阶段,旨在帮助软件开发团队提高产品质量、...

    201 principles of software development.zip

    《软件开发的201个原则》是一本深入探讨编程和软件工程领域的经典著作,英文版为读者提供了全面而详尽的指导。该书旨在帮助程序员、项目经理以及任何参与软件开发过程的人士提升专业素养,遵循高效且可持续的开发...

    软件开发设计原则软件开发设计原则

    11. **GRASP(General Responsibility Assignment Software Principles)原则** - 包括如控制器(Controller)、工厂(Factory)、多态(Polymorphism)等设计模式,用于指导类和对象的职责分配。 以上设计原则是...

    敏捷软件开发、原则、模式与实践.中译本.扫描版

    敏捷软件开发、原则、模式与实践 敏捷软件开发、原则、模式与实践 敏捷软件开发、原则、模式与实践

    敏捷软件开发+原则、模式与实践.pdf

    《敏捷软件开发:原则、模式与实践》(Agile Software Development: Principles, Patterns, and Practices)是由全球知名的软件开发专家、软件工程大师Robert C. Martin(俗称“Uncle Bob”)所著。这本书全面地介绍...

    Software Design Principles and Guidelines

    在软件开发的过程中,设计阶段是非常关键的一环,它不仅决定了软件架构的基础框架,还对后续的编码、测试乃至维护产生了深远的影响。本文档《Software Design Principles and Guidelines》由华盛顿大学计算机科学系...

    Emergent Design:The Evolutionary Nature of Professional Software Development

    总的来说,《新兴设计:专业软件开发的进化特性》是一本关于如何在实践中灵活、有效地进行软件设计的指南,结合设计模式和基本原则,帮助开发者适应快速变化的项目需求,实现更高效、更具弹性的软件开发流程。...

    Symbian For Software Leaders Principles Of Successful Smartphone Development.pdf

    《Symbian for Software Leaders: Principles of Successful Smartphone Development》是一本深入探讨智能手机开发原则与实践的专业书籍,由David Wood撰写,Richard Harrison审阅。本书属于Symbian Press系列出版物...

    Software Build Systems- Principles and Experience

    在软件开发领域中,构建系统扮演着至关重要的角色。一个高效且设计良好的构建系统不仅能够提高开发效率,还能确保代码质量,简化团队协作过程。《Software Build Systems: Principles and Experience》这本书深入...

    Agile software development principles, patterns, and practices.zip

    《敏捷软件开发:原则、模式与实践》是Robert C. Martin(Uncle Bob)的一本经典著作,书中深入探讨了敏捷开发的理念、方法和最佳实践。敏捷开发是一种以人为核心、迭代、增量的软件开发方法论,强调快速响应变化,...

    敏捷软件开发 2本经典的电子书 英文清晰文字版

    "敏捷软件开发"一书通常指的是《敏捷软件开发:原则、模式与实践》(Agile Software Development: Principles, Patterns, and Practices),由Robert C. Martin(Uncle Bob)撰写。这本书深入探讨了敏捷宣言及其背后...

    CH02 The Principles of Software Process Change

    《软件过程变革的原则》 软件过程是开发高质量软件的关键组成部分,它涉及到一系列的活动、方法和技术,用于确保软件产品从概念到实现再到...只有这样,软件开发组织才能保持竞争力,满足日益复杂和多变的市场需求。

    原版英文 软件开发方法

    **GRASP(General Responsibility Assignment Software Principles)** 是一种指导原则集合,它帮助开发者在面向对象设计中分配职责。这些原则包括: - **单一职责原则**:每个类应该只有一个引起变化的原因。 - **...

    软件设计原理

    随着软件应用领域的不断扩大,从商业、教育到医疗健康,软件工程原则(Software Engineering Principles,简称SEP)成为连接不同软件领域的“金线”,确保了软件质量与效率的提升。 #### 软件设计原理的稳定性与...

    Principles, Practices lean and Agile software Management in the large experience

    这些方法强调快速反馈循环、持续改进和团队协作,旨在使软件开发过程更加灵活且响应迅速。精益侧重于消除浪费并优化整个流程的价值流,而敏捷则更注重通过迭代开发和增量交付来适应变化。 #### 大型组织中的精益与...

    Software-Architecture-Principles:SOLID原则

    在软件开发领域,SOLID原则是面向对象设计的基石,尤其在使用JavaScript这样的多范式编程语言时,理解和应用这些原则至关重要。SOLID是五个独立的设计原则的首字母缩写,它们分别是单一职责原则(Single ...

    software-design-principles

    Martin等人,《敏捷软件开发》,(Pearson,2003年,第127-31页)] 开/关原则“一个模块应该为扩展而打开,但为修改而关闭。” [Robert C. Martin,《 C ++报告的开放式原则》(1996)] 稳定依赖原则 “软件模块...

    软件体系架构课件(英文版)

    "Design and Use of Software Architectures: Adopting and Evolving a Product-Line Approach",作者Jan Bosch,这本书在2000年出版,重点介绍如何利用体系架构方法来建立产品线,以及如何适应和进化以实现更好的...

    敏捷开发之12条敏捷原则

    在AgileSoftwareDevelopment-Principles,Patterns,andPractices(中文书名:敏捷软件开发-原则、模式与实践)中对这12条原则分别进行了阐述,这里我就不重复解释书本的内容了,将从我个人的理解去讲解这些原则,...

Global site tag (gtag.js) - Google Analytics