前不久,微软推出了Visual Studio.net中文正式版。对于Visual Studio.net的意义,人们的说法不一:有的人认为它只是现有技术的融合,而有的人则认为它为程序员开辟了一个崭新的、
令人激动的天空。
我第一次拿到Visual Studio.net,是去年夏天,那个时候的版本号还是beta2。仔细品味Visual Studio.net和微软的.NET战略,发现其中的技术大多都是已经出现过的东西,比如说中间代码、分布式程序中间件、XML等等。不过就如同大师掌勺一般,把这些平凡的主料与调料合理搭配,做出的大餐竟然令人垂涎三尺。当时最使我震撼的是它的简单,以及能够实现的强大功能。你可以不知道面向对象,不懂网络,也可以不了解XML,但只要你会用向导,照着手册点几下鼠标,填写几行公式形式的代码,就可以开发出一个标准的Web Service。假如放在互联网上就能够供任何一个地方的人使用。而调用别人这样开发出来的Web Service也是同样的简单,编程到了这一步真是有点像一门艺术了。
随着计算机硬件技术的飞速发展,人们对计算机软件也提出了越来越高的要求,不幸的是软件远不能跟上硬件发展的速度。为了实现越来越复杂的要求,新技术在我们的身边层出不穷。各种新名词使得程序员越来越不知所以然。本来一个小部门的治理软件可以由本部门的几个计算机维护者开发,但是由于其中涉及的技术过于复杂和新奇,不得不求助于专业软件公司,白白浪费了资金,还会带来很多意想不到的问题。
Visual Studio.net的推出改变了这一状况,Visual Studio.net里面包含了各种最新的技术,但是却以最简单的方式提供给最终用户。对于开发复杂的企业应用,你可以很轻易地得益于其中各种整合的最新技术,而不用担心其中会有兼容性以及冲突之类的问题。而对于中小企业的应用,Visual Studiio.net的优势就更明显了,由于它的简单,对程序员的要求大大降低。往往企业内部人员或者外包中小软件公司即可满足需求,而且维护又方便。假如自己可以满足自己的需求,还需要求助他人吗?
有人因此而哀叹,这是程序员的悲哀。真的这样吗?我倒觉得恰恰是程序员的幸运。纵观计算机发展历史从低级到高级的演化,就是人们不断地把复杂的技术封装成为简单的技术,然后再在此基础上开发出更加复杂技术的过程。假如没有把机器语言封装成汇编语言,把汇编语言封装成高级语言,又怎么会有今天这么多姿多彩的计算机世界呢?假如当年的先辈没有把逻辑电路开关结构抽象成为机器语言,也许今天广大程序员还挤在拥挤的布满电线的小屋里,忙于插插拔拔调试电路板呢。
我们可以想像,在今天的Visual Studio.net的基础上,将来一定会有更多更复杂的应用诞生。而他们的设计者,也许就像大多数程序员不了解硬件体系结构一样,对底层的实现方法也所知甚少,只是专注于自己软件本身美丽的逻辑。到了这一天,也许软件开发就变得似乎艺术创作一般,一个人坐在海滩上,身边是一台笔记本电脑和一杯咖啡,静静地写着喜欢的代码,再也不用考虑什么“底层协议”、“兼容性”、“操作系统”之类的东西了。
用简单的画笔可以任意画出漂亮的图画,也许这才是编程的最高境界吧。