不要做客户端软件开发
2009-10-17 15:13
[c++]
几乎在所有的互联网公司里,客户端部门,如果有,都不会受到重视。因为有QQ,一家独大,好像其他客户端都没有太多意义了。
可怜的我一直都在做客户端,深刻的体会到了意义的重要性。不管情形如何,也积累了不少经验和体会,得出的结论就是不要做客户端。
客户端开发相比于网站开发有其独特的特性。
特点
-
复杂,有连续的用户输入、持续的界面刷新、通讯、数据库、多线程等因素,维度多,C/S程序还有数据一致性问题
每多一维都会把事情搞得复杂很多。 -
强依赖操作系统,浏览器环境
这是无法避免的。现在Windows98 愈来愈少了,还坚持不使用 UNICODE 的程序最终会在国际化、多语言方面遇到障碍的。使用 UTF8 做程序内码也是不错的选择。
虽然我很不赞成使用 IE 插件,但是它的确能在很大情况下省却很多开发时间。但是带来的问题有可能你根本解决不了,你得更加依赖 MSDN 了,你得揣摩你用到的接口的文档里的每句话。因为文档少得可怜,特殊情况下你甚至得猜测着写代码,简直就是噩梦。如果有好的强壮的图文混排技术,应当彻底抛弃 IE。 -
由于产品定位,用户环境等问题,局限了语言
显然,使用其他语言 .Net, Python, VB会遇到发布安装问题,某些应用甚至有不可解决的性能问题。C++ 是唯一的选择。 -
更新
程序已经安装在某个遥远的机器里硬盘的某个角落了,出了问题该如何解决呢? WEB 更新一下页面,问题就没有了。客户端得有强大、鲁棒的更新机制,在出现问题时能解救你。更新通常需要很长的时间大部分用户才会完成更新。
比较
WEB,现在WEB做不到的事情很少了,除非在很有必要的情况下才需要使用客户端。并且得接受你的客户端很难做大的思想准备。手机的客户端,相对于WAP有点类似,也很尴尬。
C++ 是很复杂的语言,能力也很强,没有必要浪费在无法做大的客户端上。找寻更有价值的用武之地吧。