开始

我相信在刚学编程,或学了有一段时间(1-2年)的程序猿,大多都考虑过,应该选择哪门编程语言作为主要开发语言,我同众多程序猿一样,在大二的时候选择了 PHP 这门后端编程语言,当时没有考虑很多,因为工作室里以 PHP 为主,根本没有考虑到选择哪个编程语言,当然,我之前已经学了 C 我为啥没有选择 C 作为开发语言,就不言而喻了吧,😹

我们先来看看编程语言的排行

可以看到 Java 还是占据第一位,PHP 已经有下降趋势,可以分析一下,Java 占据第一还是有一些原因的,比如高并发,分布式(当然分布式不是只有 Java 才支持)等等,这些都是 Java 已经成熟的优势,也是其他编程语言无法撼动它第一位置的原因之一PHP 也是我的主要开发语言之一,有下降趋势,还是挺伤心的😄,PHP 的性能方面还是不能和 Java 比的,但是快速开发,简单也是它的优势,若想支持多线程,高并发还需要 Swoole 来支持,对于大型应用还是不能很好的支持,所以这也是很多大型应用大多都不是 PHP 作为服务端开发语言的原因。

最近也是在学习 Go 语言,在准备写 demo 的时候,发现,只不过是将 PHP 的写法转换成 Go 的写法而已,并没有运用到 Go 的特性,如自带的高并发支持,管道等,这也是我知识储备不足的体现。

程序猿为什么要有技术深度

大家都说后端攻城狮不过是 CURD ,这也是为啥前端切图仔喜欢叫后端为 CURD 仔的原因,可能很多人在工作 3 年了,还是在 CURD,并不是说有什么不对,因为每个人的想法还是不同的,既然选择了程序猿这一行业,就要有技术的追求,现在大家都说互联网大寒冬(今年2019年),担心裁员,那有没有想过裁的都是哪些人呢,是各种技术信手拈来的技术大佬,还是 CURD 仔呢?如果我们技术达到一定程度,大寒冬跟我们还有关系吗?
关于程序猿应有的技术深度,我的理解就是理解其中的运行原理,其中就包括计算机原理,网络原理,数据库原理等等,其实深入了解运行原理,并不是那么的枯燥乏味,在你会用的基础上,看这些运行原理,会恍然大悟,原来底层是这样运行的,就拿我来说,我最近在看掘金小册《数据库运行原理》,在看的那一章,真的是恍然大悟,原来数据是这样存储的(原谅我大二没有好好学《数据库原理》。。。😔)。

在网上大家很喜欢讨论哪个编程语言最好(PHP是世界上最好语言,不解释),后端开发应该选择哪个语言,选哪个框架等等,难道大家没有意识到编程语言甚至框架都只是完成工作一个工具吗?若内功(这里指的是数据结构,算法,网络知识,计算机原理,数据库原理等等)深厚,还会在乎什么编程语言吗,学一门编程语言只不过是几天甚至一两周的事情。大家可以看一下,内功深厚的人写出来的代码,和没有啥内功的人写出来的代码比较一下,业务相同的情况下,代码绝对不是一个级别。

最后

若真的想走的更远,发展的更高,应该对技术有一些追求,不能简单的认为我会用哪一门编程语言,我就天下无敌了。所以大家还是要加油的学习底层运行原理呀,共勉~

这是看了一篇博客和看身边后端攻城狮有感而发,文采不好多多包涵,这也仅代表个人看法,可以联系我,一起交流