最易学和最难学的编程语言Top 5

2022-03-14 12:43:29 浏览数 (3)

点击上方“芋道源码”,选择“设为星标”

管她前浪,还是后浪?

能浪的浪,才是好浪!

每天 10:33 更新文章,每天掉亿点点头发...

源码精品专栏

  • 原创 | Java 2021 超神之路,很肝~
  • 中文详细注释的开源项目
  • RPC 框架 Dubbo 源码解析
  • 网络应用框架 Netty 源码解析
  • 消息中间件 RocketMQ 源码解析
  • 数据库中间件 Sharding-JDBC 和 MyCAT 源码解析
  • 作业调度中间件 Elastic-Job 源码解析
  • 分布式事务中间件 TCC-Transaction 源码解析
  • Eureka 和 Hystrix 源码解析
  • Java 并发源码

来源:OSC开源社区(ID:oschina2013)

文 | 白开水不加糖

  • 简单易学的编程语言
  • 难学的编程语言

在线学习平台 Springboard 罗列了一个最容易学习和最难学的编程语言 Top 5 榜单。

事实上,问一个程序员最容易学习的语言,就像问一个人他们最喜欢的冰淇淋。每个人都有自己的偏好,永远没有真正的正确答案。正如开发者和教育家 Marek Zaluski 曾经说的那样,"编程语言是由程序员创造的,为程序员服务"。这几乎就像一个只有少数人知道的内幕秘密,可能会使得那些刚进入软件工程领域的人感到畏惧。

但另一方面,不掌握流行的编程语言,你就无法成为一名优秀的软件工程师。本文大致确定并比较了最简单的编程语言与高级编程语言,具体如下:

简单易学的编程语言

1、HTML

HTML 是用来为大多数网页编码的语言。它使用标签和元素来定义如何显示文本、图像和互动形式。HTML 经常得到层叠样式表(CSS)的支持,以定义复杂的样式;以及用于脚本程序的 JavaScript。Springboard 认为,HTML 的易用性使其成为入门者的理想语言。并指出,该语言的容易学习具体表现在:

  • 它具有简单的结构,带有人类可读的开始和结束标签
  • 你可以使用 WYSIWYG 编辑器并在拆分视图中观看代码更改
  • 你可以轻松找到并修复 bug

2、JavaScript

Springboard 认为,JavaScript 的简单之处在于:

  • 它是为非程序员设计的,对初学者友好;是理想的入门语言
  • 它是如此普遍,以至于大多数浏览器都用作默认环境
  • 不需要编译器来查看 JavaScript 的运行情况,并且可以立即查看结果
  • JavaScript 有一个庞大的社区,对入门者有帮助

3、C

C 是一种通用语言,大多数程序员在学习更复杂的语言之前都会学习它。从 Unix 和 Windows 到 Tic Tac Toe 和 Photoshop,当今最常用的几个应用程序都是基于 C 构建的。它的简单之处在于:

  • 语法简单,只有 32 个 keywords
  • 数据结构易于理解

4、Python

作为 ABC 语言的继承者,Python 是一种高级的通用编程语言。Python 是网络开发人员、数据科学家、ML/AI 专业人士和嵌入式应用开发人员的最爱。Springboard 认为它很容易学习的原因在于:

  • 该语言执着于代码的可读性,经常使用英文单词
  • 它以大量使用 whitespace 而闻名,使其不那么令人生畏
  • 它有几个用于各种应用的库
  • 它得到了一个巨大的程序员社区的支持,他们可能对你的所有问题都有答案。

5、Java

Java 是一种基于类、面向对象的通用编程语言。它旨在跨环境运行 —— 一次编写,随处运行 (WORA)。它是后端开发人员和安全应用程序中最受欢迎的语言之一。它的易于学习表现在:

  • 直观的语法,简洁且适合初学者
  • 它是一种结构化语言,几乎没有偏差
  • 如果你以前有过面向对象编程的经验,那就更容易了

“推荐下自己做的 Spring Boot 的实战项目: https://github.com/YunaiV/ruoyi-vue-pro

难学的编程语言

1、C

C 是 C 的扩展。据说谷歌 Chromium 浏览器、微软的几个应用程序、甚至摩根斯坦利的金融建模都是用 C 完成的。它的难点在于:

  • 具有复杂的语法以支持多功能性
  • 是一种宽容的语言 —— 你可以做一切技术上可能的事情,即使在逻辑上不正确
  • 最好由已经有 C 语言编程基础的人学习

2、Prolog

Prolog 是最早的逻辑编程语言之一,现在在人工智能应用程序和自然语言处理中得到采用。难点在于:

  • 它是一种非常规语言,数据结构不同于其他编程语言
  • 它需要一个不合理的 competent compiler
  • 它迫使程序员预先认真思考他们的逻辑
  • 在线资源和 Prolog 代码不能简单直接地适用于你的需求

3、LISP

它是继 FORTRAN 之后第二古老的编程语言,至今仍被用于高级系统和人工智能领域。难点在于:

  • 是一种具有特定领域解决方案的碎片化语言
  • LISP 中的语法广泛使用小括号,这可能很难习惯

4、Haskell

Haskell 是一种基于 lambda calculus 的多态静态类型纯函数式语言。它以数学家 Haskell B Curry 的名字命名,主要用于研究、工业应用和教学。

难点在于:

  • 遵循 100% 的函数范式,不像大多数接受命令式命令的现代语言
  • 很难理解 Haskell 中编译和错误修复的细微差别
  • 涉及大量专业术语,这可能会让初学者望而却步

5、Malbolge

Malbolge 以但丁《地狱》中的第八层地狱命名,是 "esolang"(深奥的编程语言)的一个 example。第一个 Malbolge 程序花了两年时间才被写出来。这一类的其他语言有 INTERCAL 和 Cow,大部分人会把这类语言当作一种挑战。

难点在于:

  • 使用晦涩难懂的符号
  • 没有多少程序员花时间学习它,因此学习资源较少
  • 是一种自我修改的语言,会导致不稳定的行为

你心目中最难学和最易学的编程语言是哪种?欢迎评论区讨论。



欢迎加入我的知识星球,一起探讨架构,交流源码。加入方式,长按下方二维码噢

已在知识星球更新源码解析如下:

最近更新《芋道 SpringBoot 2.X 入门》系列,已经 101 余篇,覆盖了 MyBatis、Redis、MongoDB、ES、分库分表、读写分离、SpringMVC、Webflux、权限、WebSocket、Dubbo、RabbitMQ、RocketMQ、Kafka、性能测试等等内容。

提供近 3W 行代码的 SpringBoot 示例,以及超 4W 行代码的电商微服务项目。

获取方式:点“在看”,关注公众号并回复 666 领取,更多内容陆续奉上。

代码语言:javascript复制
文章有帮助的话,在看,转发吧。谢谢支持哟 (*^__^*)

0 人点赞