《设计模式之禅》【笔记】零

前言

之前看过一阵《设计模式之禅》这本书,但是没坚持下来,可能从小就没养成一个良好的阅读习惯,自己比较排斥读一些纯理论的书籍,感觉很没劲,不如实际操作来的直接一些。但在之后工作学习过程之中,发现很多让人值得深思的事情,他们做的是什么?他们为什么这么做?怎样能做的更好?独立的思考并不能有效的解决这些问题,而阅读这些书籍,尝试与他们交流可能会得到这些答案,并产生新知。

软件开发的哲学

如果从哲学的角度去审视一个事物,那么就应该“跳出画外看画”的原则去把握它。但我们都处于这个画中,所以做到绝对客观的去分析这个事物,这几乎是不可能的。而软件工程同时涵盖计算机科学、数学以及管理科学等其他学科。《设计模式之禅》主要针对的是在软件工程设计中的一系列哲学思想以及方法论,文中开头提到一个我们惯有的思维模式,不破不立,不破除旧的,就不能建立新的。由于这样的思想,于是能改的就改,不能改的就推翻重写,没有一个持续发展的蓝图。而在实际的开发当中,我们绝对不能用静止的眼光来看待客户需求,客户的需求是千变万化的,所以我们应该遵循一个前瞻性原则,尽可能的考虑将来都会发生的事情,即遵循“架构设计可扩展性原则”。
就如书中的一句话“设计模式不是工具,它是软件开发的哲学,它能指导你如何去设计一个优秀的架构、编写一段健壮的代码、解决一个复杂的需求”。

思想

因为它是指导思想,你可以在此基础上自由发挥,甚至是自己设计出一套设计模式。世界上最难的事有两件:一是让人心甘情愿地把钱掏出来给你,二是把自己的思想灌输到别人的脑子里。设计模式就属于第二种,它不是一种具体的技术,不像Struts、Spring、Hibernate等框架。一个工具用久了可以熟能生巧,就像砌墙的工人一样,长年累月地砌墙,他也知道如何把墙砌整齐,如何多快好省地干活,这是一个人的本能。我们把Struts用得很溜,把Spring用得很顺手,这非常好,但这只是一个合格的程序员应该具备的基本能力!于是我们被冠以代码工人(Code Worker)——软件行业的体力劳动者。

通晓

站在一个更高的层次去赏析程序代码、软件设计、架构,完成从代码工人到架构师的蜕变。但需要通晓这23种设计模式,这并无意味着了解其含义、适应性、优缺点,要在工作经验中不断的积累不断的思考不断的理解。

这本书很有意思

作者的理念是像看小说一样阅读本书,真心强烈推荐这本书,阅读这本书的时候,感觉很舒适,就好像作者在和你聊天一样。而且在这种交流的过程中,可以了解到技术之外的其他冷知识。总之,这本书很有意思。

posted @ 2020-06-18 14:41  lil-donky  阅读(146)  评论(0编辑  收藏  举报
<