后台选择Java还是C++的理解

今天看到一个热帖,禁不住发个文章谈谈我的看法,没有要争个对错的意思,只是想根据我的经历谈谈我看到的情况。

为什么在已经确定学后台的情况下,并且为了快速找工作,建议学 Java 而不是 C++,甚至完全不建议先学 Python 和 Golang。

完全不建议先学 Python 和 Golang

首先说下为什么完全不建议先学 Python 和 Golang,很简单:大部分面试官基本不面试这两门语言!去面试的时候基本就是 Java 和 C++二选一,这样做也是有原因的:

  • Python 第一是动态解释语言,第二数据结构等细节被封装的太好了,所以真没什么好面试的。
  • Golang 面的少原因是由于这门语言的发明本来就是被很多公司用来替代 C++写业务的,也就是说既然能面 C++何必面 Golang?

为什么建议学 Java 而不是 C++

然后说下建议学 Java 而不是 C++的原因:

0、首先给个语言定位,下面很多的问题都可以解释了

  • Java 适合写 Web 开发业务逻辑、可以做大数据、生态和中间件相当的丰富
  • C++适合写偏底层的实现,比如操作系统、存储、网络等,而 Web 开发业务等现在通常使用 Golang 来替代

1、C++岗位确实比 Java 少。不能光看大厂,还有数以千万计的小公司,少的原因很简单,大部分公司都是写业务逻辑的,没有几个需要自己开发底层工具库的,写业务 Golang 也很合适,但是 Golang 兴起在这几年的时间,大部分公司用 Java 好好地不会换技术选型的,尤其像是银行这种

2、从语法层面上来说,Java 比 C++容易入手。Java 不用管垃圾回收、不用管多继承,这些对新人来说很友好

3、从项目层面上来说,Java 比 C++容易入手。掌握技术最快的方式就是做项目,C++可以写编译原理、可以写操作系统、可以做底层存储,可是让一个刚接触计算机的开发人员来说,做这些第一时间维度太长、第二难度太大,而 web 开发一类的电商系统、管理系统这些恰恰是 Java 擅长的,所以 Java 的可选项目范围大大超过 C++

我身边的人

先说我自己,并不是因为我现在的工作是 Java 所以我就推荐 Java,几乎大部分流行的语言我都用过,所以我不是没有根据的偏向 Java。我的开源项目几乎都是 JavaScript 写的,本科的毕业设计是数据库测试相关的用 C++和 C#写的,研究生的毕业设计做的区块链相关领域使用了 Golang 和 Python。

所以从语言上来说,其实没什么好挑的,需要什么学什么,上面讨论的 Java 和 C++只是为了快速找工作的语言选择问题,长期来看都应该学

我介绍几位我研究生阶段的做后台的同学情况:

  • A 同学工作语言为 C++,之前在实验室做云计算存储
  • B 同学工作语言为 C++,之前在实验室做云计算网络
  • C 同学工作语言为 Java,之前在实验室也是写 C++,做并行计算
  • D 同学工作语言为 Golang,之前在实验室用 Java 做 Web 开发

基本能够反映出来我说的选择 Java 还是 C++的原因,欢迎大家多交流

#Java##C/C++#
全部评论
指个错误:Python是强类型脚本语言
1 回复
分享
发布于 2019-11-17 20:24
从找工作难度来说c比java要简单呀
1 回复
分享
发布于 2019-11-17 21:31
春招专场
校招火热招聘中
官网直投
这种月经问题就别发了...
1 回复
分享
发布于 2019-11-20 17:08
日常C语言,C++找工作,最后转了java开发。怎么说呢,不建议python,python之所以会火完全是算法人工智能带起来的,至于go国内职位还是太少了。C++和java两个随便选吧,就难易程度上来说,选java会比较容易一点,但是写到简历上的项目,千万不要写什么商城项目等项目,面试官完全提不起兴趣。
1 回复
分享
发布于 2019-11-21 16:45
我就面的golang,腾讯(校招不看重语言,而且因为面试官不懂,我随便吹,说我非常了解底层,给了我最高的评价),字节跳动(本来就用golang),旷视科技(本来就用golang),美团(不重视语言,随便吹),以上全部sp。我想说校招语言并不重要,任何一门语言如果你研究的非常深,gc机制,map slice等数据结构底层,并发包底层,库函数实现,语言内核(比如go协程,chanel实现,gmp模型),并发模型都能讲的头头是道,什么语言你都能面过,而且因为对方不了解甚至能得到意想不到的效果(糊弄到个sp)。
1 回复
分享
发布于 2019-11-21 17:07
Java人太多了,面试造火箭比较厉害
点赞 回复
分享
发布于 2019-11-17 23:23
但是JAVA人确实太多了 电商 管理系统这些东西人人都有啊
点赞 回复
分享
发布于 2019-11-17 23:36
楼上说Java的人太多了...等会有人又说c++太难了....
点赞 回复
分享
发布于 2019-11-18 23:16
学python都是笔试用的。。
点赞 回复
分享
发布于 2019-11-21 16:49

相关推荐

8 31 评论
分享
牛客网
牛客企业服务