转载于
http://blog.csdn.net/lzying/archive/2004/10/11/131568.aspx
架构师(Architecture)是目前很多软件企业最急需的人才,也是一个软件企业中薪水最高的技术人才。换句话说,架构师是企业的人力资本,与人力资源相比其能够通过架构、创新使企业获得新的产品、新的市场和新的技术体系。那么什么是架构师、架构师的作用、如何定位一个架构师和如何成为一个架构师呢?这是许多企业、许多程序员朋友希望知道的或希望参与讨论的话题内容。
所谓架构师通俗的说就是设计师、画图员、结构设计者,这些定义范畴主要用在建筑学上很容易理解。小时候到河中玩耍,经常干的事就是造桥,步骤如下:1、在沙滩上画图;2、选择形状好看、大小适合的石头;3、搭建拱桥。其中我们挑出来画图的那位光PP小孩就是传说中的“架构师”了。
在软件工程中,架构师的作用在于三方面:1、行业应用架构,行业架构师往往是行业专家,了解行业应用需求,其架构行为主要是将需求进行合理分析布局到应用模型中去,偏向于应用功能布局;2、应用系统技术体系架构,技术架构师往往是技术高手中的高手,掌握各类技术体系结构、掌握应用设计模式,其架构行为考虑软件系统的高效性、复用性、安全性、可维护性、灵活性、跨平台性等;3、规范架构师是通过多年磨砺或常年苦思顿悟后把某一类架构抽象成一套架构规范,当然也有专门研究规范而培养的规范架构师。他们的产物往往也分为应用规范和技术规范两类。
与建筑学类似,如果软件系统没有一个好的架构是不可能成为成功的软件系统的。没有图纸的建筑工地、没有设计的造桥工程都是不可以想象的混乱世界。建筑工程如是,软件工程中亦然!
由于国内合格、胜任的软件架构师极为少见,直接导致了我国民族软件产业水平的落后。在未来以信息产业为主导的社会,信息产业水平的低下将直接影响国家核心竞争力。究其原因,无企业非急功近利、个人缺乏引导。
企业的急功近利是有无法克服的原因的,那就是社会发展总体水平。“生存是第一位的,赚钱是第一位的”,多年来许多客户抱怨国内的软件公司无法信任、系统项目累做累败、公司越换越差,但因国外不可能给中国做应用系统项目还不得不找国内软件公司做。由于人月费用低、公司开发成本高,软件企业对于应用只能草草了事,拿钱走人(很多公司拿不到后期尾款)。这样的环境下,企业几乎无法投入更多资源培养自己的架构师,加上眼花缭乱的跳槽风气企业更是不愿投入……
那么要成为架构师的途径似乎只有现在较为流行的软件学院和个人自我培养了。关于软件学院我接触过不少,其宗旨绝大部分都是造就(or打造)企业需要的软件架构师(or程序员or人才)。教师来源与企业、学员来源与企业、人才输送到企业是他们办学的手段。尽管各个如雨后春笋般出现的软件学院口号差不多,但恐怕大多只是为了圈钱卖学位了事...
架构师不是通过理论学习可以搞出来的,不过不学习相关知识那肯定是不行的。参考软件企业架构师需求、结合目前架构师所需知识,总结架构师自我培养过程大致如下仅供参考:
1、架构师胚胎(程序员)学习的知识是语言基础、设计基础、通信基础等,应该在大学完成,内容包括java、c、c++、uml、RUP、XML、socket通信(通信协议)——学习搭建应用系统所必须的原材料。
2、架构师萌芽(高级程序员)学习分布式系统、组建等内容,可以在大学或第一年工作时间接触,包括分布式系统原理、ejb、corba、com/com+、webservice(研究生可以研究网络计算机、高性能并发处理等内容)
3、架构师幼苗(设计师)应该在掌握上述基础之上,结合实际项目经验,透彻领会应用设计模式,内容包括设计模式(c++版本、java版本)、ejb设计模式、J2EE架构、UDDI、软件设计模式等。在此期间,最好能够了解软件工程在实际项目中的应用以及小组开发、团队管理。
4、软件架构师的正式成型在于机遇、个人努力和天赋,软件架构师其实是一种职位,但一个程序员在充分掌握软架构师所需的基本技能后,如何得到这样的机会、如何利用所掌握的技能进行应用的合理架构、如何不断的抽象和归纳自己的架构模式、如何深入行业成为能够胜任分析、架构为一体的精英人才这可不是每个人都能够遇上的馅饼……
然而学海无涯,精力有限,个人如何能够很快将这些所谓的架构师知识掌握?这是秘密,每个人都有自己的独门家传秘笈就不敢一一暴露了。不过有一点就是广泛学习的基础之上一定要根据个人兴趣、从事领域确定一条自己的主线来努力。
如果说架构师是在模型图纸上工作的,那么模型元素必须是实实在在的,正如我们不可能期望抽象派画家来设计高楼大厦,没有实际意义的模型元素,是不可能构筑出软件系统的。迄今为止,绝大部分软件架构师是依赖软件程序员来实现他们的架构意图的,这二者直接的鸿沟是显而易见的。设计模式的出现是为缩短二者之间的鸿沟所做的努力,目的是让架构师和程序员之间有更多的共同语言和规范。尽管设计模式让软件开发效率和质量有一定程度的提升,但是它始终面临一个很明显的局限,那就是人的因素。人虽然在创造性方面有绝对优势,但是在精确性、持久性、效率、质量上是无法比拟机器的。所以我们希望在软件系统构建过程中,人和机器发挥各自的长处,也就是说,让人来扮演架构师的角色,而让机器来扮演程序施工者的角色。事实上,目前已经有了成功的模式了,那就是KCOM 商业工程(http://www.kcomsoft.com)企业应用平台所采用的基于设计的全自动化软件工厂模式,采用这种模式,架构师在工具平台所提供的模型图设计环境里做软件系统的设计,设计结果由工具平台自身所带的“软件工厂”自动加工成最终企业应用软件系统。这样的开发模式,能使企业应用软件系统的开发在效率、质量上有了质的提升,从根本上区别于传统的设计模式,因为这里的设计模式已经包含在软件工厂编译器之中了。
分享到:
相关推荐
018最新JAVA架构师培训视频教程(附笔记、源码、视频教程 全网盘链接) 内含完整资料及代码: 一、互联网并发编程 二、互联网网络通信编程 三、JAVA虚拟机 四、Linux部分 五、数据库设计与优化 六、互联网...
下面是网络积累和收集的知识技能图谱,都是日常收集或者网站转载整理而成,其中每个秘籍图谱里面的内容都是互联网高并发架构师应该了解和掌握的知识。 性把这些图谱收集在一起,并且归类便于查找和学习,希望能够...
下面是网络积累和收集的知识技能图谱,都是日常收集或者网站转载整理而成,其中每个秘籍图谱里面的内容都是互联网高并发架构师应该了解和掌握的知识。 性把这些图谱收集在一起,并且归类便于查找和学习,希望能够...
如需转载或者修改请复制本帖说明前两段,如果做到此处说明,IT168_NOVA开发组欢迎你 ============================================================================ 更新说明: 1、此ROM是移植CyanogenMod7.1而来,...
- **目标受众**:InfoQ中文站明确将其新闻价值观的核心受众定位为架构师、项目经理、团队领导者以及高级开发人员。这一定位反映了对于这些群体的专业需求的高度关注。 - **角色定位**:作为一个技术社群的镜像,...
其中包括RPA开发工程师、售前工程师、业务分析师、架构师、运维工程师、项目管理、项目负责人、企业高管、HR等多种角色。社区提供了各种丰富的教程、资讯、文章、问答、招聘、活动、项目等供大家一起交流和成长。 ...
RAD Studio XE5 14天试用过期后的重置工具 1. 运行 XE5 只能 Reset _UP2.exe (感谢 lsuper 发布的 Lite 版)。 2. 确保 安装目录 bin 目录...HNFK-BCN8NN-78N53D-H4RS 架构师版 亲测可用,该工具转载自网络,仅供学习!
系统架构师需要设计出可扩展、高可用的系统,处理复杂的技术挑战。性能优化涉及代码优化、数据库查询优化等,以提高软件运行效率。安全性则是确保软件免受攻击,包括输入验证、防止SQL注入、XSS攻击等。 最后,成为...
秋招金九银十快到了,...版权声明:本文为CSDN博主「进阶的架构师」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/qq13321123/article/details/131416951
Power 9芯片首席架构师Brian Thompto表示,就一系列的性能标准而言,预期明年底上架的Power 9的性能与Power 8比有50%至2倍多的提高。内核和芯片层次上的新设计有助于提高性能。 --------------------- 作者:...
随着经验和技术的积累,网络工程师可以晋升为网络系统设计师,负责设计和规划企业网络架构。 网络工程师的就业前景广阔,不仅可以在网络公司、IDC中心、ISP服务商等专业技术机构工作,也可以在大公司担任技术支持或...
5. **网站架构**:网站设计不仅包含标准的B2C功能,如产品展示、详细介绍、支付和物流,还增加了会员论坛和博客功能,构建会员个人空间,鼓励用户分享创意、购物经历和社交,以此增强用户黏性和口碑传播。...
《××××系统概要设计说明书》是对整个系统架构和主要功能的宏观设计描述,旨在为后续的详细设计和编码工作提供指导,并确保所有相关人员对系统的理解和实施保持一致。本文档面向的主要读者群体包括系统用户、软件...
某项具体功能地实现,的确是顾问的基本功,但如果要从SAP业务顾问提升到另一个层次,无论是方案架构师、项目经理,还是管理咨询、业务流程专家(BPX, Business Process Expert),都需要对企业架构、组织功能和业务...
某项具体功能地实现,的确是顾问的基本功,但如果要从SAP业务顾问提升到另一个层次,无论是方案架构师、项目经理,还是管理咨询、业务流程专家(BPX, Business Process Expert),都需要对企业架构、组织功能和业务...
某项具体功能地实现,的确是顾问的基本功,但如果要从SAP业务顾问提升到另一个层次,无论是方案架构师、项目经理,还是管理咨询、业务流程专家(BPX, Business Process Expert),都需要对企业架构、组织功能和业务...
和写SpringCloud进阶之路时一样,一是为了巩固自己所学的知识,写下来,远比搞清楚要复杂的多!二是为了写出来,避免大家踩同样的坑,与大家共同分享。三是虚心接受大家的批评指教,共同提高。有任何问题,可随时...