去年最受欢迎的语言和往年一样,没有变化,仍然是:Java、C、C++、PHP、Basic。前几名的语言要在短短的一两年有变动,是不太可能的。这五个语言哪个不是占据Top 5的位置五或十年以上?估计2009年仍然是这样的局面,由这几个语言独占鳌头。
但C#已经在快步进逼BASIC,可能再过两年就可以进入前五名。C#上升,BASIC下降,某种程度上反映出微软的VB程序员正转换到C#语言。C#正在逐渐累积和Java抗衡的能量。
在2009年,最值得重视的编程语言好消息,应该就是C++了。C++ 0x的x最终被设定为9,将于2009年推出这个标准。经过十年的经验累积,许多C++既有的缺点都将在这个标准中获得改善,值得我们期待。
得益于Google的强力背书下,Python这几年小有斩获,现在已经变成通用型脚本语言的第一选择,Python兴起,导致Perl风华难再,两者消长的态势相当明显。而且在2008年末,大家期待已久的Python 3.0也终于推出了。
现今,我们生活在Web的时代,Web后端或许百家争鸣(Java、PHP、.NET、……),但Web前端还是JavaScript一枝独秀。尽管JavaScript语言存在许多为人所诟病的地方,但JavaScript的重要性仍会持续上升。

商业编程语言的王者之争
2009年2月Tiobe编程语言排行榜发布,前十位的排名没有太大变化,C语言在取得了08年年度编程语言后增势迅猛,相比去年同期增长了0.98%。本期前20名的榜单中,两种同样以商业数据处理擅长的编程语言COBOL和RPG的排名变化值得我们关注。COBOL本期跌出前20名,本期排在22位(上期排名17);RPG语言进入前20名,排在第19位(上期排名21)。
本文面向的读者:学习过C++程序设计语言(也就是说学习过Template),但是还没有接触过STL的STL的初学者。这实际上是我学习STL的一篇笔记,老鸟就不用看了。
什么是泛型程序设计
我们可以简单的理解为:使用模板的程序设计就是泛型程序设计。就像我们我们可以简单的理解面向对象程序设计就是使用虚函数的程序设计一样。
STL是什么
作为一个C++程序设计者,STL是一种不可忽视的技术。Sandard Template Library (STL):
标准模板库,更准确的说是 C++ 程序设计语言标准模板库。学习过MFC的人知道,MFC是微软公司创建的 C++ 类库。而与之类似的是 STL 是模板库,只不过 STL 是 ANSI/ISO 标准的一部分,而 MFC 只不过是微软的一个产品而已。也就是说STL是所有C++编译器和所有操作系统平台都支持的一种库,说它是一种库是因为,虽然STL是一种标准,也就是说对所有的编译器来说,提供给C++程序设计者的接口都是一样的。也就是说同一段STL代码在不同编译器和操作系统平台上运行的结果都是相同的,但是底层实现可以是不同的。 令人兴奋的是,STL的使用者并不需要了解它的底层实现。 试想一下,如果我们有一把能打开所有锁的钥匙,那将是多么令人疯狂啊。嘎嘎。这个歪梦我做了20多年鸟。
STL的目的是标准化组件,这样你就不用重新开发它们了。你可以仅仅使用这些现成的组件。STL现在是C++的一部分,因此不用额外安装什么。它被内建在你的编译器之内。 Read more…
