软件架构师的定义乃至所需要的特质历来众说纷纭。下面从一些另类的角度来做点分析。

从产生根源来看,程序规模越大,参与人员越多,越需要架构师;

程序越小,参与人员越精英化,架构师存在价值越小。

这不难理解,大军团作战,总不好一窝蜂就上去了,总要有些规则,总要有人把我全局。

架构师就是在比较高的层面上把握全局的这个人。

从这个角度来看,对架构师而言选择最重要,因为站的高,所以选择具有非常大的价值。

注意不是UML,也不是对业务的理解,不是编码能力而是做出正确选择的能力。

当下的开发环境下,考虑解决方案时,所面临的选择不是太少,而是太多。

举个最简单的例子,我们要开发一个基于Web的项目管理程序,那么你面临的选择是:

  • 自己从头造,还是用现成的做二次开发?
  • 用现成的,是用开源产品还是微软的?
  • 用微软的话,是用MS Project还是基于SharePoint?
  • 用开源产品,有这么多选项究竟导入那一个?
  • 如果自己从头造,那么是基于微软的技术,还是基于Linux?
  • 使用什么框架么?
  • 如果要做,用什么语言?

每一个这类选择的背后都是赤裸裸的利益---在商业环境下永远不要忘了这个。

做选择其实可以很容易,所以是个人就可以干这活,并不具备很高的门槛。

关键差异是有无根据和正确程度。

如果说程序员的生产效能可以差10倍的话,架构师的价值可以差无数倍。

想选择正确,最关键的前提是理解待选择的选项和外部的切实要求。

前一点很难,这往往要求一个人涉猎广泛,在很多的领域中具有经验。

不只要知道LAMP,还要知道asp,不只要知道软件还是知道些硬件,不只要了解Java,可能还要了解C#。

理解程度倒未必一定要很精通,关键是要抓住差异以及其适用场景。

但这恰恰与这个时代的特征相反,在这个时代里,技术日趋繁杂,专家越来越多,通才越来越少,诸神陨落啊。

走极端的人可能会说,那么多人,没懂什么,去做网站也成功了。

这也可能,运气很好的话,什么也不懂,一样可以做很对的选择。

但能力这种事,本来最主要的就是尽可能去除运气成分。

从编码的角度看,架构师不懂编码是不行,但却不需要是最精通编码的人。

一者谋的一隅,一者谋的是全局,因此也就导致对技能的要求不同。

------------------------------------------------------------------------------------------------------------------------------------

理想流 + 软件 = 《完美软件开发:方法与逻辑》
理想流 + 人生 = ??
理想流 + 管理 = ??
理想流 = 以概念和逻辑推演本质,追求真理。

对架构师而言,什么最重要?相关推荐

  1. 一位资深Java架构师的晋级心得

    架构师是什么? 是一个既需要掌控整体又需要洞悉局部瓶颈并依据具体的业务场景给出解决方案的团队领导型人物.一个架构师得需要足够的想像力,能把各种目标需求进行不同维度的扩展,为目标客户提供更为全面的需求清 ...

  2. 阿里P7架构师告诉你Java架构师必须知道的 6 大设计原则

    在软件开发中,前人对软件系统的设计和开发总结了一些原则和模式, 不管用什么语言做开发,都将对我们系统设计和开发提供指导意义.本文主要将总结这些常见的原则,和具体阐述意义. 开发原则 面向对象的基本原则 ...

  3. 分享我如何在7年时间里成长为阿里Java架构师(附学习路线图)

    2019独角兽企业重金招聘Python工程师标准>>> 如何更高效的学习? 1.架构师应不应该写代码 总的来说,架构师和程序员在某些方面上有点像产品经理和用户的关系,大部分程序员并不 ...

  4. 《App架构师实践指南》:移动开发的进阶指南

    文章主要内容: 什么是 app 架构师 这本书主要内容 读完感受 什么是 App 架构师 成为"架构师"是许多程序员的梦想,当然也包括我,在工作的几年里,我见过很多架构师,他们在设 ...

  5. Win95架构师发布移动设备富媒体文档创建平台

    尽管PowerPoint在会议时很有表现力,但如果你只在网站上(或邮件中)放几张照片几句话就打发人的话,这样的展示是很难把产品给卖出去的.Satoshi Nakajima于今日发布了一个名叫Swipe ...

  6. Web架构师必备能力

    最近和几个朋友在谈到时下流行的Web 2.0,也提到了其中最重要的角色--架构师.多方各有争执,不外乎是因为背景和视角的缘故,包括架构一词,本身就从建筑学借鉴而来,至于架构师,则可以简单地从建筑学的设 ...

  7. 讲座记录:从码农到架构师(精简版)

    1.框架学习 不要过于在乎细节 学封装思想 不追新 否则太累 每个框架的设计理念不同 spring 比structs 优秀在哪? 关注增量而非全量 2.如何快速学习一门新技术 "新框架的产生 ...

  8. java培训分享:java培训架构师学习线路图

    本期java教程分享主要是讲解关于java培训架构师方面的内容,主要针对java架构师的学习线路图进行一个知识点的概括,下面来看看学习java架构师都需要了解哪些内容吧. java培训分享:java培 ...

  9. 阿里P7架构师的成长之路

    前言 系统架构师是近几年来在国内外迅速成长并发展良好的一个职位,它的重要性及给互联网行业所带来的影响是不言而喻的.很多程序员把成为一名优秀的架构师作为自己职业生涯奋斗的目标,但很多人努力却用不对地方, ...

  10. 架构师的第一阶段:准备做(Pre-Architecture)

    上节说到,做任何事情都可以分为三个阶段:准备做.做.做好.本文,就将进入第一个阶段,准备做阶段. Pre-Architecture:准备架构 准备架构阶段,最最重要的是弄清楚要做什么东西,即掌握用户需 ...

最新文章

  1. c语言标准库低通的qsort函数不适宜所有排序任务的原因
  2. Java通过JDBC连接MySQL数据库
  3. c#连接oracle11,C#连接Oracle 11g 无需安装Oracle客户端
  4. Convert函数应用格式化日期
  5. 优化你的DiscuzNT3.0,让它跑起来(4)asp.net 缓存和死锁
  6. oracle exec编译失效,编译oracle失效的函数、存储过程、视图等
  7. C++:explicit关键字
  8. excel公式不自动计算_WPS表格仅显示公式不计算结果怎么办
  9. plantuml 方法图_plantuml画流程图
  10. 《Android进阶之光》--Dagger2
  11. 大前研一/聰明人必做的十件事
  12. latex添加代码注释_在代码中添加注释:好的,坏的和丑陋的。
  13. 如何在图片上添加边框和文字
  14. Excerpt-16 March, 2019
  15. python ssl module_Python升级后ssl模块不可用问题解决和浅析
  16. 为什么OceanBase不适合银行的三点思考
  17. “希希敬敬对”团队作业——敏捷冲刺7
  18. O2O为什么烧钱 国内有哪些平台是O2O模式?
  19. 解决:Java source1.5不支持diamond运算符
  20. 全国计算机二级flash,国家计算机二级考试WEB程序复习重点:制作Flash相册

热门文章

  1. 五猴分桃通解公式-敬献给诺贝尔奖获得者李政道博士
  2. will not be managed by Spring
  3. Rodney Brooks: 我们需要更理性看待人工智能技术
  4. 实验室设计SICOLAB第三方检测中心实验室设计
  5. 表单验证使用注解@Valid
  6. 三步实现沉浸式状态栏(即状态栏与APP同色)
  7. 【python向日葵】愿我们的生活像向日葵一样灿烂~~~
  8. Joshua Loth Liebman
  9. 关于dev的treelist的表头 获取集合 bands 或者 columns 来设置标题换行
  10. 7.3 Java(农夫果园【4】:一个农场,专门种植销售各类水果,在这个系统中需要描述下列水果葡萄、草莓、苹果)