本人是一枚女程序“媛”,本科计算机出身,研究生转的软件,代码量屈指可数。哈哈。。。最近在看一本设计模式的书,里面的内容感觉讲的挺不错的,也就在这里随手写一些笔记,大家可以共勉,有什么不对的或者需要改进的地方欢迎各位批评指正。。。
以前本科写代码只注重运行结果,只要能够运行出来得到预期的效果就可以了。可是现在觉得能够写出来高质量的代码更加重要。高质量的代码可以从四个方面来衡量:①可维护性。②可复用性。③可扩展性。④灵活性好。
①可维护性:指当用户需求改变时,只需更改少量代码便可达到最终结果,且对其他模块代码影响低。
②可复用性:指相同的代码块可以运用在不同的程序中。比如:有一个运算类,里面具体有实现加减乘除运算的方法。这个运算类可以在任何需要计算的时候被拿来使用,只需声明该类并实例化对象再调用具体的方法即可。
③可扩展性:指需要增加一些功能需求时,只需更改少量代码便可达到最终结果,且对其他模块代码影响低。
④灵活性好。
面向对象的编程思想就是:通过封装、继承、多态把程序的耦合度降低,使用设计模式使得程序更加灵活、容易修改并且易于复用。
下面分享一下“简单工厂模式”的思想和一个小栗子。
比如要实现一个计算器,假设目前只有加减乘除运算。首先,需要定义一个运算类(可以定义为抽象类),加减乘除运算四个子类都继承于运算类,子类中有自己运算需要的算法代码。按照之前来说,如果需要实现两个数的加法运算,就要实例化一个加法类的对象再进行运算;如果需要实现两个数的减法运算,就要实例化一个减法类的对象再进行运算,乘法除法同理,我们有几种运算就