面向对象编程的六大原则

时间:2022-09-05 18:01:24



      要让自己写的代码有质量,特别是对于面向对象编程的话,代码以及框架的是否合理直接决定了你的程序是否可以良好的扩展和壮大,这在软件工程中也多少学过一点,简单来说就是要做到低耦合高内聚,经过编程人员多年的总结,良好的框架设计或者说编码风格应当做到以下六个原则,当然这六个原则要在实际应用中去体会才能更好的理解。


    1.单一职责原则

     这是优化代码的第一步,当我们设计程序时,某一功能块尽量只单单实现某一功能,这也是面向对象编程封装的精髓,两个功能块之间互不耦合,这样可以让之后某一功能的修改拓展不会影响到另一功能。


    2.开闭原则

     这也是个十分重要的原则。即软件中的对象(类,模块,函数等),应该对于扩张是开放的,对于修改是封闭的。通俗点讲,一个好的向外提供某一功能的类,应该做到,当功能需要完善的时候尽量不需要改这个类,而是以扩展的方式来实现功能的完善,而要实现这种扩展,一般可以利用依赖注入的方式。


   3.里氏替换原则

     即只要父类能出现的地方子类就可以出现,简单来说就是抽象,有点像多态

   3.依赖倒置原则

     上面说了通过依赖注入的方式来实现程序的良性扩展,那么这个原则讲的就是这个依赖的对象,尽量通过抽象产生,即实现类之间不直接发生依赖关系,而是通过抽象类或接口来实现,这样只要是继承或者承接自这个接口或抽象类的子类就可以成为依赖,大大提高了程序的课扩展性。


   4.接口隔离原则

    上面说到实现依赖注入的时候,依赖尽量是接口或抽象类,那么这个原则就是对接口的要求,即不应该依赖他不需要的接口。实现程序精简。


    5.最少知识原则

     即一个对象应该对其他对象有最少的了解。举个例子:租房子,中介,房屋三者的关系,租房者需要租房子,但是并不需要直接和房屋打交道,而是把自己的要求告知中介,其他关于房屋的挑选,房屋的信息等等都应该是交给中介去完成的。这才是良好的程序设计。


      上面是简单叙述下面向对象编程的六大原则,具体的还是要在实际项目中去应用去体会。