到底学哪个?

作者:阿秀
阿秀的校招笔记:https://interviewguide.cn

大家好,我是阿秀,周末了,聊点别的吧

很多学弟学妹加我第一个问题就是:秀哥,我想学Python去找工作可以不可以?

真的特别多。。。

Java还是C++
C++还是Java

今天就聊聊吧,到底 C++ or Java or Python

或者你也可以把它理解为:哪些人适合学习 C++ ?哪些人适合学 Java ? 哪些人适合学 Python?

这个问题没有一个统一的答案,撇开实际情况统一推荐一种语言都是耍流氓和不负责任的。

今天只是从找工作的角度来聊一聊这种语言,不谈其他。

1、这几种语言能做什么?

2、你适合学哪种语言?

3、几个高频问题回答

1、这几种语言能做什么?

我知道很多人跟我一样,学习编程只是为了 搞钱 兴趣。

那我就先大致说一下这几门语言的能做些什么以及主要的应用场景。

先说 C++,这门语言主要是用来做一些底层开发以及一些对于性能要求比较高的业务或者场景下使用,比如要求响应速度更快场景等。

C++在找工作的过程中,能够投递的岗位主要有 Linux/C++后台开发、嵌入式开发、游戏研发、服务器开发、编译器研发等。

它能干的活其实不少,很多人都在担心学了C++找不到工作。。。说实话,还没到那个地步,虽然比不上Java岗位多,但也绝对不少的。

再说说Java,不管你信不信,Java是毫无争议的互联网第一语言。

你看各种培训机构,Java培训广告满天飞。

可以说我们现在能够尽情在互联网各种冲浪,Java这门语言可以说是居功至伟!!!

就因为它能干的活实在是太多了!!!

它可以做网站,可以搞Android客户端,还有就是做一些软件开发,甚至现在很火的大数据开发也可以用Java来做。

学了Java,能干的活确实很多,这点你不得不承认,招的人也是最多的,岗位也是最多的。

但,相应的,它也是最卷的,字节提前批第一天开放的时候投递Java后端开发的应届生是最多的。

最后来说一说Python

Python作为新兴的一门编程语言,这几年也受到很多学弟学妹的喜欢。

比如用它去爬个数据、做做数据可视化、处理处理数据,确实挺好使的。

Python也可以用来做后端开发,比如它的Django框架,只不过招Python做后端开发的比较少。

Python还可以用来做爬虫,我以前也玩过一年多的爬虫,Python在搜集网络公开数据的时候还是挺好用的。

除此之外,还可以做一些数据分析以及数据挖掘这些岗位。

相信大家都能看到培训班满天飞的人工智能、Python爬虫的广告。。。

各种宣传语层出不穷,甚至有的培训班直接打出了“人工智能就是Python”这种标语,周志华和吴恩达老师看到了估计想吐血、、、

这些培训广告是不是让你心动了?想报班去学了?

先别急,我先给你浇盆凉水

这些培训班只告诉了你,Python容易好学,但没告诉你数据分析和数据挖掘甚至是算法工程师门槛有多高吧?

没有一个好的学历 + 一些不错的竞赛奖牌(比如国内的阿里天池或者Kaggle比赛等),小白/非科班/转行去搞数据分析、数据挖掘、甚至是算法工程师,基本可以说是飞蛾扑火了。

注意:这里的算法不是数据结构与算法的那个算法,数据结构里的算法是二分查找、遍历等,算法工程师主要是计算机视觉工程师(也叫CV工程师)、自然语言处理工程师(也叫NLP工程师)、推荐算法工程师。

计算机这行看技术是不错,但门槛你都到不了就没必要说技术了。

就比如岗位招聘中明确要求大专及其本科以上,你如果高中毕业去应聘,我觉得可能就直接被刷下来了。

算法工程师确实高薪,可以说是校招社招岗位中薪资最高的一档了。

我记的去年便利蜂招聘的CV工程师薪资基本都是38K/月,

但门槛也是真的高啊啊啊啊。

因此不建议一般人去学Python做算法。

2、你适合学哪种语言?

说完这几种语言主要可以用来做什么后,再来聊一聊你适合学什么语言。

当然了,我也只是推荐,到底选哪个还是要结合你自身的实际情况来判断的。

1、如果你是个在校生且还在大一大二或者研一,那Java和C++都可以,选一门就可以。

Python则慎重,不建议把它作为主攻语言,可以把它作为一门辅助语言去了解和学习,写写脚本、处理处理文本还是挺好使的。。

2、如果你是个在校生且但已经大三大四或者研二研三了,这个时候可能要面临找工作的情况了。

C++和Java到底选哪个?

这两种语言:前者难学、难上手,但竞争小一些,内卷比Java好得多。后者好学一点,也比较容易上手学,但竞争大,内卷严重。

你说学哪个,鱼与熊掌的关系罢了。

看你自己了,我选的是C++,并且我也不后悔学了C++。

虽然现在不怎么写C++了,但在学习C++过程中打下的底子给了我很大帮助。

我在学习其余语言的时候,上手很快,真的很快,我在学习前端的时候没花多少时间就能上手干活了。

其实编程语言里很多东西都是一样的。

只是基本语法有点差别,把一门语言的思想掌握好了,其余的还远吗?

学好一门编程语言就足够了,学好一门就足够你受用了。

对了,说个去年我在牛客上看到的计算机专业就业统计报告的事情吧。

去年校招,C++岗位简历的投递占比大概在秋招所有岗位的12%左右。

Java岗位的投递简历数据量在秋招所有岗位的26%。

2倍还不止了。。。

看看今年的后端就知道Java有多么卷了,我是建议走C++的,虽说难上手一些,但至少没那么多人跟你卷。

3、如果你是个毕业生或者非科班转行,比如生化环材想转互联网,还是走Java吧。

简单易上手,对于小白来说也比较友好,能找到的学习资料也多。

不得不说一句,C++有时候真恶心。。。

C++由于其语言特性导致它更加适合搞一些底层的东西,所以在学习C++很长的一段时间内,你所面临的都只是一个黑乎乎的命令框。

C++小项目运行成功后给你带来的视觉感受没有Java所搭建出来的Web页面那么具有感染力。

相应的,给你所带来的编程成就感远远比不上Java。

4、不要轻易去拿Python作为自己的主语言

是的,不建议直接把Python作为自己的主语言。

除非你是打算走爬虫工程师/数据分析/数据挖掘/算法工程师,一般人不建议直接拿Python作为主攻语言。

其他三种我不太了解,也不瞎说。

就说说爬虫这个工作,好入手,难精进。

比如逆向 JS 这种,还有高级验证码的破解都是难啃的骨头,都需要人带的。

靠自己自学,很难走的深。

3、几个粉丝高频问题

1、我一个月/三个月/半年好好学C++/Java可以像你一样进大厂吗?

首先我想说的是,没有说一门语言好学易上手、又好找工作、工作还清闲、工资还高的。

不管学哪门语言都需要好好学,都需要用心学,那些你束之高阁的大黑书都值得好好看。

其次我从来不相信那些什么三天学会Java、七天学会C++的言论,我只相信一步一个脚印、稳扎稳打、慢慢进步,最终收获好结果。

就好像去年寒假班的记录的最认真的几位同学一样,比如下面这位同学。

最后我不知道你的基础怎么样,也不知道你的自学能力怎么样,像这种问题我回答不了,抱歉。

至于我,我是这么走过来的,我已经把我自己的自学经历写出来了,并且是按照时间线写的,具体可以翻一翻下面这两篇文章。

何况我做那些事情都是在周一-周五的晚上 + 周末两天学习的,其余时间都在帮老师做项目或者看论文之类的。

老实说当初自学的时候,一周七天能留给我的时间并不多,我觉得你好好做规划,也是可以的。

别在别人放弃你之前,先放弃了你自己

2、学什么语言容易进大厂?

这个问题的频率可以说是 Top3 了....

这个问题真没有定论,不管学什么语言,好好学都可以进大厂。

你适合学哪种语言,上文我基本都写了不少了,可以去找找哪种情况适合你。

只不过有些公司比较偏重某一门语言罢了,比如腾讯比较喜欢C++(不过现在鹅厂很多业务也在转Go了),美团阿里比较偏Java一点。

如果你一心想去腾讯,那就好好学C++;比较喜欢阿里那就好好学Java,其余公司类似。

至于字节这边,Java、C++、Golang、Python都有的,具体要看部门了。

3、阿秀阿秀,你在学习过程中遇到困难是怎么解决的?

说实话,这个问确实不太好回答,但问的人很多啊。

我就简单说一下好了。

首先没有人在学习中不遇到问题的,比如编译环境不会配、软件安装失败、代码各种bug、Demo编译失败。

这些问题在你学习计算机过程中都会遇到,我建议利用好百度和身边资源

百度虽然某些地方不太人道,但搜索引擎这一块做的还是没毛病的。

百度一下,你就知道,把你的报错信息复制到百度上基本都能找到解决之道。

遇事不决问百度就完事了。

还有就是你身边的学长学姐、师兄师姐们,遇到问题了就大胆去问一下,不管是生活上的还是学习上的,

我的师弟师妹们找我问问题,我都会很负责任的解答的,每天至少会抽出30分钟 - 1个小时的时间来做免费答疑

对于粉丝大多数的问题我都能帮他们解决,对于某些比较刁钻的问题虽然有时候不能直接告诉他们某个问题的答案,但至少能给他们一个大概的方向或者告诉他们应该去哪些网站/查哪些资料/找哪些人。

这可比无头苍蝇一样到处乱撞要强的多。

我是阿秀,人生最可怕的事莫过于在别人放弃你之前,你先放弃了自己,我们下期再见。

推荐????:《逆袭进大厂系列》(包含C++、操作系统、计算机网络、MySQL、Redis、情景题)

推荐????:总有人在你不知道的时候,默默前行(他人经验)

推荐????:求职软实力(面试、话术、简历)

---END---

你好,我是阿秀,本硕均于普通双非学校就读,读书时做过写手、玩过爬虫、耍过单片机、搞 过GPU、搭过服务器。校招时拿下字节跳动SP、华为、百度等6个offer,现于抖音旗下担任全栈研发工程师,技术栈为C/C++/Golang/JavaSCript,前端缺人偶尔也能顶一手。

点击此处查看我的幡然醒悟的八个月自学经历,不是逆天改命也不是逆袭,只是多花了点时间和坚持。一路走来,很累也很不容易,希望能帮助到更多像我一样的普通学校的学生。我踩的坑不希望你再踩,我走过的路希望你照着走下来,欢迎扫描下方微信,找我唠嗑。

这是一个非常实际的问题:**JavaScript(JS)和 jQuery 哪个更容易?** 我们来从多个角度详细对比,并给出明确结论。 --- ### ✅ 总结一句话: > **jQuery 在“初期上手”时比原生 JS 更简单,但 JavaScript 才是根本。** > > 👉 习曲线:**jQuery 入门快 → JS 后劲强 → 最终必须掌握 JS** --- ## 🔍 一、为什么 jQuery 初看起来更简单? ### ✅ 1. 语法简洁,写得少 | 功能 | 原生 JS | jQuery | |------|--------|--------| | 获取元素 | `document.getElementById('box')` | `$('#box')` | | 隐藏元素 | `el.style.display = 'none'` | `$('#box').hide()` | | 绑定点击 | `el.addEventListener('click', fn)` | `$('#box').click(fn)` | | 发送请求 | `fetch('/api').then(...)` | `$.get('/api', function(res){})` | 👉 **jQuery 写法更短、更直观,对新手友好。** --- ### ✅ 2. 自动处理浏览器兼容性 比如在老版本 IE 中: - 原生 JS 的事件绑定要写 `attachEvent` - AJAX 要用 `new ActiveXObject("Microsoft.XMLHTTP")` 而 jQuery **内部帮你封装好了这些差异**,你只需要写一行代码就能跨浏览器运行。 这对初者来说是巨大优势! --- ### ✅ 3. 链式调用让逻辑清晰 ```js $('.item') .fadeIn(500) .delay(1000) .css('color', 'red') .slideUp(); ``` 这种“链式操作”读起来像自然语言,容易理解。 --- ### ✅ 4. 动画效果一键实现 ```js $('#panel').slideDown(300); ``` 原生 JS 实现同样的滑动动画需要自己计算高度、设置定时器,复杂得多。 --- ## ⚠️ 二、但 jQuery 的“简单”是有代价的 ### ❌ 1. 它不是真正的编程思维训练 - jQuery 让你专注于“做什么”,而不是“怎么做” - 不利于理解 DOM、事件循环、异步等核心概念 - 很多初者会了 `.click()` 和 `.hide()`,却不知道 `addEventListener` 是什么 📌 类比:就像用计算器做数题——算得快,但没会原理。 --- ### ❌ 2. 只能在引入库后使用 ```html <script src="https://cdn.jsdelivr.net/npm/jquery@3.6/dist/jquery.min.js"></script> ``` 👉 没有这行,所有 `$()` 都会报错。 而原生 JS 是浏览器自带的,不用依赖任何外部文件。 --- ### ❌ 3. 现代前端开发已转向框架(Vue/React),jQuery 不再主流 - 大厂项目基本不用 jQuery - 聘要求写的是 “精通 JavaScript” 而不是 “会用 jQuery” - Vue 和 React 的思想与 jQuery 完全不同(数据驱动 vs 操作 DOM) --- ## ✅ 三、到底该怎么?推荐路径 | 阶段 | 推荐习内容 | 目标 | |------|---------------|------| | 第一阶段(零基础) | 先一点 jQuery | 快速做出交互效果,建立信心 | | 第二阶段(入门后) | 回头原生 JS | 理解本质,打好基础 | | 第三阶段(进阶) | 现代框架(Vue/React) | 做复杂应用 | 🎯 推荐顺序: ``` HTML + CSS → 简单 jQuery(做点按钮交互)→ 系统习 JS 核心 → 放弃 jQuery → Vue/React ``` --- ## ✅ 四、举个例子:两种方式实现“点击按钮显示文字” ### 方式 1:jQuery(简单直观) ```html <button id="btn">点击我</button> <div id="content"></div> <script src="jquery.js"></script> <script> $('#btn').click(function() { $('#content').text('你好,世界!'); }); </script> ``` ✅ 新手一眼看懂。 --- ### 方式 2:原生 JS(更底层) ```html <button id="btn">点击我</button> <div id="content"></div> <script> document.getElementById('btn').addEventListener('click', function() { document.getElementById('content').textContent = '你好,世界!'; }); </script> ``` 🟡 稍微啰嗦一点,但你会了: - 如何获取元素 - 如何绑定事件 - 如何修改文本内容 👉 这些知识适用于所有前端技术栈。 --- ## ✅ 五、结论:哪个更简单? | 维度 | 结论 | |------|------| | **短期上手难度** | ✅ jQuery 更简单 | | **长期发展价值** | ✅ 原生 JS 更重要 | | **是否值得花时间深入 jQuery** | ❌ 不建议,了解即可 | | **应该把精力放在哪里** | ✅ 系统JavaScript 核心(变量、函数、对象、DOM、事件、异步) | --- ### 🎯 给你的建议: - 如果你现在刚入门,可以用 jQuery 做几个小练习(比如轮播图、选项卡),感受一下交互乐趣; - 但不要停留在 jQuery,**尽快转向系统习原生 JavaScript**; - 当你能用原生 JS 实现 jQuery 的功能时,你就真正“会前端”了。 ---
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拓跋阿秀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值