假如给你一次机会重新选择,计算机专业选C++ 还是Java?

Fny丶樂兮


已经从事软件开发十几年,C++和java跟着做过好多项目,相对来讲跟C++的感情更加深刻些,毕竟被折腾的时间最长印象也最深刻,刚入行一年就跟着做C++项目,开始被泛型编程里面的各种规则折腾的够呛,发现和自己在学校学的完全不是一码事,学校学到的C++理论只是皮毛而已,也就是学学面向对象大概是什么样子,面向对象的三大特性要真正的了解还是需要在项目中才会领悟,然后被技术经理批的无地自容,都开始怀疑自己是不是真的适合做研发,为了能够跟上项目几乎天天搞到半夜,就这还是赶不上大部队,好在没有放弃坚持下来了。

很多人觉得要能写程序是不是需要什么天份,关键看毅力能够挺下来就能坚持到最后就可以了,刚入行的程序员都有被主管怼过的经历,其实后来想想未尝不是一种激励。在当时状态下可能让自己很没有面子,但也是印象深刻,这种场景经历的次数多了,回过头就是一种财富,一个对你已经失望之极的人很难严厉的对待你。正是经历了这痛苦的半年也让自己和C++建立了深厚的感情,从此结下来不解之缘,算是技术生涯里面的使用最多的编程语言。

后来用java做项目开发是C++技能成熟之后去做的,所以接手去做已经简单太多了,能深深体会到一种幸福优越感,毕竟java的语法细节和C++不可同日而语,但并不意味着java做起来就比较简单,java框架思想要求更高,特别是企业级别的后台的开发,数据量巨大的情况并发以及分布式处理都需要很深的功底,要达到一定的造诣都需要长时间的积累,所以不要轻易下结论一种编程语言难易,这都是相对的,初级的程序员做的是一些小模块的功能觉得简单也很正常,如果参与到框架的设计难度可想而知,不要轻易对一个事物下结论。

从个人性格来讲,如果又重新选择的机会还是选择C++,毕竟更加喜欢在底层折腾东西,更加喜欢啃底层的硬骨头,可能是入行早期养成的习惯,喜欢做一些有挑战性的项目,因为C++这个编程语言还在不停的更新,永远没有学习止境的时候倒是很能治愈自己的拖延症,有个东西紧迫着学东西做项目也快,毕竟一个程序员需要紧跟时代的步伐,不能满足之前做了多少项目混了多少经验,java做起来相对C++有种很爽的感觉,起码不用考虑指针的东西,但整体来讲还是没有C++用起来有感觉,所以技术生涯从事的第一个编程语言对于后续的影响还是挺大的, 技术后续掌握了多种编程语言,如同每个人对于初恋都会念念不忘是一个道理。

编程语言本质上讲就是一种工具,但选择不同的编程语言就意味着会选择不同的编程方向,c/c++主要是底层开发,java,python等属于高级语言开发方向和未来的编程方向的发展息息相关,其实就是重新选择一次编程方向,喜欢即所爱。


大学生编程指南


从两个角度说说这个问题。

先看业界的排行榜,无论是最流行的编程语言还是市场上需求最大的编程语言,JAVA都排在C++以上。

这也符合市场上的情况,在中国对Java程序员的需求要远远大于C/C++。Java一般是做行业软件的,适合功能性快速开发和交付的项目。常见的外包项目用JAVA实现的多,能覆盖服务器端、游戏、手机APP等开发需求。这也就是说,如果你大学毕业了会Java,有Java开发的经历,有自己拿得出来的项目,那么能够满足很多职位的要求,应该能为你争取到面试。

另一方面,由于Java学习对程序员要求不高,企业会倾向于招聘大量的中档或者低档的开发人员,再由一个高级的人员来统筹架构问题。这也造成了Java开发的职位很多都是在外包公司。实际工作时候你会发现很多人入行都是通过培训班等速成途径。也就是说你在Java上积淀的能力,可能无法形成护城河效应,容易停留在中低端工作人员的位置。

往上说一层,编程语言之争常见,但是对于一个资深的程序员来说,语言并没有那么重要。相反,打好数据结构和算法的功底才是见真章的地方。同样是掌握C++和掌握JAVA的人才而言,大致能假设会C++的这位能很快学会JAVA,但相反而言却不能保证。这就是C++这种偏底层应用的语言对人的训练保证的效果。这就好比,纯数学在业界的需求很小,但是如果你数学功底好,像经济、物理、生物等专业别人都相信你可以很快胜任。


顺势而围


个人感觉C++更接近计算机的底层(严格的说是c更接近底层),但JAVA是一门功能超强大的编程语言,在世界所有的程序员中,使用JAVA的人最多,而且现在做项目大多都用JAVA语言。

如果你以后想做研究,在计算机语言方面有很深的造诣,建议你向计算机硬件底层方面发展。一定要把底层的东西研究透,那些在上层做事的人,他所用的工具功能不管多强大,功能多炫,他只不过是学了一个工具,而对这些工具的原理或许并不了解。

当然了,JAVA语言也蛮不错,现在用JAVA的人很多,的确有它的商业价值。

要学哪种语言关键看你自己想往哪方面发展了。


从不加班的程序猿


关键是没有选专业的机会啊,我专业物理教育,计算机硬件软件都自学,工作十年了,之前一直很懒,最近弄了块板子做服务器,放在自己家里,可以访问一下我的博客,phubber.com


玉生烟312


我选c++吧 虽然c++复杂特性导致了它学习的难度略高 但是伴随的也会是诸多好处 让你更加理解底层知识 也许这在平常中看不出来 但是作为一个程序员的底蕴 会潜移默化的影响着你 思维的蜕变 再者java是去除c++一些复杂的特性得来的 若将来想转java 很快就能上手 个人见解😁有误请前辈们指教


空coding


大学里c是必修吧,我记得我当时第一门语言就是c++,第二门是JAVA,当你把c++理解后,学习JAVA就会变的很容易,因为编程语言大都类似。c++偏底层一点,JAVA偏应用一点,这个就看个人喜好了。其实选择什么不重要,重要的是要把你选择的学精通,做到独挡一面!


乖乖的摇曳


先就业就Java。

要深入就绕不过C。


三月春雪白了头


都什么年代了,怎么还有人问这中傻不拉几的问题。


全栈之家


学习精通了都一样


分享到:


相關文章: