解读 《CodeEval 2014 最流行编程语言》

所有文章已移至新Blog

本文新链接http://cn.abnerchou.me/2014/02/23/fa87ae80/

首先了解下CodeEval是做什么的:

A tool for auto evaluating programming challenges in C/C++/Java/Python/ Ruby/PHP/Perl/ Scala/Clojure/C#/Tcl/ JavaScript/ Haskell/Go/ Bash/Lua and many more.

重点是这个Programming Challenges, 也就是说给定题目,让用户来解题,支持如上列出的多种语言,但不支持第三方库。

这个编程语言排行也是根据用户解题时所用语言而制作出来的。所以这个排行无法看作是计算机行业对编程语言的需求。

就个人体验而言,在其上解题的用户有以下几种特征:

  1. 学习编程;
  2. 熟悉一种新的程序语言;
  3. 应聘相应工作(CodeEval会定期举行解题赢取面试机会的活动)。

对于第一种用户,他们使用的语言可能比较基本和常见,不会使用网络端常见的Ruby,PHP,Perl等语言。

而第二种用户,是已经掌握了一至二种语言,需要练习第三种语言,纯为娱乐。往往会使用一些与主流程序语言,或者其工作中常用的程序语言所不同的。

第三种用户,为了获取面试机会,一定会选取高效快速的程序语言。

再者,由于解题多用到命令行文件输入,就笔者经验(C/C++/C#/Java/Python/JavaScript/PHP),Python的文件操作最简单快捷。对于字符串转浮点整形等也是相当轻松。有些题目甚至Python只需一个函数就解决了,比如将输入文本的字母大写转成小写,小写转成大写。

之所以Python为何能成为榜首,可以看出:一是由于其简单易学,二是由于其方便简洁的文本文档的操作方式,三是丰富的内置函数。

Code Eval对程序的硬性限制只有一条(除去编译错误),就是运行时间不得超过10秒。但就其简单和中级的题(占总题量70%左右)来看,要写出超过10秒运行的程序也难。

在挑战题目时,用户也不许要考虑内存,CPU运算速度,网络,硬盘操作等问题。(具体CodeEval的编译环境配置未知)

综上,Python远较其它语言更适合进行解题。但鄙人在日常使用Python时,深受其速度拖累,核心算法还是首选C++或Java。

总而言之,这个排行榜只是一种兴趣级别的语言排行,而非企业应用级的排行。对于没有计算机学科基础,但又对编程感兴趣的同学,可以先从Python学起;Python作为兴趣级别的使用已经足够了,只不过以后要转C/C++可能会很不适应。 _

英文报道:点我

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • TITLE: 编程语言乱炖 码农最大的烦恼——编程语言太多。不是我不学习,这世界变化快! 有时候还是蛮怀念十几、二...
    码园老农阅读 5,388评论 2 35
  • 本文把程序员所需掌握的关键知识总结为三大类19个关键概念,然后给出了掌握每个关键概念所需的入门书籍,必读书籍,以及...
    dle_oxio阅读 11,232评论 6 244
  • 一个程序员是否优秀跟他掌握语言的数量没有任何关系。而是跟他的接受能力、思维能力学习能力有关。优秀的程序猿,应该掌握...
    喵喵喵naoko阅读 12,941评论 10 21
  • 天空终于挣脱了阴霾的纠缠, 冲破层层裂隙, 露出绯红的笑意。 宁静的院子最了解它的希冀, 多起了清脆的鸟语, 散开...
    静静086阅读 207评论 0 1
  • [一个不能吃的福建二狗子和一个广东肉包子的故事] 被大学长戏称 肉包子打狗一去不回hhhhh 好了好了,终于有时间...
    肥胖的林肉肉阅读 347评论 0 0