软件的艺术之美源于权衡(Trade-off)

简介: 软件架构师的主要职责是什么?是抉择、是权衡。把软件称为艺术一点都没有夸张,可以说软件是科学、工程、与艺术的结合体。软件的艺术体现在权衡上。在这一期的《程序员》杂志上看到了一篇“鱼与熊掌--完美主义架构师的梦魇”,其中关于权衡要素的论述正切合我之所想,现将主要部分转摘如下,如果想了解更详细内容,请在本期程序员阅读全文。

    软件架构师的主要职责是什么?是抉择、是权衡。把软件称为艺术一点都没有夸张,可以说软件是科学、工程、与艺术的结合体。软件的艺术体现在权衡上。在这一期的《程序员》杂志上看到了一篇“鱼与熊掌--完美主义架构师的梦魇”,其中关于权衡要素的论述正切合我之所想,现将主要部分转摘如下,如果想了解更详细内容,请在本期程序员阅读全文。

(1)Time or Space  时间 vs. 空间
   牺牲内存换取时间或牺牲时间以节省内存是我们常用的伎俩。  

(2)Elegancy or Efficiency  优雅 vs. 效率
   比如,多态很优雅,却是以效率为代价,而丑陋的函数指针却正好相反。

(3)Fashion or Familiarity  不熟悉的新技术 vs. 熟练的旧技术
   是采用最新、能提高开发效率却我们不熟悉的新技术,还是继续使用我们很熟练的但是开发效率低下的陈旧技术了?

(4)Revolution or Evolution  革命 vs. 继承
   对于遗留系统,我们是推翻重来,还是在其基础上进行改良重构并增强了?

(5)Under-Design or Over-Design  轻度设计 vs. 过度设计
   设计,需要细化到何种程度、需要多长时间?

    架构设计的限制始终围绕了软件质量的11要素:正确性、可靠性、有效性、完整性、可用性、可维护性、灵活性、可测试性、可移植性、可重用性、可互操作性。

 

目录
相关文章
|
8月前
|
机器学习/深度学习 人工智能 自然语言处理
相比优秀的服装设计师,AIGC 可以如何突破设计灵感的界限?是纯粹的机械语言还是一点点的灵光乍现?
这些日子学的那些 AIGC生图本领,这回用上啦!阿里云携手国民服装品牌森马推出 AIGC T 恤设计大赛,无论您是开发者、设计师、还是AI绘画爱好者,都可以使用阿里云函数计算快速部署 Stable Diffusion,以“宇宙漫游”为主题,进行AI 创作并投递作品即可参赛。所有作品均有机会被森马选中并购买版权成为下一季服装图案主题。
相比优秀的服装设计师,AIGC 可以如何突破设计灵感的界限?是纯粹的机械语言还是一点点的灵光乍现?
|
机器学习/深度学习 数据采集 人工智能
国内“谁”能实现chatgpt,短期穷出的类ChatGPT简评(算法侧角度为主),以及对MOSS、ChatYuan给出简评,一文带你深入了解宏观技术路线。
国内“谁”能实现chatgpt,短期穷出的类ChatGPT简评(算法侧角度为主),以及对MOSS、ChatYuan给出简评,一文带你深入了解宏观技术路线。
国内“谁”能实现chatgpt,短期穷出的类ChatGPT简评(算法侧角度为主),以及对MOSS、ChatYuan给出简评,一文带你深入了解宏观技术路线。
|
机器学习/深度学习 存储 人工智能
三问 Christopher Manning:超越模型存在的语言之美
「深度学习的波浪在计算语言学的海岸线上往复经年,而今已如海啸一般向所有的自然语言处理(NLP)会议发起冲击」。两年前,在北京,Christopher Manning 如是展开了 ACL 2015 的结语。
178 0
三问 Christopher Manning:超越模型存在的语言之美
|
存储 SQL 算法
形式化验证工具TLA+:程序员视角的入门之道
女娲是飞天分布式系统中提供分布式协同的基础服务,支撑着阿里云的计算、网络、存储等几乎所有云产品。在女娲分布式协同服务中,一致性引擎是核心基础模块,支持了Paxos,Raft,EPaxos等多种一致性协议,根据业务需求支撑不同业务状态机。如何保证一致性库的正确性是一个很大挑战,我们引入了TLA+、Jepsen等工具保证一致性库的正确性。本文即从程序员视角介绍形式化验证工具TLA+。
形式化验证工具TLA+:程序员视角的入门之道
《设计原本—计算机科学巨匠Frederick P. Brooks的反思》一一1.4 对设计过程的思考
本节书摘来自华章出版社《设计原本—计算机科学巨匠Frederick P. Brooks的反思》一 书中的第1章,第1. 4节,作者:(美) Frederick P. Brooks, Jr. 著 ,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1235 0
《设计原本—计算机科学巨匠Frederick P. Brooks的反思》一一2.1 模型概览
本节书摘来自华章出版社《设计原本—计算机科学巨匠Frederick P. Brooks的反思》一 书中的第2章,第2. 1节,作者:(美) Frederick P. Brooks, Jr. 著 ,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1256 0
《认知设计:提升学习体验的艺术》——环境差距
本节书摘来自华章社区《认知设计:提升学习体验的艺术》一书中的环境差距,作者:(美)Julie Dirksen,更多章节内容可以访问云栖社区“华章社区”公众号查看
809 0