今天跟Leader聊了下,基本上现在的思路没问题,我发现每次跟Leader开会都把握不了重点,他说的我好像很难领会他的意图或者他的真正意思是什么,而且记不住,很多时候记不住说的话,容易漏掉内容,难道需要录音?这样不太好吧。。就说这次吧,他重点强调说要注意分层的思想,这个观点,其实都知道,只是他更关注,从任何一个插件,一个系统都要用分层思想去考虑。为什么呢?因为分层,你就能更容易把握什么是核心,什么是应用,这样未来需要做集成的时候,你就能有方向地去融合,比如他的核心是一个状态机,那么我也有状态机,那是不是就可以用我的替换他的呢?他的应用看上去不错,那么我就可以有针对去改进。另外,很重要一点,什么样的系统应该放到什么阶段去做。都说正确的时间点做正确的事情,对软件开发也是一样。在当下这个预研期间,你要做的当然是核心层面的调研。再一个,你是系统架构师,那么你就要自己去发掘出所有的需求,并且呢,把这些业务需求对应的解决方案统统列出来,不知道怎么办,学呗或者拿来主义,先看,看懂了,回头跟需求做对照,留其精华,抛弃糟粕。以前自己在做设计的时候,总是对自己摆的位置有问题,不喜欢去假设需求或者自己去发掘需求,导致自己期望其他人去熟悉工具的使用。其实架构师需要熟悉所有的工具细节,是最熟悉流程的人,这就是你有一缸子的水,你才能给工具的使用者一碗水。还有一点,对于软件的新特性,或者新功能,你作为架构师要发掘其中你能发挥出的功用,打个比方,你是做轿车制造的,有一天玻璃工业有了新的技术进展,那么你就要想,这个玻璃材质上的进展,能不能应用到汽车玻璃上,我做出来的汽车用上这个新玻璃后能不能比其他家的厂商先走一步?这就是产品角度去思考问题了。架构师需要具备这样的能力。
总结下:
1.无时不刻用分层的思想对要研究的系统进行划分。要对目标系统的层次结构做到心中有数,心中有塔。
2.自己要把需求和系统玩转,架构师自己是玩透的第一人。不要指望别人或者同事来替你解决问题。
3.遇到新特性,你要发掘需求,我怎么发挥这个特性能使我的产品比其他产品更强。
4.每个系统,他的需求是什么,为什么有这个需求,这个需求都有哪些解决方案,我的需求是什么,有没有满足我需求的方案,我是否需要融合各家思路,进行创新等。