BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

架构师(5月刊)

| 作者 InfoQ中文站 关注 53 他的粉丝 发布于 2010年5月21日 如何结合区块链技术,帮助企业降本增效?让我们深度了解几个成功的案例。

相关内容

架构师(3月刊)

架构师(2月刊)

架构师(1月刊)

架构师(12月刊)

架构师(11月刊)


《架构师》月刊由InfoQ中文站制作出品。

读者反馈/投稿:editors [at] cn.infoq.com

商务合作:sales [at] cn.infoq.com,联系电话:13911020445

篇首语:不积跬步无以至千里

不久前,我参加了一次企业开发年会。在年会的五个分会场中,架构师与团队管理分会场人头攒动,场面格外壮观。这给我一种错觉,大有“架构师多如狗,项目经理满街走”的态势。然而,当我在演讲到架构与通用设计原则时,分明看到下面听众茫然的眼光。我心底一惊,有种不妙的感觉浮上心头。为了印证这是否错觉,我随意询问了听众几个问题。听众的回答让我的心拔凉拔凉的。原来,距离架构师的百花齐放,我们还有很长的路要走。

对于这个行业,我们最大的问题并非不知其不足而盲目地自大,而是我们的软件从业人员内心已经浮躁了,这其中自然也包括我。每个纯粹走技术道路的开发人员都向往着架构师的头衔,却忽略了若要成为一名合格的架构师,需要经历的沉淀与历练。拿破仑的一句名言“不想当元帅的士兵不是好士兵”,激励着我们向着远大目标迈进。可是不要忘了,我们中国还有一句古话:“一屋不扫,何以扫天下?”

恰好在前几日,我应西南大学之邀,为计算机学院的学生们开展了一次讲座。讲座的题目为“软件从业人员的五项能力修炼”。我偷窃了Peter M. Senge所谓“第五项修炼”的概念,不过内容上却是大相径庭。据我过往的经验,我认为软件从业人员必须具备如下五项能力:

  • 实现域的逻辑思维能力
  • 问题域的分析与抽象能力
  • 业务域的建模与设计能力
  • 未知域的学习研究能力
  • 组织域的交流协作能力

这或许是我的一孔之见,却也是我沉思所得。这里所指的“软件从业人员”其实是片面的,我心底里的思想还是在向架构师靠拢,而且是面向技术设计的架构师。这五项能力正是架构师所必备。如果没有好的逻辑思维能力,就无法提供好的算法与实现,不能写出优美的代码;不具备分析与抽象能力,就很难解决纷繁复杂的需求问题,无法建立一个可以经得起考验的架构蓝图;架构师需要建模,无论是数据模型还是领域模型,无论是计划式设计还是演进式设计,模型都可以帮助架构师理解需求,进而帮助开发人员理解设计。

人类社会的发展总是充满未知,科学如璀璨的星空指引我们探秘与求索。软件开发同样是一门科学,它的善变是永恒的。站在高端的架构师,如果不具备良好的学习研究能力,因循守旧,故步自封,最后就会湮没在变化的浪涛中。软件开发需要团队,脱离交流与协作的架构师,就如匹马单枪的堂吉诃德挑战风车,结果是头破血流,败得一塌糊涂。交流的重要性不言而喻,一个再好的设计,如果没有合适的方式表现出来,并能够被人理解,它就是无用的。

架构师的成长漫长而充满艰辛。是否能够成功,除了需要远大的目标,还需要脚踏实地。最近,我阅读了两本好书。一本是Kent Beck所著的《实现模式》,另一本是Robert C. Martin的《代码整洁之道》。他们是举世公认的设计大师,但在这两本书里,他们谈的不是架构,而是代码,是实现。荀子曰:“不积跬步,无以至千里;不积小流,无以成江海!”架构师站得高,所以望得远,但如果根基不稳,就极容易跌下来,摔得屁滚尿流。

窃以为, 不浮躁而保持虚心,不畏难而坚定执著,不偏狭而开放进取,此乃架构师成功之道。不知读者诸君,意下如何?

InfoQ中文站.NET社区编辑:张逸

免费下载阅读

欢迎您

,并为我们提出宝贵的建议。

本书目录

篇首语
目录

人物专访

  • 功能小组模型的过程与质量控制

热点新闻

  • ANGLE为在WINDOWS下进行WEBGL渲染提供了便利
  • APACHE PIVOT初探——基于JAVA的RIA框架
  • SCALING OUT最流行的社交游戏,FARMVILLE
  • ORACLE宣布GLASSFISH路线图
  • DIGG与REDDIT加入NOSQL阵营
  • CLOUDCAT支持在AMAZON EC2和GOGRID的云上部署WEB应用
  • JAVA EE 6 BEAN VALIDATION提供了实体验证元数据模型与API
  • 采用OSGI框架开发项目的十个问题
  • ASP.NETMVC 2特性汇总
  • JRUBY近况
  • 新兴的行业SOA的最佳实践
  • 注释还是不注释,这是个问题

推荐文章

  • 基于AZURE云计算平台的网格计算(第三部分)
  • 在不改变语言的前提下如何推进JAVA的不断演进
  • 面向资源的架构:REST的另一面
  • 使用APACHE SHINDIG为客户应用程序加入社区内容
  • 书评:《代码之道》

每月新品

  • 微软发布ODATA SDK和“DALLAS” CTP2
  • ECLIPSE GIT插件EGIT发布了
  • WINDOWS PHONE 7 SERIES将不支持本地代码
  • SPRINGSOURCE发布TC SERVER SPRING EDITION
  • WINDOWBUILDER PRO V7.4 发布:更棒的性能、更快的解析
  • U­PROVE:在保护隐私的情况下提供安全性
  • OPENCREDO宣布为SPRING INTEGRATION增加AMQP支持

特别专题:RIA 技术选型与案例解析

  • 构建前端UI组件的新思路
  • 基于FLASH的软件开发
  • 案例分析:SILVERLIGHT在中国人寿的应用
  • 漫谈B端的沙箱技术
  • 评论:前端的HTML5 时代来临

封面植物
版权信息

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT