前言:虽然笔者一直梦想成为一名架构师,但实践的仍是少之又少。这篇文章是笔者在2016年5月份参加一次UML培训时授课老师分享的经验,略做整理,以供自己以及有同样志向的小伙伴参考。
第1阶段——技术
感悟技术的内涵——编程语言与操作系统结构(Linux)
技术是架构师的敲门砖
驾驭编程语言,看透编程语言(C/C++)
具备扎实的技术功底是成为一名架构师的首要条件,离开技术的架构师只能是无源之水、无本之木。老师给出了架构师如何获取所需基础技术的途径和建议:
第1月:
使用手机来阅读Linux内核0.01版,8000多行代码
将*.C和*.H改名为*.TXT(方便在手机上阅读)
从任意一个源文件读起
第2月:
使用手机来阅读Linux内核0.11版,16000多行代码
对比阅读,为什么增加了8000多行代码?是变好了,还是变变坏了?
既掌握了技术,又学会了重构
第2阶段——详设
通往架构师之路的第二站——详细设计
学会功能模块的切割与设计
掌握类图表达设计的方法
第3月:
使用手机阅读Linux 1.0内核的UML类图
UML工具(e.g. EA)反向工程获得Linux 1.0的类图
UML Model转化为JPG图片
思考:为什么这个模块有这些函数?函数分类
第4月:
使用手机阅读Linux 2.0内核的UML类图
与Linux 1.0类图对比阅读,为什么设计发生变化?
设计的改造是向好的方向发展,还是向坏的方向发展
参悟设计重构的内涵,设计是渐进的
第3阶段——结构
感悟系统结构设计,从功能到结构突破
复杂大型系统的结构切割是如何完成的
结构切割的思维模式
第5月:
使用手机阅读Linux 3.0内核的包图
Linux 3.0文件夹的目录结构与包图的关系
包图与组件的关系
揭示大型操作系统的结构之谜
第6月:
使用手机阅读Windows 2000源代码的包图
与Linux 3.0包图对比阅读
对比商用系统与开源系统的结构设计的异同
对比更多操作系统异同
第4阶段——经验
第7月:
吸星大法-快速获取他人的设计经验
获取经验的源泉-开源软件、商用软件
获取他人设计经验的秘诀?(自己探寻吧)
以上是老师根据他的亲身经历给出的建议。在我看来7个月要想成为架构师绝对是困难重重的,我们只能说通过7个月的时间打下基础。正所谓万事开头难,有志于成为架构师的朋友们,当然也包括我自己,还是要付出不懈的努力才行!
第1阶段——技术
感悟技术的内涵——编程语言与操作系统结构(Linux)
技术是架构师的敲门砖
驾驭编程语言,看透编程语言(C/C++)
具备扎实的技术功底是成为一名架构师的首要条件,离开技术的架构师只能是无源之水、无本之木。老师给出了架构师如何获取所需基础技术的途径和建议:
第1月:
使用手机来阅读Linux内核0.01版,8000多行代码
将*.C和*.H改名为*.TXT(方便在手机上阅读)
从任意一个源文件读起
第2月:
使用手机来阅读Linux内核0.11版,16000多行代码
对比阅读,为什么增加了8000多行代码?是变好了,还是变变坏了?
既掌握了技术,又学会了重构
第2阶段——详设
通往架构师之路的第二站——详细设计
学会功能模块的切割与设计
掌握类图表达设计的方法
第3月:
使用手机阅读Linux 1.0内核的UML类图
UML工具(e.g. EA)反向工程获得Linux 1.0的类图
UML Model转化为JPG图片
思考:为什么这个模块有这些函数?函数分类
第4月:
使用手机阅读Linux 2.0内核的UML类图
与Linux 1.0类图对比阅读,为什么设计发生变化?
设计的改造是向好的方向发展,还是向坏的方向发展
参悟设计重构的内涵,设计是渐进的
第3阶段——结构
感悟系统结构设计,从功能到结构突破
复杂大型系统的结构切割是如何完成的
结构切割的思维模式
第5月:
使用手机阅读Linux 3.0内核的包图
Linux 3.0文件夹的目录结构与包图的关系
包图与组件的关系
揭示大型操作系统的结构之谜
第6月:
使用手机阅读Windows 2000源代码的包图
与Linux 3.0包图对比阅读
对比商用系统与开源系统的结构设计的异同
对比更多操作系统异同
第4阶段——经验
第7月:
吸星大法-快速获取他人的设计经验
获取经验的源泉-开源软件、商用软件
获取他人设计经验的秘诀?(自己探寻吧)
以上是老师根据他的亲身经历给出的建议。在我看来7个月要想成为架构师绝对是困难重重的,我们只能说通过7个月的时间打下基础。正所谓万事开头难,有志于成为架构师的朋友们,当然也包括我自己,还是要付出不懈的努力才行!