在博客园看到一则对编程语言分析的评论,觉得不错,拿来分享:
如果想职业编程,学习java,c++是很有必要,基本的编程思想,编程框架都在这两门中,其中开源的软件更是多如牛毛,两者混合使用更是如虎添翼,其实最主要的是这两门语言可以跨平台。
或者说在linux中java可以获得不错的性能快捷比,在linux中c++是高性能的代名词,在windows中c++可以获得不错的用户界面性能,在android中java可以快捷开发、在双核处理器下性能不错,在web中java可以牛刀杀小鸡,在事务系统中java干净利落配合oracle可实现商业化卖相,在游戏中c++是3d性能的唯一解决之道,在驱动中c++可以通用于windows和linux,在云计算应用中java独占鳌头,在云计算基础构件中c++大有用武之地,在可穿戴设计中c++用于系统基础件,在移动互联网中java借助开源android适用于多个移动平台,在企业内部java可以很好解决商业问题而不被微软追着要版权费,在面向网民市场中c++可以获得自定义的灵活性。
反观.net,语法糖让人迷恋,ide让人佩意,但受制于windows平台,很难构建适用于移动互联网,云计算化、高并发新新软件,市场只会进一步萎缩。当你在使用.net令人上瘾的快速开发时,其它公司也可轻易加入这个令人上瘾的快速开发中。
如果你需要功能多如牛毛的软件请用java,如果你需要构建成熟的商业解决方案请用java,如果你追求高性能用户体验请用c++,如果你需要精雕细琢的艺术品请用c++。
“李斯者,楚上蔡人也。年少时,为郡小吏,见吏舍厕中鼠食不洁,近人犬,数惊恐之。斯入仓,观仓中鼠,食积粟,居大庑之下,不见人犬之忧。于是李斯乃叹曰:‘人之贤不肖譬如鼠矣,在所处耳!’”
人受环境很大影响,但人可以有限地选择环境,这也是为什么要争论语言的原因。同样的努力,在不同的平台,可能令公司或个人扶摇直上九万里,也有可能墨守一城至老死。
语言之争的确没什么必要,各取所优,因地制宜即可。感叹一下,中国古文还是蛮有意思的。