读书笔记《Java开发技术-在架构中体验设计模式和架构之美》

来源:互联网 发布:拓展训练知乎 编辑:程序博客网 时间:2024/05/17 09:20


一、Java程序员的三层境界

第一层:豪情万丈,欲与天公试比高

java开发技术掌握,工具娴熟,可以按要求独立完成类、接口和算法的开发;能注重技巧;热衷于谈技术问题。修炼第一层境界还是比较辛苦的。


第二层:要学的东西有很多很多

探求更多集中在产品的架构层次,技术关注点更多,比如网络协议,Linux内核,其他语言。修炼的结果是已经能将技术练得炉火纯青,甚至个别技术已经登峰造极,有可自己的一套“技能”,利用这些技能,过着“衣食无忧”的生活。


第三层:横行无阻,任意驰骋

要突破、要进阶、要创新。能结合产品和市场。(自己感悟)对未来的发展潮流能有所把握。


二、如何成为优秀的软件架构师

1、基本要求

首先,必须具有丰富的软件设计和开发经验;

其次,具有领导能力和团队协作能力;

第三,具有很强的沟通能力;

另外,应时刻注意新软件的设计和开发方面的发展情况,不断探索更有效的新方法。

2、高级要求

有时需要左右逢源,八面玲珑;有时又需要果断坚定、不留情面。



三、架构师的自我培养过程

1、胚胎-程序员

语言基础、设计基础、通信基础,Java,C/C++,UML,RUP(统一软件过程),XML,Socket通信等。


2、萌芽-高级程序员

分布式,高性能等


3、幼苗-设计师

结合实际经验,透彻领会应用设计模式,包括通用设计模式、EJB设计模式、Java EE框架、软件设计模式等。了解软件工程在项目开发中的应用以及小组开发、项目管理。


4、成型-架构师

机遇、天赋和个人努力


四、架构中的设计原则(面向对象)

1、单一职责原则(SRP)

高内聚,低耦合


2、里氏替换原则(LSP)

核心思想:在任何父类出现的地方,都能用子类来替代


3、依赖注入原则(DIP)

核心思想:要依赖于抽象,而不要依赖于实现

实践:针对接口编程,而不是实现。


4、接口分离原则(ISP)

核心思想:不强迫客户程序依赖它们不需要的使用的方法。

含义:一个接口不需要提供太多的行为,一个接口应该只提供一种对外的功能,不应该把所有的操作都封装到一个接口中。

接口:对象接口、类接口


5、迪米特原则(LOD)

核心思想:一个对象应该对其他对象尽可能少的了解,即降低对象之间的耦合。


6、开闭原则(OCP)

核心思路:一个对象对扩展开放,对修改关闭



0 0
原创粉丝点击