`
luhantu
  • 浏览: 203095 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Software Design Principle

 
阅读更多

There are lots of design patterns,but the most important thing you should know the the principle of design.All of the patterns are followed those principles.

1.SRP -  Single Responsible Principle

One class should has the single responsible, we should avoid the same responsibiltes spreaded into defferent classed and avoid one class do to much responsibility.

2.ISP - Interface Segregation Principle

If one class has reference to anther one, it's better segregate them by interface rather than inheritance because the subclass sometimes don't need  some functions in base class.

3.DIP - Dependence Inversion Principle

Programming on the interface rather than the concrete  class.The high level class communicates with the lower level with interface.As the interface is abstract  so it  relative stable.

4.OCP - Open  Closed Principle

Open for the extension and closed for the modify. A class should be opened and extensible, but when you want to extend the function of this class, it's better don't modify the exist class or you shouldn't affact exist function.

5.LSP - Liskov  Substitution Principle

sub types must be substitutable for their base types.

 

Above all,Pls understand those principle carefullly, and you will get more discoveries and surprises.

分享到:
评论

相关推荐

    基于单片机的直流调速系统终稿学位论文.doc

    "基于单片机的直流调速系统终稿学位论文" 本文主要讨论了基于单片机的直流电机调速系统的设计和实现。该系统主要由单片机最小系统、电源系统、调速系统、红外对管测速...* 软件设计原理(Software Design Principle)

    IT技术讲座英文课件2-Software Design

    在实际应用中,我们还可以运用其他设计原则,如单一职责原则(Single Responsibility Principle, SRP),它要求每个类或模块只有一个职责;开闭原则(Open-Closed Principle, OCP),意味着软件实体应对扩展开放,对...

    Learning Python Design Patterns 2nd 2016第2版 无水印pdf 0分

    Explore the design principles that form the basis of software design, such as loose coupling, the Hollywood principle and the Open Close principle among others Delve into the object-oriented ...

    Principle40

    标题中的"Principle40"似乎是一个特定的项目或软件版本的代号,但没有提供足够的信息来详细了解它是什么。通常在IT行业中,这样的命名可能是为了保密、版本控制或者内部团队沟通的方便。"完美安装"暗示这可能是一个...

    The Art of Linux Kernel Design

    The Art of Linux Kernel Design Illustrating the Operating System Design Principle and Implementation Uses the Running Operation as the Main Thread Difficulty in understanding an operating system &#...

    design patterns elements of reusable object-oriented software

    另外,第1章至第9章还穿插介绍了四个OO基本概念(抽象、封装、继承、多态),以及九个OO原则(Principle)。千万不要轻视这些OO原则,因为每个设计模式背后都包含了几个OO原则的概念。很多时候,在设计出现两难情况...

    Emergent Design:The Evolutionary Nature of Professional Software Development

    标签提及了“Emergent Design”,“pattern”,“principle”,这些都是软件设计的核心概念,下面我们将详细探讨这些知识点。 1. **新兴设计(Emergent Design)**:这是软件开发中的一个关键理念,指的是设计不是...

    oo design principles

    Bertrand Meyer在《Object Oriented Software Construction》中提出了开闭原则。该原则主张软件模块应该是对扩展开放,对修改关闭的。这意味着在增加新功能时,应通过添加新的代码来实现,而不是修改已有的代码。...

    PLC的中央空调水泵变频调速系统设计方案.pdf

    1. System Principle Analysis and Design * Introduction to central air conditioning systems and frequency conversion technology * System architecture design * Hardware selection and configuration 2....

    [itpub.net]Wiley.Enterprise.Software.Architecture.and.Design.Mar.2012

    3. **软件设计原则**:包括模块化、抽象、信息隐藏、开闭原则(Open-Closed Principle)、单一职责原则(Single Responsibility Principle)等,这些都是指导软件设计的重要准则,有助于提高代码的可读性、可维护性...

    Software-Design-Group-Project_swen222A2

    里氏替换原则(Liskov Substitution Principle)、接口隔离原则(Interface Segregation Principle)和依赖倒置原则(Dependency Inversion Principle)则为模块间的解耦提供了指导,增强了系统的灵活性和可复用性。...

    无线射频瓦斯传感器研究

    Program, describes the working principle of wireless gas sensor, wireless gas sensor is given hardware and software design to study the well Wireless RF Communications under the program and its key ...

    Multiprocessor+Systems-on-Chips

    1.7.2 Software architecture and design reuse viewpoint 15 1.7.3 Optimization Viewpoint 16 1.8 The Rest of the Book 18 PART I HARDWARE 19 2 Techniques for Designing Energy-Aware MPSoCs 21 Mary Jane ...

    Python 3 Object-Oriented Programming(PACKT,2ed,2015)

    This book fully explains classes, data encapsulation, inheritance, polymorphism, abstraction, and exceptions with an emphasis on when you can use each principle to develop well-designed software.

    人事管理系统程序设计

    tools and according to software engineering principle and the exploitation methods of Event Actuation to make the design to be completed. In the performance history, I use the modularization design. ...

    设计模式资料-自用学习的

    设计模式的产生背景可以追溯到1988年,勃兰特·梅耶(Bertrand Meyer)在他的著作《面向对象软件构造》(Object Oriented Software Construction)中提出了开闭原则(Open Closed Principle,OCP),这是设计模式的...

    ExceptionalCpp_47EngineeringPuzzlesProgrammingProblemsSol.chm

    Exceptional C++ shows by example how to go about sound software engineering in standard C++. Do you enjoy solving thorny C++ problems and puzzles? Do you relish writing robust and extensible code? ...

Global site tag (gtag.js) - Google Analytics