专栏首页PPV课数据科学社区最让程序员感到崩溃的10种编程语言

最让程序员感到崩溃的10种编程语言

很显然,软件开发领域中的程序员对编程语言最有发言权。一种语言可能是一些程序员的最爱,但它同时也是另一些程序员的噩梦。如果你在编程领域呆了一段时 间,你就迟早会发现有些语言由于古怪的语法、灵活性不够(或过于灵活)、差劲的调试功能或其它原因让你抓狂,甚至崩溃。根据程序员在 Quora,Stack Overflow和Hacker News这三大国外论坛上的讨论,我们挑选了其中10大最让程序员不爽的编程语言,并解释了原 因。下面PHP100就带你具体看一看这个有趣的清单。

1. Visual Basic

语言介绍:这种语言和相应的开发环境通常是用来开发Windows应用程序(图形界面),它是由微软公司发明,对于初学者比较简单,可以将写代码与使用图形化和拖拽技术相结合。

程序员的吐槽:它的语法过于啰嗦和冗长,而且有些地方有些奇怪,它需要动态链接库执行,而且基本上不支持面向对象开发。自从1998年它就不再受到微软的官方支持了。

2. Perl

语言介绍:Perl是一种高级的,用途广泛的解释型语言,它被形容为互联网的管道胶带。Perl被应用在各个方面,从CGI脚本到系统和网络的管理。

程序员的吐槽:对Perl最大争议就在与它极大的灵活性和过度冗余的语法,它有着“只能写”的称号(write-only language),代码很难被其他人阅读和维护。

3. Java

语言介绍:Java起初是一种被用在交互电视上的语言,逐渐成为最受欢迎的面向对象编程语言之一。Java代码被编译为字节码,然后由Java虚拟机解释,所以它可以运行在任意的平台上(Write Once,Run Anywhere)。

程序员的吐槽:Java的语法有些冗长,运行较慢,API有些被过度设计。很多其他语言实现相同的功能可以更高效。

4. PHP

语言介绍:PHP是在服务器端非常流行的一种解释型脚本语言,可以动态生成HTML页面。它也可以单独作为一种脚本语言应用在多种操作系统上。

程序员的吐槽:它在很多功能上有不一致的命名规则,有一些安全漏洞,不天然支持Unicode,还有它经常会和前端的HTML/CSS代码混在一起。

5. C++

语言介绍:C++作为一种中级别的语言,被人们当做是C的扩展,支持面向对象编程。如今它依然是非常流行的,并被各领域广泛应用。

程序员的吐槽:具有过大的特征集、需要手工管理内存、编译速度慢、在同一程序中有时需要在面向过程和面向对象间相互转换。

6. COBOL

语言介绍:1959年,COBOL被指定设计为支持商业和政府管理的一门编程语言,它的全称是Common Business-Oriented Language。

程序员的吐槽:超级冗长的语法规则、版本间不相互兼容,而且在COBOL 2002版本以前不支持面向对象、函数和指针。

7. TCL

语言介绍:TCL(Tool Control Language)最早被称为工具控制语言,逐渐发展成为一种多用途的脚本语言,被应用到Web开发、网络管理和自动测试上。

程序员的吐槽:TCL的规则过于简单了,没有指针,所以它不支持参数传递。另外它的数组被存储为字符串格式,在语义和变量作用域上都做的较差

8. JavaScript

语言介绍:它是一种直译式脚本语言,主要作为应用在Web页面上的客户端脚本语言。它同时也可以执行在服务端,作为一种内嵌式脚本语言。

程序员的吐槽:JavaScript对大小写敏感,依赖于不同的浏览器,欠缺较强的调试能力,而且有着奇怪的继承规则。

9. LabVIEW

语言介绍:它的全称是Laboratory Virtual Instrument Engineering Workbench,使用的是图形化编辑语言G编写程序,产生的程序是框图的形式,被用于测量和控制系统。

程序员的吐槽:GUI编程会把那些非常简单的任务变得很复杂

10. Python

语言介绍:一种语法简洁而清晰的高级语言,它通常被当做脚本语言,但其实它是可以被编译的。

程序员的吐槽:它是用缩进来区分语句间的关系,而不是用通常的括号。程序中通常会有很多的冒号和下划线。

本文分享自微信公众号 - PPV课数据科学社区(ppvke123)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2014-12-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 大数据告诉你:怎样的程序员最抢手?

    ? 我是100offer程序员拍卖的CEO贾智凡。在100offer的运营中,我最重要的工作,就是定期对拍卖的数据进行分析与整理。 今晚刚好整理了 10 月的...

    小莹莹
  • 2014年中国程序员调查报告:男女比例8:2,喜欢C++

    CodeForge网站最新发布了2014年第四季度《中国程序员调查报告》。报告里对程序员的年龄分布,地区分布,性别比例,使用浏览器种类,使用的编程语言等进行了调...

    小莹莹
  • 又被平均了!互联网人平均年薪19万;程序员四成单身!

    挖财和饿了么今日联合发布《互联网从业者生活品质报告》。据报告统计,互联网从业者平均年薪 19 万元,其中 10% 程序员的年收入高于 50 万,有 29% 的互...

    小莹莹
  • 快速学习-Solidity语言特性

    Solidity的语法接近于JavaScript,是一种面向对象的语言。但作为一种真正意义上运行在网络上的去中心合约,它又有很多的不同:

    cwl_java
  • React 技术栈系列教程

    上周中秋节,我待在家里,写完了 Redux 教程。 至此,《React 技术栈系列教程》算是比较完整了。 ? ES6 语法:教程 Babel:教程 Reac...

    ruanyf
  • Oracle cursor学习笔记

    本文链接:https://blog.csdn.net/u014427391/article/details/99946785

    SmileNicky
  • 思科向第三方开放API以扩展基于意图的网络

    思科宣布推出API,允许第三方开发人员对其园区和广域网(WAN)进行编程,以提高第三方设备和IT流程的集成。

    SDNLAB
  • django执行原始查询sql,并返回Dict字典例子

    很多时候执行sql语句,数据比django的model来的快,但并不想关心返回的字段,例如你可以执行:select * from product这种sql,这里...

    砸漏
  • 07.Java变量类型

    07.Java变量类型 Java 变量类型 在Java语言中,所有的变量在使用前必须声明。声明变量的基本格式如下: ? 格式说明:type为Java数据类型。i...

    Java帮帮
  • Tomcat的设置HTTP页面自动跳转到HTTPS

    HTTP转换到HTTPS常见的解决方案是部署SSL证书来升级。只有正确部署了SSL证书才能使用安全的HTTPS。但有时候,客户端使用HTTP进行访问时,HTTP...

    企鹅号小编

扫码关注云+社区

领取腾讯云代金券