从卖出第一个共享软件算起,做软件这行也有5年了。
前几天终于想认真学习javascript,html,xml/xsl,dom,asp.net之类东西了,告诉一个做.net桌面应用软件开发的朋友,说我要放弃垃圾的C/C++,准备开始学习JS学习网站开发,结果被鄙视一番。在他们眼中,好像做网站开发的没有技术含量,不算程序员。
最近做一个东西,感觉大部分功能都可以由web实现。IM部分可以由web实现,比如Google Talk也有Flash版的;聊天室部分当然也可以由web实现;音频视频会议可以由web实现(需插件);RSS订阅、读写Blog、上传文件等功能都可以由web实现,没必要用桌面软件了。一时不知道到底桌面应用软件的前景在哪里,特别是Google的强势,google maps,google talk,google mail,google orkut等等的成功以及显示出来的桌面软件特性,可能软件行业真正要进入web时代了。
桌面应用软件的优势在于响应速度快、无须连线、方便使用硬件资源等,但是有着明显的缺点,那就是更新维护麻烦、UI设计比Web页面麻烦(大量的图形图层以及声音动画界面)、对平台的强烈依赖性等。做一个网站,只要遵循W3C规范,即可在Windows、Linux、MacOs以及移动平台等诸多操作系统上使用,而开发一个桌面应用,很难移植到很多平台。应用软件的UI设计较Web页面设计困难,现在是一个个性的时代,强调用户体验的重要性,个性化服务需要用户方便定制各种功能、显示形式等,Web页面在这方面优势很明显。Web服务在更新维护方面更是远强于桌面应用,如果要增加新的功能,或者修复当前服务存在bug,只需要更新Web服务器软件即可,用户立刻就可以享受到更新后的服务。
数据是下一个"Intel Inside",忘记这是谁说的了,从Google等网络公司的迅速发展可以看出。越来越多的服务都是基于网络和数据的,比如新闻资讯、搜索、地图服务、通讯服务、B2B/C2C等等,这些理所当然使用Web方式。还有一些例如OA、ERP、CRM等,也很容易转变为Web服务。只有一些工具类软件,例如开发工具IDE、绘图软件Photoshop等,只需要使用电脑本身内存CPU等资源,没有必要采用Web方式。不过这些东西在以后也肯定会向Web方向转变的,比如Cyworld已经将很多功能都Web化了。
将所有的数据存取、数据传输、数据计算都集中于服务器,给用户一个统一的界面呈现,一种无差别的用户体验。轻松的使用各类操作系统和平台来享受这些服务,而不管你是在用Windows PC,还是用Mac,不管你是web还是wap。这也许是以后的趋势,所以,让桌面应用软件见鬼去吧。