一段对话,关于架构师和设计者的。
起因是javaeye的这个帖子:
看看国外CTO是如何设计Java软件的
我回复maqujun说:
呵呵,国外不止是CTO这样做。
我国外的一些朋友在大学的时候计算机相关的作业就是这样的,这种做法一般不叫design by interface。老外一般叫做design by contract,因为contract有的时候是interface,有的时候是UML,有的时候是描述非常详细的类设计文档,但是结果是一样的,要求的外观和接口,内部怎么实现是你的事情。
maqujun又回复说:
其实CTO不做这种事啦,我的文章写的有点偏题了。interface design是我的工作。我在文中是对我自己工作的总结经验,希望和更多人分享。你所说的国外大学的计算机相关的作业的内容,我很认同。这才是大学中应该学的东西。可惜我们中国的大学根本就没有这方面的涉及。有些差距在一开始的地方就形成了。不过好在我们自己可以弥补它。
哈哈,很高兴收到你的回复。交个朋友吧。我加你为好友! :D
我又回复:
哈哈,是呀。我还真没见过公司里面专门有人做interface design的,这样不错,api会变漂亮。
老外的计算机教育让我觉得在国内上大学基本上就是浪费时间。
maqujun回复:
哈哈,“国内上大学基本上就是浪费时间”有同感!
不过我可不是专门做interface design的哦。我不是架构工程师,我是软件开发工程师,本质还是做开发的。design部分只是一个新项目的开始前的工作而已。
我的感想:
架构师这个概念比较虚。在国内,架构师其实就是有强烈基础倾向的开发者,他们有很大的热情来实验一个自己熟悉或者感兴趣的东西,从概念上这不是架构师。
我很关注国外的一些架构师描述如何成为架构师。架构师其实最重要的是见识!要无倾向性的研究技术和需求。我很喜欢的印度的一位精神导师克里希姆纳提说过自由的前提是要学会聆听,而聆听就是在听的时候心理不要有任何反抗或者评论的去听,所有的思考都要留在听到以后。电影《教父》里面有一句台词我非常喜欢,不要仇恨你的敌人,因为那会影响你的判断力。我想这都是一个意思。如果想要成为架构师就要多聆听,然后思考,又清楚的判断力,这样选择才会是正确的!