到底该学习什么编程语言

我到底该学习什么编程语言?

相信几乎所有的开发人员,都会有这样的感慨,我到底应该学习哪一门编程语言,我应该选择什么样的技术,这很正常,包括我自己,经常会出这样的疑问,那么作为一个过来人,我来谈谈我的看法

到底该学习什么编程语言

个人经历

我从大一开始接触编程,到现在为止已经很多年了,学习过的编程语言或者技术包括

  • C语言
  • C++
  • JAVA
  • C#
  • 汇编
  • GO
  • PHP
  • Android
  • React
  • Vue
  • Angularjs
  • Python
  • Laravel
  • ThinkPHP
  • ZendFramework
  • linux程序设计
  • 网络编程
  • 3d游戏引擎
  • Javascript
  • HTML
  • Spring
  • 还有其它的,想不起来了。。。。。

总的来说,学的的东西,还是蛮多的,绝大部分的技术,我都深入钻研过,也花费了不少的时间,但是现在仔细想来,有的真的不值得,幸亏后来浪子回头。

到底该学习什么编程语言

早期学习

早期学习编程的时候,我和大家的感觉都是一样的,看到什么新鲜的东西,都想插一脚,当时也是这么做的,然后这个学一下那个学一下,但是学到最后,感觉还是很空虚,还是没学到啥,很多东西还是不懂,因为你停留在了语言的层面,而没有深入到某一个语言或者是工具的本质,你的计算机基础知识还不够,你缺乏基本功,所以很难看透问题的本质。

提升编程素养

今年前段时间,我去面试其他人,大部分时间我都不问招聘岗位的问题,我会问一些基础的编程问题,比如:你可以写出一个链表吗?假如说这个都不会,那就没有问下去的必要了。如果他回答了这些基本的问题,我会问他,看过一些书籍么?看过哪些书籍,从他看的书籍,我就可以看出来,面试人的基本现状。我不要求你需要会岗位的某些技能,但是你的编程素养告诉我,你是不是具备快速学习的能力。优秀的开发人员,可以在短时间(一周或者几天)上手一门编程,或者是掌握某个东西的精髓,这不是在开玩笑。

不管你学习哪一门编程,你的眼光应该不限于当前领域,比如说,我和我同事聊天的时候,我说每一个编程人员,都应该学习数据结构,基本的算法知识,今年面试前端的时候,我基本都会提到一个基本的问题,怎么来遍历页面上的dom,很可惜,没一个人能给我答案。
当看到别人简历上面出现React的时候,我会提出一个问题,React的setState方法为什么不会立即起作用,你别说,很神奇,面试的人答案只有一个:性能优化,不知道是哪个讲师告诉你的,真的是误人子弟。算法不是那么高深的问题,它应该渗透到我们写的每一个程序中,它不是某个具体的东西,而是一种抽象思维(在这之前,你首先需要学习具体的基本数据结构,列表,栈,二叉树等等)。

我总是推荐别人学习C语言,有人可能会说,我又用不到,学它干啥。这句话没错,你确实没用到,但是你知道嘛?你用的软件,包括但不限于Linux,Redis,Nginx等等都使用C写的,为什么要用它呢,因为它的效率,你可以完全掌控你的程序,超乎你想象,你有完全的内存控制权,你自己负责垃圾回收,总之你自己就是程序的上帝,但是这也赋予了你更多的责任,你有义务了解更多的编程知识,计算机知识,这样你的程序才能更好的运行,最重要的是它会培养你一种程序思维,学会站在计算机的角度思考问题,举个例子:
为什么JAVA的String 初始化了之后,不能变的更长,如果你学习了C语言,你可以很轻松的回答这个问题,这是内存分配的问题,真正的程序员,不是你可以做什么,而是,也许我可以搞个东西,比这个更好

到底该学习什么编程语言

上班很累,但是要狠

不管你是刚出校门,还是毕业多年的老油条,上班没有不累的,大家都很累,自己没有时间学习。对于这个问题,我只能说,你真的是因为忙没时间?你每天抽不出1个小时看看书?你每天耍手机的时间加在一起,你想过有多少时间?中午休息的时候,也可以看哈文档,博文啥的,看看别人的经验分享,都可以,真正技术好的,不是因为他真的很聪明,你看他12点之后还在干嘛?多年前,我学习Android的时候,有个Android大神,叫做罗升阳,他写了很多高质量的博客,此人是晚上熬出来的啊(这哥们儿,写了一本Android的书,很可惜,销量很差,最后这哥们儿把博客给停更了,再也不写博客了,因为太痛心了,熬夜给大家写博客,却没有换来丁点儿的回报,因为别人都不买他的书,看他的博客去了(白嫖),这件事给我影响深刻,然后我又去淘宝京东上面搜索了其它的一些关于android的书籍,销量贼高,但是我看了一下目录,质量啊,真的真的令人苦笑不已)

当初我学习linux编程的时候,也是每次都搞到凌晨,那么厚的书,想想都觉得可怕,你不对自己狠点儿,又想学到东西,怎么可能啊。

到底该学习什么编程语言

多实践

实践才是检验真理的唯一标准啊,光看或者是听,起不到多大的作用的,不要总把手插在裤兜儿里面(装酷的时候,我支持),在写这一篇博客之前,我也写了几篇博客,每一篇我都写了例子,但是又有多少,看一遍就算了,多少人下载下来亲自运行下,就不得而知了,这不是一种学习的态度,勤加练习才是王道,你觉得你是天才吗?天才也不是这么玩的啊。

到底该学习什么编程语言

如何学习一门编程语言

编程语言种类繁多,你不需要学习那么多,但是你一定要知道如何学习一门编程语言,要有一定的学习目标,下面举个例子:

  1. 如何定义变量
  2. 如何定义函数
  3. 如何定义类
  4. 如何实现继承
  5. 如何实现多态
  6. 如何定义和操作字符串
  7. 是否支持闭包
  8. 如何调用父类的函数
  9. 是否支持默认参数
  10. 参数的引用,值传递
  11. 如何实现代码模块化
  12. 如何导入第三方代码
  13. 三元表达式
    14.当前语言提供了哪些功能
    15.当前语言有些流行框架和工具
    16.变量的作用域,是否支持全局变量

上面只是给大家举个例子,学一门编程语言的时候,一定要有目标,不能到处撞,开始学习一门语言的时候,你不需要学习比较高级的语言特性,因为暂时你还用不到,这些东西只会给你增加烦恼,在学习完这些基本的语言知识外,你可以写一些代码了,做做项目。

如果你是一个编程老手,这面的这个过程,它一天的时间就搞定了,这一点都不夸张,当初为了学习Unity3d(后来没学了),我学习C#的时候,我真的觉得基本的知识,就只需要一天,没有必要浪费那么多时间,项目搞起来。

到底该学习什么编程语言

回归正途

上面罗里吧嗦了一大推,我到底该学习什么编程语言?如果你认认真真的看了我上面说的,我想问你一个问题,你是否真的学好了自己领域的东西,如果你真的学好了,那么你也不需要考虑这个问题,因为,只要你想,你认认真真的学习一个月,可以抵得上一般的人几年的工作经验,你可能觉得很夸张,但是不然,你的基础在那里,上面都是我的真心话,每个人都有自己的选择,希望你能够有所收获,祝您周末愉快。

到底该学习什么编程语言

如果有不懂的地方,可以加我的qq:1174332406,或者是微信:itshardjs

本帖由系统于 3周前 自动加精
讨论数量: 9
lmaster

其他的,不太清楚,但是感觉我学的很多语言的非常像。

一开始先学 php ,后来学过点 C , java 、C# 、C++ 。

发现 C 是真的牛,也真的是基础。

3周前 评论

那为什么大佬现在专注PHP开发,而不是Java或者C? :smile:

3周前 评论

受教了,我要回去死磕c了

3周前 评论

赞一个,是那么个理

2周前 评论

感觉就没停止过学习。现在因为 ant design pro 后台漂亮,开始学 react 了。

2周前 评论
likunyan

写得很淳朴,说出了心声。

1周前 评论

对我很有启发,想学C语言、算法、计算机组成等基础,觉得基础好了,很多东西,拿起文档就可以直接开始撸。

4天前 评论
likunyan

emm...,我学的是网络构建,后面找工作,Linux 严格,入了 Windows,工作中 为了效率用了 Bat 批处理、VBS、注册表、按键精灵等等搞了一堆,

后面学了 Python 不好找,找了 PHP

再后面去了深圳有做过一个月 Canvas,自己下班学了 React

回来之后用了 Laravel,学了 Vue,

最后使用 Laravel + React + Material-UI,工作是 TP 5,APICloud + Vue

算是勉勉强强会点网络知识,架设服务器和应用,前后端全栈搞点小玩意儿。

C 是基础,算法也是基础,还有 PHP、Laravel 底层,要学的还有很多。。。

以上。

3天前 评论
likunyan

file

3天前 评论

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!