毕业直接后端开发岗,选择C++还是java?

2ef8d9f6fa8af1163066928a543c86b9.png

我们来分析一下,2020 年 4 月,Java 仍然是 TIOBE 指数的第一名;但紧接着 5 月份,Java 就不得不将第一名让给了 C。后来在 2021 年,Python 也变得势不可挡,超越了 Java。现在看起来,C++ 则将是下一个超越 Java 的语言。具有高性能的高级编程是 C++ 表现出色的关键原因。C++ 语言每 3 年修订一次。此类修订包含突破性的新功能,使语言可与 C# 和 Java 相提并论,但没有垃圾回收器的性能损失。

339dadb4f110e9b04ec70569bfa3a901.png

业务方向

C++

  • 职位方向:后台服务器/PC客户端/物联网后台/高频交易系统/游戏/搜索

  • C++语言兼顾性能和大型软件开发效率,主流后台服务器开发语言,但由于语法太复杂,入门门槛高,精通难,学习的人越来越少,但当前大部分系统软件还是C++开发的,还是有存量的需求,如果学习得好,反而竞争小,所以机会更大。

Java

  • 职位方向:电商/大数据/金融/web应用/Android应用

  • Java是在开发效率(完善的开发环境,各种开发平台,满足各种业务需求)、开发门槛、性能、跨平台这几方面平衡最好的语言!可以编写桌面应用程序、Web应用程序、分布式系统应用程序,求职者最多。

来自极客星球直播:滴水石穿非一日之功

C++的好处是从上层到底层都是透明的,你要查问题可以从业务层一直查到汇编,进程,线程,内存,都可以直接看见,系统对你没有隐瞒。

Java有一堆的组件,中间隔了一个虚拟机,开发效率高,框架帮你接管了很多东西,组件和库丰富,上手容易一些。

c++注重性能、自由和开放性,对底层系统的理解有一些帮助。

java的开发效率和生态适合大型业务系统,对编程的抽象和架构思维有一定的益处。

如果自己喜欢搞底层(喜欢刨根问底,比如我),建议可以走C++路线,腾讯微信大部分核心组件还是C++写的,IEG的游戏核心组件大部分都是C++,搜索引擎,机会还是有很多的吗,这些可以帮助你打通应用到底层任督二脉,成为系统级专家,以后可以选择更底层方向,比如云计算,操作系统,嵌入式等等,很多业界牛人,都是这样过来的。

如果自己喜欢业务架构,想成为架构师,成为有丰富行业经验的技术专家,可以选择java,java开发都是和行业有一定关联,怎么快速为某个公司业务搭建整个技术架构,快速支持业务规模等等,怎么根据业务规模和业务特点进行技术选型,这些才是java技术方向核心能力,需要不断在java领域深造才能领悟,不过也可以往纯技术路线迁移,比如开发大数据平台(类似flink,spark这种开源定制优化),开发JDK,定制优化jvm性能(一般是手机行业),各个大厂都有这些职位。

最后,其实不管选什么语言,语言终究是一个工具,程序员核心是解决问题,把工具用好:028cf28862c1af1322739edb3b96054c.png

来自极客星球直播:每周进步一点

核心还是行业技术积累(比如嵌入式(低功耗设计,os裁剪,硬件适配,性能优化(成本控制)等,云计算的虚拟化,Linux操作系统,容器,k8s等,音视频的编解码,推流端、媒体处理、CDN分发等等))),选择行业不同,积累不一样,语言前期确实会影响大家选择行业方向,比如c语言,只能选择嵌入式或者云计算行业等。

尽管行业不一样,但很多技术都是具有通用性,所以在前期发育阶段,我们尽量学习一些通用技术(比如操作系统,程序设计,算法与数据结构,性能优化,计算机架构和组成原理),打好基础,修炼基本功,把基础打牢,工作1-3年后再选择后期方向也不迟,不要在意一次选择,没有谁能完全保证,一次选择就能选对自己以后的方向,包括我也从嵌入式(华为无线通信,终端业务)转到现在的云计算行业,但都是围绕的网络方向(核心技术在不断深化,不同行业也可以进行平滑迁移,技术升级),我们要拥抱变化,在变化中找到不变的东西,这些才是我们应该去掌握的核心的技术。

如果短期的目标是想进大厂,关注好大厂校招的时间点:

2aab9c5bcc235254839fde90dd379a4c.jpeg

对于校招,算法是第一道门槛,比较重要,这里精选的200道题,认真刷完(如果吸收不好,可以多刷几次。多思考,多总结,这样事半功倍):

f18b0b356976946676f1c6e6d7b2e8af.png

来自极客星球

有疑问,可以在技术群发问,我会帮你解答,其他基础知识,可以参考下面学习路线,包括C++和JAVA,还有Go等。

大厂后台开发基本功修炼路线和经典资料

作为大厂专业面试官,大厂是如何招聘的,可以看一下,知己知彼百战不殆:

大厂的面试官是如何挑人的?
类似问题:对于业务开发,选Java还是Go?

大家可以关注我的公众号:极客重生,一起进步。修炼自己,掌握核心技术,短期和长期并行发展,尤其是前期发育,如果有人带(大神带小弟,上分杠杠的),那是成长非常迅速的。


欢迎大家加入极客星球,对星球感兴趣的, 点击查看-> 极客星球。

d6e86ea2115ebf510d80db95969e69e1.jpeg

IT工程师的成长路线

 

可以加我微信,交个朋友,技术交流

- END -


看完一键三连在看转发点赞

是对文章最大的赞赏,极客重生感谢你30fb16869f5d87236f01170c5091c195.png

推荐阅读

273dd73193ca76cc38dde42d3bd6a716.jpeg

定个目标|建立自己的技术知识体系

 

a8ba1dde8f11f89b0a4b3fc0f4b06636.jpeg

大厂后台开发基本功修炼路线和经典资料

2fa57fc6bc3443516dde43d0bdbcafbd.jpeg

难走的路,从不拥挤

你好,这里是极客重生,我是阿荣,大家都叫我荣哥,从华为->外企->到互联网大厂,目前是大厂资深工程师,多次获得五星员工,多年职场经验,技术扎实,专业后端开发和后台架构设计,热爱底层技术,丰富的实战经验,分享技术的本质原理,希望帮助更多人蜕变重生,拿BAT大厂offer,培养高级工程师能力,成为技术专家,实现高薪梦想,期待你的关注!点击蓝字查看我的成长之路

校招/社招/简历/面试技巧/大厂技术栈分析/后端开发进阶/优秀开源项目/直播分享/技术视野/实战高手等, 极客星球希望成为最有技术价值星球,尽最大努力为星球的同学提供面试,跳槽,技术成长帮助!详情查看->极客星球

                                                                求点赞,在看,分享三连e293f5a5b810f5d8aff0b8be701cb5d6.png

  • 9
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值