Java程序员进阶架构师
作者:adminjiang发布时间:2021-08-16分类:计算机教程浏览:779
国内我们对架构师,项目经理,开发经理或者是技术总监这类职业定位普遍不都不清晰,很多的情况是“能者多劳”,一人身兼数职。达尔文的理论在我们的行业是绝对适用的,我从进入这个行业开始我就不甘于成为淘汰者,而我也由心地热爱着这个行业很年前我就立志要成为架构师(当年流行叫:系统分析员)这目标进发。回首这10几年的磨练,我总结了一下一名合格的架构师应该具备哪一些方面的能力以及怎么才能得到这些能力
编码能力
架构师是一个职业,是一种经历了各种磨练与长年开发经验积累出来的。另外我一直认为:不会编码的架构师不是一个好的架构师。我见过很多所谓的架构师完全不懂编码,但总喜欢拿着架构说事。但从严格来说他们并不属于“软件架构师”的范畴,充其量只能算是个“系统架构设计师”,遇到这样的”架构师“我总喜欢说一句话:”Don’ttellmetheconceptsshowmethecode!“。
不参与编码并不代表不会编码,如果没有过硬的开发基础,巨量的编码时间积累为基础,在设计软件时一定会忽略非常多的细节,而这将会直接影响到整个项目的成败,试想想当项目经理按照架构师设计的软件蓝图订制开发计划与安排项目资源时由于“蓝图”内存有大量未确定的风险因素,以及由风险触发后所带来的不可预知的结果,最后项目是否能成功?
多看-多看别人的代码,从别人的代码中读出软件的架构与设计的设计思路
多学-掌握各种语言,不要偏执于某一技术阵形,不管java,.net,phyon还是javascript每种语言都有其优缺点,成为一名语言控,从语言本身学习与理解语言设计者的思想。
多做-疯狂编码,从时间与实践中去体验与领悟,工多艺熟。
勇敢-严格要求自己不要写出”发臭“的东西,勇敢地重构!让代码变得优雅,易读充满你的设计思想。
架构师需要具备哪些技能需要更多的去了解:
表达力
世界上最难的两件事是:将别人口袋的钱放到自己的口袋里面;将自己脑子的想法完整放到别人的脑子里面。
我认为一份成功的设计是”能让不同层面的人都能看得懂“。为什么这样说?那么得了解谁需要看设计,又是出于何目的来看设计。
销售-从设计中寻找卖点与特色,丰富销售方案和定制预售计划。
项目经理-根据设计进行时间估算、项目资源准备与工作分解。
开发-根据设计要求进行技术准备、开发环境、编写DEMO以及最终编码。
测试-根据设计划分测试粒度、准备测试环境、定制测试计划
不同的开发方法与开发流程都会有不同的设计文档要求,而受众无非也是上述几种。作为项目/软件的设计者,能清晰地向受众准确地传达自己的设计思路就显得极其重要。这里指表达不是指嘴上的功底,更多的是在工具的掌握能力与文字的表达能力。使用不同的工具表达向不同的受从表达相同的理念,这基实是对架构设计的一种验证,这种沟通与表达能有效地融合不同角度的观点,也能让架构师能更深入地理解自己的设计方向。
要面对如此多的复杂性应该如何来锻炼自己的表达性呢?
多与人沟通,多参与头脑风暴
练习用人类语言表达“非人类”的专业知识。一张用铅笔画的框图往往比一个使用专业UML设计工具做出来的设计更容易让人理解。UML为作架构师基本上是必修课,也是辅助架构师思维的工具,但对于不懂UML的那就是“非人类”的文档,设计是给人看的,别人看不懂再专业再标准化的设计也只能沦为废纸。
培养测试先行的习惯-在设计时多写范例与测试,在很大程度上可以减少设计误区和验证被实现的可行性。这样可以在将设计交付给开发、测试后节约大量的沟通时间。
拥抱变化
正如XP(极端编程)中所说:“世界上唯一不变的就是变化”。拥抱变化、预测变化、控制变化不单纯是优秀开发人员的和项目经理的要求同样也是架构师一种重要的能力。
“变”
我的理解设计中的“变”就是“可定制化”的要求,可定制化程度越高系统/项目的可扩展性就越强。架构师就是需要锻炼的是控制这种变化的范围与程度,“变”是双刃剑,允许过多的变化就会造成“过度设计”,出现一大堆“未来可能使用的功能”;过于封闭则会变得僵化难以适应新的要求。
“不变”
这里所说的“不变”也只是相对而然,在系统/项目中相对不变的就应该是“核心”或者是“基础框架”,举最简单的例子就是.netframework就是其中一者,虽然它会不断发展,增强功能。但其基础核心设计理念与架构也从来没有发生过质的改变。更具体的一点来说“不变”的是规则、用法和基础设计理念。
我认为学习控制变化的最佳方法是多看出色的类库或系统,多问为什么这样做,理解原设计师的想法。经过一定时间的积累,随着对“变化”观察的增多,自然而然会在自已的设计中按设计要求将”变“与”不变“应用得当。
**方法论**
针对架构设计的方法论众多,应该如何选择?我也读过很多的相关书籍,我只选最实用的,这里我推荐几本书。
《设计模式》-要读懂、活用,我读了10几年每次都可以从中学到不一样的想法,将其应用于架构内可以极大地简化很多复杂的问题。
《Java编程思想》-谈面向对象方面最好的其中一本书,提高面向对象的设计能力会有很大帮助
《Refactoring》-重构不单单是一种做法和程序员才关心的事。重构重于意识与思维完全可以用于架构设计。
《eXtremeProgramming》-虽然讨论的是开发方法,但它最能诠释什么是”变化“。
广州北大青鸟依托北京大学雄厚资源,是北大青鸟华南地区就业示范校区,学校提供学历+技能+就业服务,主要开设热门课程java培训,UI设计培训,PHP培训,Web前端培训,软件开发编程培训等全程项目实战,免费就业推荐等,详情请点击右边的咨讯框咨询在线的老师,同时还可以获取免费的试听课程,欢迎咨询哦!!!
相关推荐
- 清远信息:2024年广清杯清远南粤家政技能大赛举行决赛|||计算机培训机构
- 汕尾信息:陈良川带队到汕尾技师学院调研|||计算机职业技能培训班
- 东莞信息:凤岗凤岗镇组织召开社保参保缴费及劳动用工政策宣讲会|||计算机软件培训学校
- 阳江信息:2024年度注册城乡规划师职业资格考试的合格标准是怎样的?|||计算机软件培训学校
- 阳江信息:职业技能提升补贴对象有哪些?|||大学生计算机培训学校
- 清远信息:清远市首家社保服务合作网点在清城区举办启动仪式|||计算机职业技能培训班
- 汕头信息:招聘658名中高端人才!2024年汕头市引进中高端人才专场招聘会举行|||北大青鸟计算机培训中心
- 东莞信息:广东省社保智能经办现场会在东莞召开|||大学生计算机培训学校
- 东莞信息:东坑镇举办2024年重点群体系列招聘活动|||计算机职业技能培训班
- 东莞信息:万江万江街道成功举办第四届粤菜师傅烹饪技能竞赛|||广州计算机编程培训
- 计算机教程排行
-
- 1汕头信息:“公共就业服务进校园”粤东专场在汕头大学举行|||计算机网络培训学校
- 2江门信息:构建和谐劳动关系优化提升营商环境江门市开展推进新时代和谐劳动关系创建活动|||广州学电脑培训学校
- 3汕头信息:2024年广东省公共就业服务进校园粤东片区专场活动诚邀各用人单位参会|||广州计算机编程培训
- 4广州中考成绩公布,高中阶段学校录取控制分数线公布,普高最低控制线502分
- 5清远信息:校企双向奔赴清远市人社部门携企赴省内外高校招才引智|||广州计算机编程培训
- 6江门信息:工伤保险缴费误区:最低工资非缴费基准,违规用人单位将面临法律风险!|||计算机软件培训学校
- 7惠州信息:2024年第一季度惠州人力资源市场供求情况|||北大青鸟计算机培训中心
- 8惠州信息:“惠州市就业驿站巡礼”之惠阳新圩站|||大学生计算机培训学校
- 9汕尾信息:世界技能大赛获奖选手全省巡回宣讲交流活动走进汕尾|||电脑计算机编程培训学校
- 标签列表
-
- Java (3694)
- 北大青鸟 (3713)
- 软件开发 (3613)
- JAVA (3413)
- UI设计入门 (2093)
- 惠州北大青鸟 (4375)
- 惠州IT培训 (2558)
- UI设计培训 (2090)
- 惠州UI设计培训 (2095)
- 惠州UI设计培训学校 (2090)
- 惠州计算机软件培训 (6260)
- 惠州计算件软件开发 (6260)
- 惠州计算机软件基础 (6261)
- 惠州计算机JAVA培训 (3574)
- 惠州计算机Java软件开发 (3620)
- 惠州计算机JAVA软件开发 (4645)
- 惠州计算机JAVA软件开发学校 (3338)
- 惠州计算机Java软件开发培训 (3338)
- 北大青鸟IT计算机学校 (5048)
- 北大青鸟IT软件学校 (5062)
- 北大青鸟IT学校 (5059)
- 惠州计算机UI设计软件开发 (2088)
- UI设计基础教程 (2088)
- UI设计是什么 (2088)
- UI设计教程 (2088)
- 网站分类
-
- 计算机教程
- 计算机入门
- 职业学校
- 新闻动态
- 专业课程
- 热门技术
- SEO
- 培训教程
- windows
- linux教程
- 系统集成
- 网站开发
- Html5
- 办公软件
- 师资力量
- 热点问答
- 联系我们
- 计算机学校
- 惠州计算机学校
- 河源计算机学校
- 广州计算机学校
- 深圳计算机学校
- 湛江计算机学校
- 佛山计算机学校
- IT计算机培训信息
- 设计专业
- UI
- 影视特效
- 游戏动漫设计
- Photoshop
- AI设计
- 软件教程
- Java技术
- C语言/C++语言培训
- C#
- Python技术
- PHP
- 数据库
- SQL Server
- 网络教程
- 网络安全
- 网络营销
- 软件专业
- 大数据专业
- 前端开发专业
- 软件测试专业
- Python专业
- 软件实施
- 珠海计算机学校
- 初中生学什么好
- 计算机认证
- 文章归档
-
- 2024年11月 (14)
- 2024年10月 (32)
- 2024年9月 (29)
- 2024年8月 (68)
- 2024年7月 (59)
- 2024年6月 (43)
- 2024年5月 (48)
- 2024年4月 (80)
- 2024年3月 (65)
- 2024年2月 (54)
- 2024年1月 (25)
- 2023年12月 (12)
- 2023年11月 (73)
- 2023年10月 (134)
- 2023年9月 (34)
- 2023年8月 (3)
- 2023年7月 (3)
- 2023年6月 (12)
- 2023年5月 (30)
- 2023年4月 (72)
- 2023年3月 (11)
- 2023年2月 (34)
- 2023年1月 (37)
- 2022年12月 (78)
- 2022年11月 (359)
- 2022年6月 (1193)
- 2022年5月 (570)
- 2022年4月 (1567)
- 2022年3月 (982)
- 2022年2月 (54)
- 2022年1月 (182)
- 2021年9月 (308)
- 2021年8月 (1704)
- 2021年7月 (2423)
- 2021年6月 (1806)
- 2021年5月 (1569)
- 2021年4月 (1380)
- 2021年3月 (1255)
- 2021年2月 (709)
- 2021年1月 (1521)
- 2020年12月 (3626)
- 2020年11月 (1646)
- 2020年10月 (1046)
- 2020年9月 (592)
- 最近发表
-
- 清远信息:2024年广清杯清远南粤家政技能大赛举行决赛|||计算机培训机构
- 汕尾信息:陈良川带队到汕尾技师学院调研|||计算机职业技能培训班
- 东莞信息:凤岗凤岗镇组织召开社保参保缴费及劳动用工政策宣讲会|||计算机软件培训学校
- 阳江信息:2024年度注册城乡规划师职业资格考试的合格标准是怎样的?|||计算机软件培训学校
- 阳江信息:职业技能提升补贴对象有哪些?|||大学生计算机培训学校
- 清远信息:清远市首家社保服务合作网点在清城区举办启动仪式|||计算机职业技能培训班
- 汕头信息:招聘658名中高端人才!2024年汕头市引进中高端人才专场招聘会举行|||北大青鸟计算机培训中心
- 东莞信息:广东省社保智能经办现场会在东莞召开|||大学生计算机培训学校
- 东莞信息:东坑镇举办2024年重点群体系列招聘活动|||计算机职业技能培训班
- 东莞信息:万江万江街道成功举办第四届粤菜师傅烹饪技能竞赛|||广州计算机编程培训