当前位置: 网学 > 编程文档 > 其他类别 > 正文

我对架构师的理解:如何成为一个合格的架构师

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 13/01/12
可以试着联想“炒菜”的过程去思考上面的这张表,如果您真的理解了,我相信您会觉得他们之间没有什么区别(不过坦白来讲真的理解并没有那么容易),好吧,你可能又发出疑问?如果去做“填空题”?在MFC里是通过处理消息来实现。那么为什么没有采用虚函数及多态来实现?这个问题问的很好,不过我没打算在这里进行说明,你可以在侯杰的《深入浅出MFC》里找到答案。(我不是有意来推这本书,实在没看到其他更好的)。可能你从来没接触过MFC,那就不要去思考了,下面举另外一个例子。

asp.net:

asp.net的webForm以其容易上手而著称,如果你深入的理解了其页面生命周期后,你会发现这好像又是在“炒菜”,而我们要做的只是在不同的“炒菜步骤”内去定制我们的一些小创意,可能在Page_PreInit里、在Page_Init里、在Page_Load里或其它事件里,无论如何,您逃不过如来佛的手掌心,你要做的工作,就是在这些事件里去定制,换句话说,你搞不出来“宫保鸡丁”,想搞个“宫保鸡丁”该怎么办?asp.net MVC 粉墨登场……自己可以分析下,这里就偷懒省略了。

从炒菜到实例分析,现在我们基本上对软件架构有了一个大概的认识:

认识1:框架架构是有边界的,不光如此,你必须有全局的概念才能去设计框架。所谓边界是针对不同的业务,比如MFC是针对传统的桌面程序,当遇到WEB时,似乎就不怎么灵光了,不然微软不会花费那么多功夫去推.NET。

认识2:框架的实现是组件的相互关联(通过接口,事件等),如果你手里有些基本的类库,不要告诉我是框架。

认识3:设计框架不是为了好玩(其实它本身并不好玩),因为你要为“两个人”负责:业务和使用框架的人。建立在你框架上的应用必须能解决你实际的业务问题,同时要考虑怎么样让开发人员能“懒惰”下来,比如就是做做填空题。

认识4:设计框架要有一个好的框架思想,和具体语言无关,但你必须明白,不同的语言,甚至相同的语言去实现的方式又不相同,比如MFC采用了宏来实现消息机制(当然,MFC采用虚函数也能实现),而asp.net内采用虚函数等来实现多态。

认识5:你要时刻明白,接下来可能炒的菜就是“宫保鸡丁”,也就是说你要知道自己在干什么,要熟悉自己的“业务”,比如当你设计MFC框架时,你要考虑一个传统的桌面程序要解决的大部分问题会是什么?比如打印,比如进程通信,比如文件操作,比如音视频,数据库操作,ole,等等。同样的,当你来设计 ASP.NET时,因为这道菜是针对HTTP的,这个时候你如果连HTTP是什么都不知道,我想你炒不好这道菜。

OK,我想这篇文章该结束了,因为我们的“菜已炒好”,如果你认真仔细的看到这里,估计已经浪费了你近五分钟的时间,希望能给你带来点思考,比如:架构师就是来“炒菜”,可能吧,也可能我的观点并不完全正确。不过我欢迎聆听每个朋友对架构的理解。谢谢。

原文链接:http://blog.csdn.net/daoxuebao_com/article/details/7663225

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号