母语式开发

  今天看到我以前写的关于Ruby与Java之争的博文。现在有了续集,现在加上。

  程序员中对语言之争,那可以历史悠久了。我们现在先看看目前产业中流行的开发语言的主要用在那里。我这里说的是主流情况。由上自下吧。

 

 web 前端应用Javascript, html, vbscript,css,asp.net,php,jsp等。

 web后端应用C#, php,asp.net, java, python,perl, ruby(好像很少)。

 桌面应用,C#,VB, C, C++,Java,python(少,多是国外开发的游戏工具之类),delphi(一些历史性系统中)。

 数据库, C, C++。C为主。

 操作系统, asm, C, pascal(老系统中用),Object C。

 各类嵌入应用,各种汇编语言,C。C++基本不用,或载剪的C++,仅用一些有用的功能,具体情况我也不清楚,因为我没用过。

 

 争论开发语言,有时真得没有意义。从上面这个粗陋的划分来看,人家已经将道划好了。你能用python写操作系统吗?你用C开发一个web应用能比python效率高吗?首先,是要定位自己要做什么,再去选适合你的开发语言,当然要考虑经济效益。毕竟中国程序员的现状不好和国外比。

 

  从另一角度看就是一种职业定位,做web应用,学C++也没什么大用处,浪费精力。做嵌入,你学html,工作中用得了多少?了解一下当然是可以的。有些语言是比较通用的,如C++, Java, C。但是如果你以职业为导向,还是识时务点好。有很多时候,我们无法按照我们的兴趣,喜好去选择,而被选择。是的,多数人想学c++,牛嘛,顺便可以鄙视一下别人。其实没必要。

 

  选择了职业方向再选择所需开发语言。用它作为你的开发母语。这好比我们比日所用的语言,相信大多数中国写文章,方案还是用中文最能够表达我们的思想。用起来也会最有效率。写英文简历,对很多来说还是噩梦,搞不好就成了中式英语。

 

 有些书的书名很好。Think in c++, Think in Java. 很多情况下就是工作中的需要。你可以学其他语言,扩大知识面,但是选一种开发母语是必须的。这一点C语言的应用是很明显。为什么nginx, lighttpd要用C写而不是C++?嵌入中用C,比较容易明白。高性能服务器也一样。C语言是目前行业中除汇编外,最能激发硬件性能的开发语言。效率,可移植性也是汇编所不能比的。

 

  但是C程序员,特别是与硬件打交道的,就是不能像python程序员那样开发。反之也是,python程序想更细腻对数据操作,那是比较痛苦的。就算做到了,也是要费牛劲。

 

  不同的开发语言,不同的应用背景;正如不如国家有语言,有不同的文化沉积一样。

你可能感兴趣的:(python,汇编,asp.net,VBScript,语言,pascal)