写点什么

如何才能称得上是一名架构师?

  • 2007-08-21
  • 本文字数:1260 字

    阅读完需:约 4 分钟

在 MSDN 开发者中心的博客上有一篇很有意思的文章,作者在文中讲述了在微软的文化(至少是其文化的一部分)中架构师的定义,带我们对软件架构师这个角色所经历的历史进行了回顾,并描绘了使架构师变得至关重要的驱动力。他从当架构师还是可有可无的那段时期开始讲起:

在不久以前,开发平台还是更加倾向于自我封闭,自给自足的。从健壮而复杂的环境——比如主流的 COBOL,到轻量级且易于理解的 xBase 语言,最为重要的技术决定早就已经有人帮你做好。对于软件项目而言,这是利益和障碍共存的。其中一项好处就是,当人们在某一点存在有共识的时候,就无需浪费时间来争论作这件事情的最佳方式是什么了。

文章的作者 Dagum 接着又对我们当前所使用的基本栈式架构的多样性进行了简单说明,以及这种灵活性最终所带来的代价:我们必须要有效的管理系统的复杂性。

由于面向组件的软件开发方式的出现,我们可以根据特定的问题来选择最佳的平台。但尽管这样,对很多程序员来说,切换到新的平台上进行开发也是件很头疼的事情。所以一个好的架构师的首要目标就是把新的平台和 API 的复杂性隐藏到更为简洁的结构之后,让它们更加注重于待解决问题(特别是一个业务问题)的领域,当然最重要的就是让普通的程序员容易理解掌握。 软件架构就是这样变成了以安全、及时、精确的方式开发商业解决方案的一条坦途。这条路完全是由技术决策铺成的,这些决策是至关紧要的。架构师必须要做出种种决策,来方便开发人员的工作。

和过去相比,我们现在不再是从厂商那里购买通用型的软件,而是根据要开发的商业解决方案来做出决策。

Dagum 解释说这给架构师的职责和定义带来了一场突如其来的变革,从以应用程序为中心,转到了更加侧重于企业化乃至以基础设施为关键着眼点的职责上,他还详述了进来新词满天飞的架构变革的趋势——SOA——背后的主要驱动力。他在讲述早期软件架构师的定义的时候,列举了以下四个最佳实践:

  • 设计模式(Design Patterns),从“四人帮”的那本设计模式书发起
  • 架构模式(Architecture Patterns),Dagun 以 Smalltalk 中使用的 MVC 模式来加以举例说明
  • 反模式(Anti-Patterns),它的名字就准确说明了它的含义
  • 框架,他以 ORM 映射工具和 MVC 支持框架来举例说明

随后,他又解释了随着架构师一职被人们正式认同,相应的角色和责任是如何被转变到一个更高的抽象层次上的,它们又是如何围绕下面三个范畴巩固起来的:

  • 基础架构师(Infrastructure Architect),主要以硬件 / 网络 / 操作系统这种平台的微架构为中心
  • 解决方案架构师(Solution Architect),他的职责要跨越软件 / 数据库 / 硬件的界限,来为特定的解决方案定义一个一栈式的架构
  • 企业架构师(Enterprise Architect),他更像是一个管理型的角色,他的责任和范围是覆盖整个组织的

最后,Dagum 以对未来的展望结束了全文。他还特别提到了 SOA,MDA,软件工厂,软件即服务(Software as a Service)和 Web 2.0。随着时间的推移,人们心目中对架构师定义也有了不同的理解,Dagum 在文中对这种变化及其背后的驱动力做了归纳。

查看英文原文: What is an Architect anyway?

2007-08-21 03:001474
用户头像

发布了 197 篇内容, 共 63.5 次阅读, 收获喜欢 21 次。

关注

评论

发布
暂无评论
发现更多内容

区块链技术驱动商业银行开展供应链金融业务的创新路径

CECBC

用OpenCV制作庆祝武汉重启一周年短视频

老猿Python

Python OpenCV 音视频 图形图像处理 引航计划

DEX领域第一个运用整合思维的DeFi协议 SumSwwap潜力巨大

币圈资讯

别当工具人了,手摸手教会你 Jenkins ! 码农很低调

比伯

Java 程序员 架构 计算机 技术宅

「开源免费」基于Vue和Quasar的前端SPA项目crudapi后台管理系统实战之动态表单设计器(五)

crudapi

Vue crud 动态表单 quasar cruapi

OpenHarmony 1.1.0 LTS 版本正式发布

开放原子开源基金会

开源 开放原子开源基金会 OpenHarmony

211本科面试阿里挂了:分布式+限流+通讯+数据库被问懵了!

码农之家

Java 编程 程序员 面试 刷题笔记

和老大的相爱相杀中,让我终于搞懂了函数式接口

麦洛

Java 函数式接口 Lambda java8

你看起来很美味?独家揭露视频推荐系统AI秘方

白洞计划

数万人跪求!阿里P8大牛手写的《Java程序性能优化实战笔记》,GitHub标星已高达十万!

Java架构之路

Java 程序员 架构 面试 编程语言

《几何代数计算入门(计算机视觉)》

计算机与AI

计算机视觉 计算机图形学

如何从Telegram下载一整套可爱的猫猫表情包?

彭宏豪95

GitHub 效率 社交 4月日更

Linux mkdir 命令

一个大红包

4月日更

一篇文章告诉你什么是EGG Network(阿凡提)以及什么是EFTalk

币圈那点事

NA(Nirvana)Chain“以应用而生”如何强势突围

区块链第一资讯

Java高手是怎样炼成的?阿里P8技术大牛这份手写笔记告诉你答案!

Java架构之路

Java 程序员 架构 面试 编程语言

Dubbo 学习笔记(一) Hello,Dubbo

U2647

dubbo 4月日更

读《非暴力沟通》

箭上有毒

读书笔记 4月日更

某招聘平台流出一套超级全面的《Java面试题总结》被疯狂转发近百万次,已助我拿下5个大厂offer。

Java架构之路

Java 程序员 架构 面试 编程语言

火爆火爆!最新分享给大家:Boss直聘转发超80W次的一套超全面试题总结

比伯

Java 架构 面试 程序人生 计算机

MapReduce优化

大数据技术指南

hadoop 4月日更

redis Redis缓存穿透解决方案

Sakura

4月日更

Boss直聘转发超120W次Java全栈面试题!已帮我拿下5个Offer!

Java架构追梦

Java 面试 架构师 阿里巴巴面经总结

In-depth Java synchronized

0xABC

Java并发 并发编程 Monitor

framework源码,Android学习路线指南,已整理成文档

欢喜学安卓

android 程序员 面试 移动开发

我是收藏一把好手

yes

学习

刚刚!字节跳动发布了 1179 个 Java 岗,平均薪资40K

钟奕礼

Java 编程 程序员 架构 面试

深圳龙华携手腾讯云 加快推进区块链先行试验区建设

CECBC

【资深猎头分享】程序员面试如何避坑?

Java架构师迁哥

flutter开发环境搭建,京东面试真题解析,分享PDF高清版

欢喜学安卓

android 程序员 面试 移动开发

HBase三个重要机制

五分钟学大数据

HBase 4月日更

如何才能称得上是一名架构师?_架构_Mark Figley_InfoQ精选文章