对工作多年的程序员而言,日后的职业发展无非是专精技术,转型管理,晋升架构师三种选择。成为一名优秀的架构师,是大多数技术人的追求。
想要做架构,空有一身技术是远远不够的,知识的深度和广度,往往会决定一个架构师的架构能力。而这些知识,从你踏入 IT 行业那一刻起,甚至更早就应该开始储备了。
我看到很多人,做了 7、8 年程序员,仍然停留在「码农」的阶段,平时工作节奏太快,很难有机会系统学习架构,也没人教,只能闷头敲代码,越来越被动。
而一旦拥有「架构思维」,胸中自有大局观,对职业发展、职场晋升都会起到很大的作用:
1. 提升自己在组织内部的话语权,获得领导的赏识,客户的青睐;
2. 快速掌握新知识,避免陷入频繁加班的恶性循环,获得更多发展机会;
3. 透过问题看本质,了解代码之下更深层次的机制,不仅做到快速完成方案,且条理清晰,重点突出;
4. 制定符合用户需求且可扩展的商业计划,从而牢牢地控制企业生命线;
现在有很多技术人会通过看书查资料学习架构,我接触过的大概有这么几类:
→ 架构思维类。通常从一些著名的架构理论讲起,比如开闭原则、单一职责原则等等。其弊端在于过度理论化,而计算机科学归根到底属于工程技术类,应该实践第一。
→ 设计模式类。这类一般上来就进入架构的局部细节,每个模式的来龙去脉并不容易理解。就算理解了某个具体的模式,也很难真正做到活学活用。
→ 分布式系统架构设计类。通常从服务端的通用问题如一致性、高可用、高并发挑战等话题讲起,阐述大型业务系统面临的挑战。这些知识虽然非常有价值,但无法延伸至通用业务架构,对大部分企业的架构实践不具备真正的指导意义。
→ 重构类。主要讲如何如何改进代码,其实是最实用的一类。但在我看来,一个模块最初的地基是最重要的,基本决定了这座大厦能够撑多久,而重构更多侧重于大厦建成之后,在服务于人的前提下怎么去修修补补,延长生命。
学习需要找对方向,找对目标,找对方法,找对老师。如果想提升自己,超越自己,方向
==>链接:https://ke.qq.com/course/417774?flowToken=1010819