解读 《2014 最流行编程语言》 by Code Eval
此文已转至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, 也就是说给定题目,让用户来解题,支持如上列出的多种语言,但不支持第三方库。
这个编程语言排行也是根据用户解题时所用语言而制作出来的。所以这个排行无法看作是计算机行业对编程语言的需求。
就个人体验而言,在其上解题的用户有以下几种特征:
- 学习编程;
- 熟悉一种新的程序语言;
- 应聘相应工作(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++可能会很不适应。 ^_^
解读 《2014 最流行编程语言》 by Code Eval的更多相关文章
- C 语言因为疫情重登最流行编程语言榜第一名!其实它一直都在~
C 语言时隔五年后再次荣登最流行编程语言榜单第一名. 通过调查得出结论, C 语言再次受欢迎的原因竟然是因为病毒,这听起来愚蠢但确实是事实,嵌入式语言 C 和 C++ 被用于医疗设备中的幅度因为疫 ...
- 优秀开源代码解读之JS与iOS Native Code互调的优雅实现方案
简介 本篇为大家介绍一个优秀的开源小项目:WebViewJavascriptBridge. 它优雅地实现了在使用UIWebView时JS与ios 的ObjC nativecode之间的互调,支持消息发 ...
- Hybrid----优秀开源代码解读之JS与iOS Native Code互调的优雅实现方案-备
本篇为大家介绍一个优秀的开源小项目:WebViewJavascriptBridge. 它优雅地实现了在使用UIWebView时JS与ios 的ObjC nativecode之间的互调,支持消息发送.接 ...
- 解读闭包,这次从ECMAScript词法环境,执行上下文说起
对于x年经验的前端仔来说,项目也做了好些个了,各个场景也接触过一些.但是假设真的要跟面试官敞开来撕原理,还是有点慌的.看到很多大神都在手撕各种框架原理还是有点羡慕他们的技术实力,羡慕不如行动,先踏踏实 ...
- 作为JavaScript开发人员,这些必备的VS Code插件你都用过吗?
本文翻译自:https://www.sitepoint.com/vs-code-extensions-javascript-developers/ 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的 ...
- Swift 编程语言自己实践 -自己在Xcode6 动手写20140603
Swift 是什么,大家都回去百度或者Google,有的甚至认为是Taylor Swift(她是我的偶像),但是如果今天在百度百科里搜索绝对没有说是Apple最新推出的编程语言,因为是在2014年6月 ...
- Swift编程语言简介
这篇文章简要介绍了苹果于WWDC 2014发布的编程语言Swift. ...
- 来自苹果的编程语言——Swift简介转载】
关于 这篇文章简要介绍了苹果于WWDC 2014发布的编程语言——Swift. 原文作者: Lucida Blog 新浪微博 豆瓣 转载前请保留出处链接,谢谢. 前言 在这里我认为有必要提一下Brec ...
- 转 苹果的新编程语言 Swift 简介
苹果官方文档地址 https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Pro ...
随机推荐
- 铁通、长宽网络支付时“签名失败”问题分析及解决方案 [88222001]验证签名异常:FAIL[20131101100002-142]
原文地址:http://bbs.tenpay.com/forum.php?mod=viewthread&tid=13723&highlight=%CC%FA%CD%A8 如果你的是铁通 ...
- 《Linear Algebra and Its Applications》-chaper2-矩阵的逆
矩阵的逆: 逆矩阵的定义: 类比于我们在研究实数的时候回去讨论一个数的倒数,对应的,在矩阵运算中,当AB = I的时候,A,B互称为逆矩阵,这里的I类似实数中的1,表示单位矩阵,即对角线是1其余位置是 ...
- 一个简单的JUnit项目
本人一直很喜欢JAVA,可是真正接触到JUnit也不过半年.由于公司进行网页测试,采用的是 JUnit+selenium的方式搭建的测试框架,然后采用JAVA语言编写,所以本人也好好研究了一下JUni ...
- Selenium webdriver 高级应用
对于这一段还蛮有感慨的,只想说,代码还是需要自己去敲的. 1. 改变用户代理 import org.junit.AfterClass; import org.junit.BeforeClass; im ...
- 16个不错的git别名
git 是一个非常棒的源代码管理工具,它的使用已经完全整合到开发的工作流当中:同时,git 还是一个 review/OTAP/deployment 工具. 当在 CLI 中使用 git 时,有时必须输 ...
- JQuery Mobile页面的载入方式
1.JQM页面结构 jQuery Mobile是通过data-role属性来区分渲染界面样式的,JQM里面提供的data-role如下表: 参数 说明 page 页面容器,其内部的mobile元素将会 ...
- 解决display: inline-block; 4px间隙的全兼容做法
就拿ul, li标签做例,关键代码如下: ul{ font-size: 0; letter-spacing: -4px; word-spacing: -4px; //解决4px间隙的全兼容做法 } l ...
- easyui 分页实现
1.用datagrid 做分页显示, 依据API样例,最终解决.废话不说,datagrid分页 有一个附加的分页控件 通过在datagrid中设置pagination:true 就会显示分页 当请求是 ...
- mac下的home键、end键以及insert键的替代
最近用android模拟器模拟东西,发现模拟器的home快捷键是键盘上的home键,这让我在windows下很好找,换到mac下找了老半天也没找到,后来才查到是有替代键的,放到这里做备份 home键f ...
- 属性动画详解 Interpolator TypeEvaluator
概述 产生原因 3.0以前,android支持两种动画模式,tween animation,frame animation,在android3.0中又引入了一个新的动画系统:prope ...