400-087-2658/Q:3369821412微信同号
有Java、Python,为什么还要学C++?今天我们想要跟大家探讨一下我们为什么要学习C++,而且是在有Java、Python等编程语言存在的情况下,C++它的魅力与优势是什么,今天我们来了解一下:
为什么要学C++
昨天听到一个小朋友说,感觉学C++就是鸡肋……what?
一个刚学了点C++的皮毛,还没参加工作的人,居然这么老诚的评价C++,你真的知道C++的用途吗,还是说你更喜欢PHP这个世界上较好的编程语言?
所以我们到底要不要学C++?当然要,而且必须要。为什么?
C++虽然包袱很多,但是有好东西,例如Rust language reference提到的几点,值得学习(当然你直接学习Rust更好);
C++背后的ABI(包括对象模型、异常的实现等)对于其它语言实现的学习也是大有脾益的;
当然上述两点都不是充分的理由。我认为较充分的理由是——很多时候你逃不掉C++:
我写JS的——Chrome V8,查克拉,WebKit清一色的C++,还都是现代C++;
我写Swift/Rust...的——左转Clang/LLVM,清一色的C++11;
我写Unity的——你猜,Unity用什么写的?
我写C#/Java的——再猜,CoreCLR/主流的JVM等用啥写的?
我写C的——clang C++写的,Windows的UCRT C++写的,GCC也逐渐加入了C++;
我搞机器学习/深度学习/...——TensorFlow&caffe是啥写的?
我搞OJ——刘汝佳的书,以及《挑战程序设计竞赛》等,用啥语言完成示例?
……此处省略10万+字
还有一条,学C++虽然难一些,但是正因为这个,C++的薪资也是偏高的,网友都说了要高薪就学C++,因为:
要是技术牛逼的有3-5年工作经验的,城市年薪20-30万没有问题。刚毕业,又没什么基础的,城市2000-4000不能再多。刚毕业,C++知识扎实,普通二流三流四流本科的,城市3000-6000。刚毕业,C++知识扎实,985重点的,城市6000-10000都有可能。
做程序员纯粹的脑力活儿,而且你只会C++这个语言,并不一定能代表你的能力。想做程序员,要学的东西很多,从底层的硬件要了解一些,到上层的抽象。还有通信,网络,所以思想是很重要的,而且要一直学习新的东西。语言只是工具,重要的是编程思想。你的编程思想好,哪个语言其实都很行。干程序员这行,如果你是偏向软件开发的,经常加班是肯定的啦。重要的是你喜不喜欢编程,你喜欢这行,就算累点,也是开心的。工资什么的,程序员很在意的就是经验,你写的代码多了,开发的经验有了,时间长了,工资是一个质的飞跃。一般刚入行都不高,3000左右吧,当然有拿的比这个多的,看个人情况了,3年左右大概会上在万元左右,再长些,年薪按几十万算了。