入行十几年和很多架构师打过交到,绝大部分的架构师在具备超强的架构能力的同时,同时还兼具强大的编码能力,而且会的编程语言还挺多,从程序员的角度认知,架构师还是需要懂一些代码实现的原理对于架构整体架构还是非常有好处的。毕竟程序代码架构和代码的实现性能息息相关,所以架构不能脱离开代码的实现而单独存在,当然也见过专注于框架,不去在意具体代码的实现,可能是见识浅薄的原因,相对来讲还是非常少。
当今软件的发展分工是越来越精细,对于架构师来讲安心做好框架方面的东西,不关心底层的实现在一定程度上反而有助于提升整体软件体系结构,框架主要体现以下几个方面
1.可扩展性,兼容性
一个好的框架在后续加入新的功能之后,可以有机的结合在一起,新的功能的增加还能和之前的旧的功能有兼容性,两者之间不会因为新的功能的增加而引起冲突,后续再次添加新的功能不需要大范围的改变框架,在国内很多软件公司由于前期工期赶得比较紧迫,后面再次添加新的功能需要改动的东西非常多,导致框架的兼容性不够,成为大家都不敢动的马蜂窝。
2.健壮性
好的框架支持多个功能的同时不能因为功能多,导致性能的下降,这都是需要在设计之初需要考虑的事情,不能因为功能太多,导致整体系统的性能下降太多,里面在设计的时候就需要引入共享池的概念,大家一起共用,同时采用预加载的方式提升效率问题
3.有生命力
好的框架用上几年也不会显得过时,有前瞻性东西,用了几年还能不落伍继续使用,设计之初必须考虑未来几年负载承受能力,这样在大规模的功能上线之后的几年内框架还能支撑住,未来新的未知功能还能继续支撑,这算是架构的最高境界。
满足上述三条至于是不是有编码能力其实已经不是很重要的事情了,相对来讲懂得写代码在架构的时候显得更加接近地气,但容易思维受到限制,关键还是看结果。
希望能帮到你。
原文发布时间为:2018-10-7