读书笔记《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)
核心思路:一个对象对扩展开放,对修改关闭
- 读书笔记《Java开发技术-在架构中体验设计模式和架构之美》
- 《修炼Java开发技术 在架构中体验设计模式和算法之美》 - 书摘精要
- 修炼Java开发技术----在架构中体验设计模式和算法之美
- 架构之美读书笔记
- 架构之美-读书笔记之一
- 模式和架构读书笔记
- 架构设计之设计模式 (二) 静态代理和动态代理--间接“美”
- 架构之美-读书笔记之二
- 架构之美读书笔记之三
- (读书笔记)Java应用架构设计-模块化模式与OSGi
- 框架、架构和设计模式之区分
- 架构设计之设计模式 (四) Java中多种方式实现单例模式
- “开发模式”,“架构模式”和“设计模式”的区别
- 阿里“老司机”带你从技术到架构,体验BAT大厂的开发设计流程-APP架构演进实践与优化之路
- 美团技术架构
- 《大型网站技术架构》读书笔记[2] - 架构的模式
- 大型网站技术架构 读书笔记1 大型网站架构模式
- 《大型网站技术架构》读书笔记[2] - 架构的模式
- ehcache
- Boost学习之all_of
- 使用SoapUI mock REST API
- Bulls and Cows
- WordPress插件 WP User Frontend Pro专业版/用户前端中心汉化版[更新至v2.3.12]
- 读书笔记《Java开发技术-在架构中体验设计模式和架构之美》
- storyboard(故事版)新手教程 图文详解 1.创建一个无约束的导航栏加选项卡(tabbar)故事版
- Ehcache 缓存系统简介
- 欢迎使用CSDN-markdown编辑器
- 关于博客封面的提取与处理
- Html5之FileReader接口
- 本计算机上sql sever服务启动后又关闭的问题
- C#实现文件夹基本操作
- 在VS2015配置OpenGL和谢尔宾斯基三角(Sierpinski triangle)例子