欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

系统架构设计师-软件水平考试(高级)-理论-架构风格

程序员文章站 2022-06-11 18:16:04
系统架构设计师-软件水平考试高级-理论-架构风格。其中涉及架构风格,ABSD,软件架构评估,软件产品线,中间件技术,典型应用架构,Web架构设计等。 ......

系统架构设计师-架构风格

 

 

前言:

看来非技术向的架构xmind真的真的受欢迎啊。上一篇非技术类的阅读量明显高出平均水准好多。。。

但是,这次真的是系统架构师这个考试最有价值的技术类xmind了。

如果感觉图片模糊,请将图片下载,或放大图片。(图片绝对清晰)

 

 

一,xmind:

系统架构设计师-软件水平考试(高级)-理论-架构风格

 

 

二,补充:

  日常补充一下。这个xmid真的不够详细,这个xmind真的学习起来,够人学习许久。每个分类都可以写一本书,比如主要中间件又分rpc,rmi等等。表示,额,自己努力吧。

  系统架构风格,可以说是架构师考试的最闪耀的一块儿了(想想这个资格叫什么,架构师!!!)。架构的重要性不言而喻,记得曾经在那里看到这样一句话,不是架构师的程序员终将被淘汰。其所要表达的是,只有走到了架构师这个层次,你才可以把握技术的发展思想与脉搏,跻身于it技术的一线。

  其实,这句话也没说错。因为绝大部分程序员大多分两种情况。一者,身处中小公司,处理的系统往往陈旧(由于公司资金不足,技术被不重视等原因),不健全,乃至畸形。这样的系统无法为维护它的程序员带来主流技术的认识等,使得这些程序员缺乏成长的土壤。二者,身处大公司,往往能接触到大系统,主流技术(当然也不绝对,也有部分公司的部分系统还是采用陈旧,乃至淘汰的技术。至于原因,以后有机会再谈),但是往往自己负责的一个非常小的块,难以管中窥豹,了解系统架构。当然,也不是没有出头之路的(否则那来的架构师)。前者,需要的是多询问自己,如果系统遇到各种情况,如何解决(性能瓶颈,部署问题,可靠性等质量属性问题或非功能需求问题)。这个时候,我就可以安利一波书籍了。推荐《尽在双11:阿里巴巴技术演进与超越》,《大型网站系统与java中间件实践》,《大型网站技术架构演进与性能优化》(就是该系列第一篇博客里推荐的书籍),这些书籍大多从系统演进(从单机服务器到分布式集群服务器等)与发展主题(性能,可靠性,安全性等)两个维度解读了现有系统与架构。后者,需要的则是按图索骥,多看,多问,多学习。后者相对前者,已经有了一个很好的模板放在眼前(虽然自己不一定能拿到太多代码),但是你可以问啊。不同于中小公司程序员多是野路子(不是野路子,也会渐渐变成野路子)。后者的上司大多有着更为广阔的视野(也许在某些具体领域不如你,但请不要轻视他,耐心多相处相处,你就会发现他的好),更为专精的领域,更为友好的管理等,这些都值得后者去问,去学习。

  当然,这些都是日常,还有一个方式和一个机遇告诉大家。程序员怎样怎样快速提升自我价值和收入(别说我俗,不考虑这个,你哪来的钱去买书,报班,买服务器.etc),那就是跳槽。没错,就是跳槽。可能有些人会很抵触这种行为,认为跳槽是一种背叛老东家的行为。其实,刚毕业的时候,我也是这样想的(而且我是一个很懒,很不想动的人)。直到我连续被东家卖了几次,我才得出一个宝贵经验。你把老东家当兄弟,老东家只是把你当作机器或者商品(当然这只是大部分情况,我也遇到可以谈感情的东家,然后他的公司倒闭了,倒闭了。。。)。我表哥就是清晰地认识到这点。他是在卡内基梅隆大学读的研究生,研究生毕业就抛弃了他的实习东家,进了甲骨文。紧接着不到一年,又跳槽进了谷歌。他给了我一句话,程序员,不跳槽怎么涨工资,怎么提升工作环境(当时不懂,唉)。所以,不要有心理包袱。想要和别人谈感情,先想想,别人怎么看待你的。至于机遇嘛,就是公司系统实在撑不下去了,必须要更新换代了。这个情况是肯定有的,虽然比较难遇到。。。这个时候,你要做的就是两点:第一,平时多表现一点自己的能力和对新知识的认识(尤其,当你提到要做新系统了,新系统要使用memcache技术,立马去看,去学。如果不用,就当多学了点);第二,一定要充分,坚决,不要脸地挤进开发组(该争取的时候,还是要争取的)。说实话,新系统的开发一定是很辛苦的(常常是数月,乃至一年多的加班时间),但是学到的东西,是平时完全学不到的。另外,切记要总结,总结,总结。如果这个时候,你还依旧只是站在以往的视野,机械地撸代码。我只能说,还是放弃吧。因为新系统开发的时候,你所接受的知识冲击还是有的,去总结,去适应。另外,这个时候,你也可以多问问你的上司(专门的问题,问专门的人,不过别忘了本职工作)。要说的太多,有机会,以后再说吧。

  话题拉回来,还是从考试和实践两个角度来谈。考试方面,架构风格属于考试核心,分值最高,多达25分左右,并且每次案例与论文都有这方面主题。实践方面,前面那句话我就不提了。只想说,学会这个,起码以后你看系统的眼光变了。懂得从大局分析问题了,能够明白一些原本你认为不合理的地方为什么那样做了。再深点说,你提高了你的抽象能力,提高了你在编程方面的学习能力(我一直认为,从上而下,从下而上,两路进发,都是学习的好路子,效果嘛,看情况的)。学习能力才是最重要的,因为技能是可能随着时代发展而被抛弃,而学习能力,专业学习能力的提升才是长久的(思想不提)。

  这次说得有点多,有点乱。算是一不小心,有感而发?希望对大家有所帮助。