谈一谈我所理解的各大编程语言

icy2003 默认分类 2020-06-09 18:48:28 1248 0条

本文观点仅代表个人,文中带链接的框架或语言我都略懂(斜眼笑)

29442-0k1klo1o827b.png

最新排行见:TIOBE

PHP

先来说说我的本职,如无特殊说明,PHP 都指代 PHP7

PHP(Personal Home Page 个人主页PHP: Hypertext Preprocessor 超文本预处理器)

顾名思义,就是用来做网站的

PHP 首次发行于 1995 年,到今年(2020)已经两个十年了,web(网站)的市场占有率依旧是 80% 以上!!而编程这个职业,对某个具体的人来说,很难坚持十年,可以说 PHP 再玩个十年也不会腻再过十年也不会被淘汰~

PHP 就是为了 Web 而生!相比其他可以开发网站的编程语言,它的优势如下:

  1. 简单的语法,完美融合 HTML
  2. 修改立刻生效
  3. 版本兼容性超好,无需纠结版本号(对比 java 和 python)
  4. 错误提示超级明显和友好(对比 java),事实上,PHP 的报错是相当少的
  5. 超丰富的函数!在其他编程语言还在找库的时候,翻一下 PHP 手册你会发现,PHP 是自带的
  6. 框架丰富:YiiThinkphp
  7. PHP8 要来了,各大编程语言们,你们慌了么?

不过它缺点也很明显:

  1. PHP 是解释型语言,速度方面天生比不过 Java 这类编译型的,但是!我网站卡了么?
  2. PHP 不常驻内存!第一次认识 PHP 的时候我满脑子都是:怎么又是 30 秒超时
  3. PHP 比较“脏”,语法相比其他语言可以说是乱。不过这种“脏”带来的巨大好处是,在别的语言里你可能还卡在报错里,在 PHP 里你可能已经在造坦克
  4. 注定不可能是大公司(大公司用 Java)的宠儿

当然也少不了别人对 PHP 的偏见,认为 PHP 只能做网站,其实并不是!

  • 为 Web 而生,于是自然就掌握了 API 这种万能工具
  • PHP 也是命令行工具
  • PHP 的确不能常驻内存,但是顶不住网友的智慧啊!高端大佬的 swoole 和平民的 workerman 了解一下。于是即时聊天、消息通知、网游等等,PHP 游刃有余
  • 还能做桌面端,想不到吧!就是 phpdesktop,由于 PHP 修改立刻生效,使得桌面程序的开发门槛极低!
  • 还能做计算机病毒……额,这个话题以后有空再聊

总之 PHP 能做的事情还很多,那些旧的偏见早就该闭嘴了

如果你没有编程经验却想在编程行业讨口饭吃,PHP 是首选,因为它足够简单、流行和强大!

一张图自己体会:

11.gif

Javascript

说完 PHP,不得不说 Javascript

PHP 天生同步,Javascript 天生异步,开发思想略有不同,但都简单

夸张点说,只要掌握了 Javascript,你就掌握了一切

  • 在网页上,Javascript 一枝独秀,这一点注定了 Javascript 永远不会过时而且无可取代!
  • 在移动端,有成熟的 uniapp 支持,一份代码,全平台支持
  • 在桌面端,程序员们最常用的 VsCode 是用 Electron 开发的
  • 借助 CocosCreator,还能用 Javascript 开发游戏
  • 作为脚本,各种大型游戏里少不了它的身影
  • 在服务器上,NodeJs 性能高于 PHP
  • 在硬件上,嗯……这个领域太牛逼,我不懂,就不说了

总之,Javascript 无处不在,什么?你说你没见过它?按 F12,在 Console 那一栏你就可以写 Javascript!
46168-vnj1u2hfkrd.png

只要你安装了浏览器,那你就一定有 Javascript!

在大多数中小型互联网公司里,Javascript 程序员可能是跟 PHP 绑定的,基本上招你写 PHP,你就必须要会 Javascript,相比 PHP 的面向小白的简单,Javascript 的简单体现在学习简单,曲线平滑,但涉及范围太广了,是优点也是缺点

学 PHP 是有一天你悟出来了,于是一马平川
学 Javascript 是你学了十年,可能你还不敢说你会,但其实你已经很牛逼了

由于历史原因,现在讨论 Javascript 更多地是讨论某些框架(即 Javascript 世界的内战),Javascript 本身是很糟糕的编程语言(大佬除外),如果你想在前端跟大佬们分一杯羹,建议学 Vue,用 Uniapp 开发,绝对的万能

Java

如果你梦想在大公司上班,那 Java 是必会的!Java 主要存在于三个地方:

  • 开篇那张图的万年前三!
  • 大公司的大牛手里
  • 几乎全部的传统国企……这是历史决定的,那个年代就 Java 牛逼

Java 给人的感觉就是庞然大物,大意味着功能丰富强大,社区活跃完善等等,但是……仔细往深处想:

小公司可能装不起 Java 开发全家桶,作为开发者,广而不精

实在是不推荐初学者去碰 Java

Python

我第一次接触 Python 是 3 出来的时候,那时我已经预感到 Python2.7 被淘汰的命运,因为两个版本不兼容的!

看看 PHP5 和 PHP7,它们的兼容做得多好!换个版本程序照样跑,性能还翻了好几倍!

Python 被广泛应用于数学计算,所以近年来人工智能崛起,Python 也崛起了

问:为什么有比 Python 更牛逼的语言不去做人工智能?答:历史原因决定的,Python 的计算领域的生态一直都很好,就像你吐槽百度网盘辣鸡却不得不用它一样

如果想涉足人工智能等计算领域,Python 是首选,不然只是学的话,Javascript 不香么?

实在是因为这几年国内各种炒人工智能,而且还把魔爪伸向小朋友们,我被恶心到了,对 Python 印象真的不好,就它本身来说,还是很不错的

C/C++

PHP 是用 C 写的,Javascript 是 C 写的,Java 是 C 写的,Python 是 C 写的……这已经足够证明 C 的厉害之处,可以说万物皆是 C,一点也不夸张

C++ 是 C 的扩展集,解决了 C 很多缺陷

如果仅仅是因为这样而去学 C,那大可不必,C 作为大学里的一门必修课,它更多的作用是理论基础,在实际应用上,还远远比不过以上提到的编程语言

有理由怀疑,编程语言排行榜 C 的统计里,有很多其实是其他编程语言的开发者,就比如以下场景:
记者:请问您是用什么编程语言开发的呢?
程序员:我是用 Java(内心:Java 是 C 开发的吧?那我也用 C?)和 C,(等等,好像说法不合适,有点丢面子,挽救一下:)我使用的主要编程语言是 C

其他

  • SQL:数据库语言,要用数据库必须会,会 PHP、Java 等等的基本都会一些
  • Go:为了取代 C 而生,谷歌出品,牌面够大,理想够大,实际上,实力也够大,但 1972 年的古董(C 语言)依然霸榜,Go 想说取代为时过早
  • VB:被历史淘汰的东西,能上排行榜估计像 C 一样……
  • Scratch:这是一个图形化的玩具编程语言,崛起的原因是这几年火热的少儿编程
  • Matlab:其实是一个数学软件,主要还是人工智能带起来的吧

荣誉墙

54290-xhl2vwij2pb.png

标签: 暂无

非特殊说明,本博所有文章均为博主原创。