1. 业奇农业网 > 百科 >

软件架构师需要掌握哪些知识?

架构师首先必须具有丰富的开发经验,是个技术主管。因为他必须清楚什么是可以实现的,实现的方式有哪些,相应的难度怎么样,实现出来的系统面对需求变化的适应性等一系列指标。另外,需要对面向过程、面向对象、面向服务等设计理念有深刻的理解,可以快速的察觉出实现中的问题并提出相应的改进(重构)方案(也就是通常说的反模式)。这些都需要长期的开发实践才能真正的体会到,单从书本上很难领会到,就算当时理解了也不一定能融会到实践中去。在技术能力上,软件架构师最重要也是最需要掌握的知识是构件通信机制方面的知识,包括进程内通信(对象访问、函数调用、数据交换、线程同步等)以及进程外(包括跨计算机)的通信(如RMI、DCOM、Web Service)。在WEB应用大行其道的今天,开发者往往对服务器间的通信关注的比较多,而对进程内的通信较少关注。进程外跨机器通信是构建分布式应用的基石,它是架构设计中的鸟瞰视图;而进程内的通信是模块实现的骨架,它是基石的基石。如果具体到一个基于.Net企业级架构设计,首先需要的是语言级别的认识,包括.NET的CLR、继承特性、委托和事件处理等。然后是常用解决方案的认识,包括ASP.NET Web Service、.NET Remoting、企业服务组件等。总之,丰富的开发实践经验有助于避免架构师纸上谈兵式的高来高去,给代码编写人员带来实实在在的可行性。其次,具有足够的行业业务知识和商业头脑也是很重要的。行业业务知识的足够把握可以给架构师更多的拥抱变化的能力,可以在系统设计的时候留出一些扩展的余地来适应可能来临的需求变化。有经验的设计人员可能都碰到过这样的事,一厢情愿的保留接口在需求变化中的命中率非常低。也就是说,在系统设计之初为扩展性留下来的系统接口没能在需求变化的洪流中发挥真正的作用,因为需求的变化并没有按照预想的方向进行,到最后还是不得不为变化的业务重新设计系统。这就是因为对业务知识的理解和对市场或者商业的判断没有达到一个实用的、可以为架构扩展性服务的水平。再次,架构设计师对人的关注必须提升到架构设计之初来纳入考虑的范围,包括沟通以及对人员素质的判断。软件过程是团队协作共同构建系统的过程,沟通能力是将整个过程中多条开发线粘合在一起的胶水。大家都应该碰到过事后说“原来是这样啊,我不知道啊”或者某个开发人员突然高声呼喊“为什么这里的数据没有了”之类的。沟通的目的就是尽量避免多条开发线的混乱,让系统构建过程可以有条理的高效进行。另外,对人的关注还表现在对团队成员的素质判断上,比如哪些开发人员对哪些技术更熟悉,或者哪些开发人员容易拖进度等。只有合理的使用人力资源,让合适的人做合适的事情才能让整个软件过程更加高效。架构师应时刻注意新软件设计和开发方面的发展情况,并不断探索更有效的新方法、开发语言、设计模式和开发平台不断很快地升级,软件架构师需要吸收这些新技术新知识,并将它们用于软件系统开发工作中。但对新技术的探索应该在一个理性的范围内进行,不能盲目的跟风。解决方案提供商永远都希望你能使用它提供的最新技术,而且它们在推广自己的解决方案的时候往往是以自己的产品为中心,容易给人错觉。比如数据库,往往让人觉得它什么都能做,只要有了它其它什么都不重要了。但事实上并不是如此,对于小型应用可以将许多业务逻辑用script的方式放入数据库中,但很少看到大型应用采用这样的做法。对于新东西需要以一种比较的观点来判断,包括横向的比较和纵向的比较,最后得出一些性能、可移植性以及可升级等指标。另外,新入行的开发人员往往关心新技术动向而忽略了技术的历史,而从DOS时代一路杀过来的开发者就对现在的技术体系有较全面的把握。

软件架构师需要掌握哪些知识?

⑴ 如果未来想从事系统分析师(SA)的工作,大学应该选择什么专业系统架构师呢

中国的大学计算机类的专业很多课程都是重叠的,所以只要是相关专业都会有所提及回。像计算机科学与技答术,计算机信息系统等等都没问题。另外提醒一下,不用过早的定下系统分析师或者系统架构师的规划。先把基础打好了,再按自己的兴趣决定方向,没有人大学一毕业就可以做你说的这两种工作的。从技术角度上来说,系统分析师更偏向于业务,系统架构师更注重技术。总而言之,如果想做架构师,技术基础必须打好,像操作系统,数据库,各种编程语言,编译原理这种基础课必须融汇贯通。再加上实际工作中的多年经验累计才能实现你的目标。如果要做系统分析师需要侧重业务流程管理类的学习,同时兼顾软件基础知识等。

⑵ 成为一名系统架构师的条件是什么大学要读什么专业才有机会成为系统架构师回答好的补分。谢绝复制。

与大学专业基本无关,人聪明好学,并且勤奋努力,对程序开发有自己的执着,对知识的专广度和深属度都有积累并会学以致用,这样的话经过一些年的努力就自然会成为了

考证什么的很无聊,如果硬要选专业,选一个轻松点的吧,这样可以有更多的时间自学

⑶ 我想成为构架师,大学该学什么专业呢

坑死人不偿命的职业,讲究关系和资历的,要慢慢熬的,你大学毕业只有学历优势,别人中专毕业后工作的时候考个函授什么的学历,然后你学历优势也没有了,经验也没人家多,除非有关系,不然还是别做这个

⑷ 架构师是大学哪个专业

计算机科学

软件科学

架构师不是一门学科就可以胜任

需要多学科知识

⑸ 系统架构师是要从程序员做起吗大学是学什么专业应该怎么做才能从一名程序员变为一名系统架构师

系统来架构师,这个岗位。

大学没源有对应的专业。

一般大学计算机或者软件相关专业的同学,毕业后,积累几年的开发经验加上个人技能,编程思维优秀,基本上就符合一名架构师的要求。

从一名普通的程序员到架构师,需要几年的开发积累和写代码的历练。

让自己在技能上有了编程的独特理解,能够很好的构思一个系统或者软件的架构。

⑹ 架构师具体需要学些什么

基础大概有两大块 1.是要有较强的数据库管理系统的使用能力(比如你要学版会Oracle),以及较强的数据库权理论知识背景。 2.大数据分析你要掌握概率统计学的知识,学会数据分析工具的使用。比如MATLAB,这个工具非常强大,掌握起来有些难度。但不是说你掌握了这个工具就能胜任数据分析师的工作了。你还需要,有较强的逻辑分析能力,对各种各样的数据进行建模,然后根据统计分析结果进行最终判定。建议:入门的时候先从数据库开始,因为这是数据的生存环境,大数据或者称为海量数据都是存储在这其中的。熟悉数据建模,这是个系统性很强的学科,主要是高等数学范畴内的只是,偏统计分析。最后是勤加练习对各种数据建模分析,当你的结论越来越靠近最优解的时候,你的经验也在不断增长,那么离你的目标就很近了。这是个很有挑战,也是非常复杂的工作。需要你坚持,大概三年能有小成。但前途一片光明。

⑺ 互联网架构师上大学读什么专业

可以读软件开发专业。

⑻ 系统架构师要学什么

成为优秀程序员,需要学好的知识:

1、面向对象编程、UML画图、设计模式、代码重构

2、常用ORM工具

3、 MVC,WCF,XMl,JQuery,SQL以及性能优化

4、frameWork一些深入的知识

5、高性能代码,比如静态化,MemCached等手段。

6、最好也了解一些其他语言,比如Java,PHP等。

成为DBA,需要学好的知识:

1、常用数据库,MSSQL、MySQL、Oracle,性能调优熟练,备份、负载均衡、集群、容灾熟练

2、大数据量处理熟练

3、各种数据库监控软件

成为运维,需要学好的知识:

1、各种Web负载均衡的硬件,比如F5,软件,比如Nginx等原理和配置

2、反向代理加速,比如SquID等

3、操作系统,Linux是必须懂的,各种好的工具都在Linux下。

4、各种性能监控软件。

成为产品和业务以及项目经理,需要学好的知识:

1、沟通和理解能力。

2、该行业和本公司的业务逻辑。

3、软件工程的知识。

4、质量控制、进度控制、人员组织等。

⑼ 想成为软件架构师,大学报什么系

对.就是软件工程系.

⑽ 未来的职业想从事系统架构师,报什么大学专业好

个人感觉应该是软件工程、信息化相关的吧。

但只是计算机的知识是不够的,还得需要行业知识。

本文由用户上传,如有侵权请联系删除!转转请注明出处:https://nongye.s666.cn/bk/6_6572231823.html