前面写过几篇与架构相关的文章,后来呢也就有了这想一个简单的想法,把我工作多年是有关于架构设计中的一点点滴和一些自我感觉还不错的经验分享出来,供大家参考和交流,虽然说我不能系统的给大家讲系统是系统架构,如何进行系统架构设计、因为我也没有系统的设计过,很多都是工作经历之中慢慢体会和总经,所以既使我能勉强的写出来,估计也不是很专业,因为我是个半路出家的“和尚”,能把实际工作中的一些点滴说出来,把问题解决了,但我总是不怎么善于系统的讲解,忘大家谅解。
说到系统架构,就不得不提到“架构师”,我相信有很多程序都希望将来成为一名优秀的系统架构师,那么如何成为一个架构师呢?说到这个问题那么我们必须得来了解一个架构师应该具备那些技术能了,下面是我一个架构师技术结构简图:
根据上图我们可以看到架构师是一种兼有领域/行业业务知识并且具体架构设计、系统分析为复合型人才,在技术领域,要掌握分析、设计、开发、测试等知识,并且要经常关注企业运算的发展动向,在业务领域,系统架构师必须掌握大量的行业背景与行业的业务知识,甚至于成为一个业务专家,同时系统架构师还必须要有全保的沟通交流、组织协调能力,并且要能了解社区群众与社会文化。
现在回头过头,我想我可以回答如何成为一名优秀的架构师的问题了,在我们“天朝”当你成为合格/优秀架构师的那一天,你将同时是一名优秀的系统分析员,一名优秀的领域/行业专家。我们每个人天资不同,在工作和学习的过程之中,每个人的境遇和经历也各不相关,我想说的是已经工作的同学首先干好自己的工作,合理的安排好时间,在工作中多思考和实践自己的思考,慢慢的形成更多的学习积累,没有工作的同学呢,我想应该趁着这个时候学好扎实一理论知识,如计算机体系结构、数据库、数据结构、软件工程等。
大家在学习架构的同时应该学习相关的基础以及常用的一些系统架构及与之相关的技术:如分布式计算、通信/消息/协议、应用程序服务器、网络计算、并行计算、云计算等等,并且重点关注于某一领域/行业,深度熟悉这个行业的业务特点、运做机制,了解业务为了让架构更好的为业务系统服务。这也将是走向一个复合人才的重要一步,设计&分析,架构师&需要分析这将会一个集于一身而偏重点不同的两尖复合型人才。
提一个题外话,在我们成长、学习、工作的过程中,我们时刻被社会所影响,也在影响着与你相关的其他人,所以我们做技术的,不应该眼光只看在技术上,不应该整天只与机器打交道,你得记住你是在为“人”做开发,那么我们应该与人、与社会交流,特别是你想成为一名架构师或者一名系统分析师,你更应该学会了解社会与人,了解你身边的朋友、你的同事、你的老板、你的客户。我们受儒家思想(道有做为补充)影响着几千年,社会是这样一个大同的环境,虽然说改革开发以及软件技术的引入也在影响着这种传统理念,然则毕竟这是一个长期的过程,在我们现在的这个社会,还是以儒家思路为基础的“和”字文化为主流社会文化,大家可以有空的时间多读一些我们传统的社会学、国学经典书籍,我个人觉得值得去读。
文末我附上我相关系列文章的链接和QQ群,欢迎大家。
链接
一步一步教你使用AgileEAS.NET基础类库进行应用开发-系列目录
QQ群:116773358