zhuweisky

君子之行,静以修身,俭以养德。非淡泊无以明志,非宁静无以致远。

ESFramework,基于.NET的通信框架。DataRabbit,轻量的数据访问框架。Strive,游戏引擎。sky.zhuwei@163.com
posts - 196, comments - 1329, trackbacks - 101, articles - 1
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理
    软件架构师的主要职责是什么?是抉择、是权衡。把软件称为艺术一点都没有夸张,可以说软件是科学、工程、与艺术的结合体。软件的艺术体现在权衡上。在这一期的《程序员》杂志上看到了一篇“鱼与熊掌--完美主义架构师的梦魇”,其中关于权衡要素的论述正切合我之所想,现将主要部分转摘如下,如果想了解更详细内容,请在本期程序员阅读全文。

(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要素:正确性、可靠性、有效性、完整性、可用性、可维护性、灵活性、可测试性、可移植性、可重用性、可互操作性。

Feedback

#1楼    回复  引用    

2006-01-09 13:24 by 玉 开 [未注册用户]
楼主有没有具体文章的电子版,如果有可否贴出来呀

#2楼    回复  引用    

2006-01-20 13:37 by XML [未注册用户]
说的有道理,可惜体现不出太大的价值。不知道有没有更精彩的文章?

#3楼    回复  引用  查看    

2006-09-01 23:27 by 思无邪      
Fashion 说成不熟悉的新技术太不准确了




标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2006-05-15 12:42 编辑过
Google站内搜索

相关文章:

相关链接: