写在前面
以下是我之前读到的关于程菊生老师的关于一名优秀的架构师的一些见解,现整理出来,分享给大家,大致意思如下。
1、一名优秀的架构师应该怎么做架构设计?
首先,需要一定的技术广度
,能够把握全局,能对本领域内的关键技术和方案有全面深入的了解。其次,需要有足够的技术深度
,要能够对关键技术的实现细节有深入的了解,能够将设计方案具体落地,并通过代码运行的反馈结果方向对系统和设计方案进行优化和微调。
2、架构师是否需要写代码?
“懂代码”是指架构师对整个系统的关键流程、主要方案代码的实现很清楚,知道大概有哪些异常没有处理,有哪些性能问题和可靠性问题。如果要写代码,可以拿自己设计的一个流程实现一把,在实际环境中运行看看,不要写什么“框架代码”或“伪代码”。
3、如何解决架构设计与开发分离?
要解决架构设计与开发分离这个问题。一是,架构师和开发的边界问题
,架构师需要“手伸长一点”,扶上马送一程。架构设计完了,要帮助开发想想怎么实现,关键流程是怎么走的,主要接口有哪些,哪些方面可能有性能问题/可靠性问题等。二是,架构师要不断提高自己的设计能力,要多积累技术方案和架构原型,设计时做到“胸有成竹”,而不是临时造轮子。优秀的架构师是在做选择题,而不是在做填空题,是从众多的方案中选择一个最适合当前业务的场景。
感谢程老师的分享,我辈当努力!