【51CTO独家特稿】***的编程语言排行榜已经公布,离2012年只有两个月了,从目前市场占有趋势来看,Objective-C已经脱颖而出成为***编程语言奖项的最有力竞争者,本月更是上升到排行榜第六位,TIOBE编程语言排行榜每年初都将统计评出上年度的***编程语言大奖,获奖的编程语言被认为在该年度市场份额增长及用户认可度方面获得了最为突出的成绩。另外C# , JavaScript也有所上升,2010年和2007年两次获得年度编程语言奖项的Python排名却有所下滑,不过仍然排行第8位。
下面是前20名的编程语言排行
本月51CTO为您介绍Google新结构化编程语言Dart。早在九月份Google就已着手注册了一系列与Dart相关的域名,当时也引发了沸沸扬扬的猜测。只到10月10日在丹麦举行的Goto会议上,谷歌Dart语言项目的领导人Lars Bak才正式宣布推出编程语言Dart。Lars Bak——这位来自谷歌的工程师曾经凭借其V8 JavaScript解释程序颠覆了火狐浏览器的速度神话。
什么是Dart?
Dart是一种基于类的可选类型化编程语言,设计用于创建Web应用程序。Dart的设计目标是为Web编程创造结构化但又富有灵活性的语言;编程方法一目了然,符合程序员的自然习惯,易于学习;能在所有浏览器 和不同环境中实现高性能。谷歌推出的全新Web开发语言Dart很可能与Smalltalk存在着种种相似之处。它将Web发展引向一条与此前截然不同的另类道路。参考51CTO外电:Dart之于JavaScript正如C#之于C++
Dart语言“Hello world”
- class HelloDartTest {
- static testMain() {
- print("Hello, world!");
- }
- }
- main() {
- HelloDartTest.testMain();
- }
Dart如何执行代码
dart主要有两种执行方式:
1.在浏览器中执行。
a)在 Dartboard 中,在线编辑、执行,尝试和演示目的。这是目前最简单的方法。
b)使用转换工具将dart转换为javascript后在浏览器执行。
c)使用script标签在浏览器中直接执行, 。当然浏览器要支持才行,目前还没有,估计只有Chrome将会支持。
2.虚拟机直接执行。dart源文件的后缀一般是 .dart ,就像其它语言一样: dart_bin yourcode.dart 。
默认执行不启用类型检查,可以使用 --enable_type_checks 选项启用类型检查。
目前官方还没提供个平台的二进制构建版本,需要自行获取代码构建。
或者网上下载别人构建好的版本,具体见这里 ,Linux、Win、Mac都有(没试过不保证没问题)。
Dart设计目标
Dart编程语言当前处于早期阶段。这些设计目标将会持续地演进和精炼:
◆ 创建一种结构化但灵活的web编程语言
◆ 使用程序员感到熟悉并自然,易于学习
◆ 确保所有的Dart语言构造允许高性能和快速启动应用
◆ 使Dart适用于全部范围的web设备,包括手机、平板、笔记本和服务器
◆ 提供工具使Dart能够在所有现代浏览器上快速运行
这些设计目标定位于当前Web开发者面对的如下问题:
◆ 小脚本经常演化为没有明显结构的大型web应用,他们难以调试和维护。另外,这些整体的应用不能被切分所以不同小组不能独立的工作。当web应用变大之后很难有生产力。
◆ 脚本语言的流行是因为他们轻量型的本质使其快速写代码很容易。通常应用与其它部分的契约是写在注释中的而不是在语言自身的构造中。结果,作者以外的人难以阅读和维护一段特定的代码。
◆ 使用现存的语言,开发者被迫在静态语言和动态语言中做出选择。传统的静态语言要求重量型的工具链并且感觉死板和过度约束的代码风格。
◆ 开发者没有创建出一种同时适用客户端和服务端的均衡系统,除了少数情况如Node.js和GWT。
◆ 不同的语言和格式需要上下文切换,很麻烦并增加了编码的复杂性。
意欲取代Javascript
谁能相信, Javascript的设计,其实只用了十天。而且,设计师Brendan Eich是为了向公司交差,本人并不愿意这样设计.详情请参考JavaScript诞生记。Javascript同时结合了函数式编程和面向对象编程的特点,这很可能是历史上的***例。而且直到今天为止,Javascript仍然是世界上唯一使用Prototype继承模型的主要语言。这使得它没有设计先例可以参考。最糟糕的是Javascript过早的标准化,1996年8月,微软公司强势介入,宣布推出自己的脚本语言Jscript;11月,为了压制微软,网景公司决定申请Javascript的国际标准;1997年6月,***个国际标准ECMA-262正式颁布。太多的巧合促成了JavaScript与生俱来的10个设计缺陷。
在谷歌正式推出Dart后,众家评说谷歌新编程语言Dart,纷纷猜测倘若Google的Dart技术上优于JavaScript,这个孤单的事实能够促使它成功的取代JavaScript吗?
Dart如果真的像是解释性Smalltalk语言的话,它几乎将直接与JavaScript和Python竞争。如果将“Go”语言作为衡量标准,Dart其实更像是一个新奇小玩意,而不是什么开拓性的工具。它可能只是为了解决“以谷歌为中心”的问题,而不是旨在成为一种流行的编程语言。目前,人们还不清楚它的定位,还是让我们拭目以待吧。
#p#
下面是本期编程语言排行榜的其他排名数据和趋势走向。
前10名编程语言走势图
20到50名语言排行
下面是第50到100的编程语言排名
(Visual) FoxPro, ABC, Algol, Bash, bc, BETA, BlitzMax, Boo, Bourne shell, CFML, cg, CL (OS/400), Clean, cT, Dart, Dylan, Eiffel, Factor, Free Pascal, Groovy, Icon, IDL, Io, J, JavaFX Script, JScript.NET, Korn shell, LabVIEW, Lingo, LPC, MAD, MUMPS, NATURAL, Oberon, Occam, OpenCL, OpenEdge ABL, Oz, PostScript, PowerShell, REXX, S, Scala, SPSS, Standard ML, SuperCollider, VBScript, X10, xBase, Z shell
下面给出了编程语言类别的一年变化趋势
【2011年榜单回顾】