V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zzzzzzggggggg
V2EX  ›  程序员

急着转行程序员的人别学 Python 和 C++

  •  
  •   zzzzzzggggggg · 167 天前 · 6632 次点击
    这是一个创建于 167 天前的主题,其中的信息可能已经有所发展或是发生改变。

    转发一篇文章: https://mp.weixin.qq.com/s/HRUG-S-5fBiZCxoS1sumCw

    最近有一些朋友咨询我转行的事情,很多人想学 python 或 c++并且想靠它们找到工作,我想说千万别这样想。

    为什么呢?

    首先你目前的需求是要急着转行并且要找到工作找到吃饭的家伙,那么你首先要考虑的是:

    学的东西是不是有足够多的岗位

    学的东西可以让你比较快的进入到干活阶段

    1.先说 python 。

    python 这门语言语法很简单入门很容易,但是它的岗位比较少,大部分是数据处理、算法调包、web 后端,而且数据处理、算法调包的工作重点也不是 python ,而是数据和算法知识,也就是说你学了 python 也找不到这种工作;还有就是纯拿 python 来做 web 后端的公司很少,据我所知早期的知乎、字节跳动的部分系统是 python 后端,现在应该都重构完了

    所以你学了 python ,工作岗位很少,急着转行的你学它干啥?别听培训班说什么“你要悄悄学 python 然后惊艳所有人”那都是瞎扯

    2.再说 c++

    c++这门语言很好,但是比较繁琐语法比较多,新手很难出活儿。它主要是运用在系统编程、后端、高性能计算等等,好像还可以用来做客户端,但是现在应该也被其他语言比如 js 蚕食了,据我所知大公司里面用 c++比较多的是腾讯,但是现在部分新系统也在往 go 语言上迁移了,因为 go 语言简单易学好出活儿。

    所以急着转行的你为啥要去花很长时间学习一门岗位并没有很多的语言呢?

    3.急着转行适合学什么?

    我个人看法是:Java 后端或前端

    原因就两点:简单易学且工作岗位多。你们平时可以去招聘软件看看,招 java 或前端的很多,客户端就别学了,现在客户端的市场被小程序以及前端蚕食了很多。

    4.总结

    转行是个大事,我身边有转行成功的,大厂里面也有很多其他专业的同事,程序员这个职业比较看重实力,但是很明显它对学历的要求也在逐渐提高,转行的朋友擦亮眼睛

    有什么问题可以在评论区问我,有空了我就会回答

    98 条回复    2022-03-03 22:14:10 +08:00
    hello2090
        1
    hello2090  
       167 天前 via iPhone   ❤️ 2
    不是应该学深度学习吗?
    ChuJunn
        2
    ChuJunn  
       167 天前
    多谢楼主转发,借楼问下 v 友们入门有没有好一点的教程,纯小白
    zzzzzzggggggg
        3
    zzzzzzggggggg  
    OP
       167 天前
    @ChuJunn 你可以试试
    zzzzzzggggggg
        4
    zzzzzzggggggg  
    OP
       167 天前
    @ChuJunn 想学什么
    littlewing
        5
    littlewing  
       167 天前   ❤️ 2
    为何不试试 rust 呢(手动狗头.jpg )
    plko345
        6
    plko345  
       167 天前 via Android   ❤️ 1
    @littlewing rust 也就比 c++简单一点点
    zzzzzzggggggg
        7
    zzzzzzggggggg  
    OP
       167 天前
    @littlewing 友军厚葬吧
    bzshow1
        8
    bzshow1  
       167 天前 via Android
    确实转码的最好学 java 和前端 vue react
    zzzzzzggggggg
        9
    zzzzzzggggggg  
    OP
       167 天前
    @bzshow1 感谢认同
    ruyu
        10
    ruyu  
       167 天前   ❤️ 1
    > c++这门语言很好

    不, 我认为这门语言很不好
    fanxasy
        11
    fanxasy  
       167 天前
    @hello2090 不是应该学量子力学吗
    sirius4gnu
        12
    sirius4gnu  
       167 天前   ❤️ 13
    现在的公众号写文章,能知道 c++已经很不容易了,大家还是支持下吧。
    3dwelcome
        13
    3dwelcome  
       167 天前
    这就和股票投资一样。

    学 Py AI 方面和 C++底层方面的,属于高风险高回报。长期收入大多要比前端和 JAVA 要好。当然学习曲线和找工作难度也高。

    而前端是低风险,但人人都去学,也很卷,不知道什么时候就再次被迫转行。你说市场上小程序和网站需求很大,可是很多都是换皮就能做的项目,没深层次技术壁垒。以后一旦低代码普及,又要淘汰一批人。
    dorentus
        14
    dorentus  
       167 天前
    Rust 比 C++ 简单?一点点?
    qaqLjj
        15
    qaqLjj  
       167 天前
    前端最简单
    wonderfulcxm
        16
    wonderfulcxm  
       167 天前 via iPhone
    如果只是面向工作,你说的是对的。
    ampedee
        17
    ampedee  
       167 天前 via iPhone
    作为一个自学 python 转行的过来人,同意楼主关于 python 的看法。
    如果当时学的是前端,三年经验应该可以拿现在薪资的两倍了。
    fpure
        18
    fpure  
       167 天前   ❤️ 1
    @dorentus rust 当然比 c++简单,就比如移动语义,rust 所有权系统天然支持移动语义,而 c++有值类别、左值右值亡值、左值引用、右值引用、万能引用、引用折叠、拷贝构造、移动构造、std::move 、std::forward 等等概念
    littlewing
        19
    littlewing  
       167 天前
    @fpure C++ 这些东西都是因为历史包袱,需要兼容,所以搞得四不像。之所以大家觉得 rust 比 c++ 难是因为 c++ 相比 rust 而言,太自由了
    helloworld000
        20
    helloworld000  
       167 天前
    可以先学个 Python 有一些基本的基础

    然后再学 js nodejs 这些前端的东西
    leimao
        21
    leimao  
       167 天前 via iPhone   ❤️ 1
    干什么都是卷和猝死。还是蓝翔挖掘机技术人员稀缺。
    pengtdyd
        22
    pengtdyd  
       167 天前
    学什么不重要,重要的是能挣钱
    wm5d8b
        23
    wm5d8b  
       167 天前 via Android
    急着转行程序员的人还是别转行,不是什么人都有能力做程序员,还不如接单送外卖
    JasonFW
        24
    JasonFW  
       167 天前 via iPhone
    哈哈哈哈
    murmur
        25
    murmur  
       167 天前
    java 是滑冰,android 是滑雪,c++那是深潜
    power100
        26
    power100  
       167 天前
    主观转行想入 C++这个坑的概率应该很低吧。一般都是打算从这个坑里跳出来的。
    zeromake
        27
    zeromake  
       167 天前
    急转确实只有前端和 java 后端比较合适,主要是岗位多,不过 C# 看起来竞争不多不知道怎么样。
    seven123
        28
    seven123  
       167 天前
    Python 确实不太推荐,干了两三年发生身边的人都转了 go 或者其他,如果是找工作的话首推 Java ,但是 Java 是真的卷啊,有一定工作经验的可以试试学学 Go 去卷卷
    yuhaijiang2019
        29
    yuhaijiang2019  
       167 天前
    之前为了数据分析学了 python,面试时候问的也很高大上,实际入职以后 excel 变成我主要工具,python 可以说是完全没用过,四个多月提桶跑路
    zooeymango
        30
    zooeymango  
       167 天前
    急转确实基本都是这两条路, 不过入了门怎么学都可以随意了, 有一门语言的基础学其他都挺快的
    sunhelter
        31
    sunhelter  
       167 天前
    @zeromake 招不到人,能收到简历但是估计是因为只有专科开 C#课,所以本科都寥寥无几,公办本科百分之一。个人认为比 Java 竞争小多了,而且像我们传统行业工作强度也不像互联网那么大,6 点下班 6 点半公司基本就没人了
    hu8245
        32
    hu8245  
       167 天前
    @plko345 兄弟这话是认真的吗?感觉 rust 曲线比 CPP 陡峭啊
    daimubai
        33
    daimubai  
       167 天前
    python 适合当辅助语言,写个简单的脚本,简单爬点数据什么的。

    面向找工作的话还是 Java 、Vue ,虽然卷,但是只要肯努力学习,还是有口饭吃的吧
    dorentus
        34
    dorentus  
       167 天前
    @hu8245 仔细想想,我觉得他说的也对。Rust 因为把很多东西都显示地暴露出来,需要程序员在写代码的时候必须关注,所以显得比较难上手。而 C++ 乍一看有 C 基础就能写,但是隐藏的东西比较多,容易写出坑……
    andy2415
        35
    andy2415  
       167 天前
    建议 js 进可攻退可守, 前端后端一把梭
    zzzzzzggggggg
        36
    zzzzzzggggggg  
    OP
       167 天前
    @sirius4gnu 加油
    zzzzzzggggggg
        37
    zzzzzzggggggg  
    OP
       167 天前
    @fanxasy 遇事不决,量子力学?
    zzzzzzggggggg
        38
    zzzzzzggggggg  
    OP
       167 天前
    @3dwelcome 我看法不太一样,大部分搞 py 和 c++的也是在搬砖,大部分前端也是在搬砖,既然都是在搬砖,不如找个岗位多的轻松的
    zzzzzzggggggg
        39
    zzzzzzggggggg  
    OP
       167 天前
    @qaqLjj 确实简单,随便一学就能找到月薪 3 万的工作
    zzzzzzggggggg
        40
    zzzzzzggggggg  
    OP
       167 天前
    @wonderfulcxm 我说的就是针对面向找工作的,不管干啥,先入行再说
    zzzzzzggggggg
        41
    zzzzzzggggggg  
    OP
       167 天前
    @ampedee 大部分人都是被培训班忽悠瘸了
    zzzzzzggggggg
        42
    zzzzzzggggggg  
    OP
       167 天前
    zzzzzzggggggg
        43
    zzzzzzggggggg  
    OP
       167 天前
    @leimao 挖掘机工资不低,一万应该没问题
    zzzzzzggggggg
        44
    zzzzzzggggggg  
    OP
       167 天前
    @pengtdyd 确实
    zzzzzzggggggg
        45
    zzzzzzggggggg  
    OP
       167 天前
    @wm5d8b 外卖工资涨了
    zzzzzzggggggg
        46
    zzzzzzggggggg  
    OP
       167 天前
    @murmur 那 JavaScript 是什么?
    zzzzzzggggggg
        47
    zzzzzzggggggg  
    OP
       167 天前
    @power100 那你是没接触一些转行的
    zzzzzzggggggg
        48
    zzzzzzggggggg  
    OP
       167 天前
    @seven123 Java 稳如老狗,go 可以试试
    zzzzzzggggggg
        49
    zzzzzzggggggg  
    OP
       167 天前
    @andy2415 可以
    zzzzzzggggggg
        50
    zzzzzzggggggg  
    OP
       167 天前
    @daimubai 确实
    zzzzzzggggggg
        51
    zzzzzzggggggg  
    OP
       167 天前
    @yuhaijiang2019 听到数据分析都头疼,培训班就爱教这个,Python 数据分析、人工智能
    zzzzzzggggggg
        52
    zzzzzzggggggg  
    OP
       167 天前
    @zeromake C sharp 在欧美还行,在国内不行
    lwldcr
        53
    lwldcr  
       167 天前   ❤️ 1
    这一排回复就离谱 op 不知道可以在一个回帖里回复多个人吗
    paoqi2048
        54
    paoqi2048  
       167 天前   ❤️ 1
    插一句,C++是游戏开发的事实语言,所以还是要看细分领域
    henshang
        55
    henshang  
       167 天前   ❤️ 1
    @lwldcr 我也喜欢这么回复,要回给每个人的内容是不一样的啊 @zzzzzzggggggg
    3dwelcome
        56
    3dwelcome  
       167 天前
    @zzzzzzggggggg "我看法不太一样,大部分搞 py 和 c++的也是在搬砖,大部分前端也是在搬砖,既然都是在搬砖,不如找个岗位多的轻松的"

    软件的核心在于算法。

    能用前端写出核心算法是极少数人。大部分人就算进了公司,靠前端岗位也很难进入核心团队,被替代性很强的。

    每一种语言都有强势和弱势,但是要说最有潜力的语言话,我最看好 WASM 。未来通吃前后端,微端,客户端。
    triptipstop
        57
    triptipstop  
       167 天前
    都转 java 了,php 反而容易找了。。
    3dwelcome
        58
    3dwelcome  
       167 天前
    @paoqi2048 游戏不都是 u3d 的天下嘛,都是 C#。

    如果自己用 C++从头开发游戏引擎,那真的是稀有动物了。
    LowBi
        59
    LowBi  
       167 天前 via Android   ❤️ 1
    来 Java 卷?真没必要,到时大家能吃的饭越来越少。必须要多元化
    harwck
        60
    harwck  
       167 天前   ❤️ 1
    我买课还不行吗?
    leafre
        61
    leafre  
       167 天前
    java 卷起来
    zzzzzzggggggg
        62
    zzzzzzggggggg  
    OP
       166 天前
    @lwldcr 哦哦好的
    zzzzzzggggggg
        63
    zzzzzzggggggg  
    OP
       166 天前
    @harwck 去油管找教程吧,别买课
    zzzzzzggggggg
        64
    zzzzzzggggggg  
    OP
       166 天前
    @3dwelcome 你们公司有落地 WASM 的么?核心团队你得看当前的业务是什么形态的
    zzzzzzggggggg
        65
    zzzzzzggggggg  
    OP
       166 天前
    @LowBi 急着转可以去卷一卷
    zzzzzzggggggg
        66
    zzzzzzggggggg  
    OP
       166 天前
    @henshang 谢谢,我也习惯这么回
    Felldeadbird
        67
    Felldeadbird  
       166 天前   ❤️ 1
    Java 永远最稳。 其次现在流行 Java 的 script 。 前后搭配干活不累。
    encro
        68
    encro  
       166 天前
    看目标:

    1 ,刚毕业打算急迫找工作 -》 java ,前端确实最好找;
    2 ,大学生或者已有工作打算深造 -> C++,Rust,Python 都需要掌握下算是必学
    zzzzzzggggggg
        69
    zzzzzzggggggg  
    OP
       166 天前
    @encro 2 我有不同意见,如果是已有工作打算深造,应该是看当前业务能落地什么带来最大收益,把事情确定好了再去找技术实现和学语言,而不是某某语言是必学
    encro
        70
    encro  
       166 天前   ❤️ 1
    为什么 C++,Rust,Python 是深造必学呢?

    C/C++是历史遗留下来的基础,要深入需要掌握基础,Java,C#都有 C++遗留的影子。掌握后其他语言就变得容易了。对底层也熟悉了,会“没有不能解决的问题”。

    Rust 是 C++工程化和重新思考的升级版,现代对面向对象,工程学,面向过程,模块化,性能,安全性的一个实践,结合了 C++,Go,Ruby 等的优点。现在还有 WASM ,区块链,物联网,Linux 加持,学习起来实用性其实很强和 C++一个档次。

    Python 是数据科学,人工智能的当下最佳浅学习工具,学习了解下不至于成为以后的计算机盲。
    encro
        71
    encro  
       166 天前   ❤️ 1
    @zzzzzzggggggg

    刚好补充了我的理由,

    不是每个人必学,也不是一定都要马上学习,而是作为哪些再技术领域有追求的人必学吧。
    zzzzzzggggggg
        72
    zzzzzzggggggg  
    OP
       166 天前
    @encro
    MCyunpeng98
        73
    MCyunpeng98  
       166 天前
    java 好卷啊,转 Golang 可以吗?有哪些就业方向呢
    encro
        74
    encro  
       166 天前   ❤️ 1
    @MCyunpeng98

    Go 只有一个就业方向 -> 大厂
    paoqi2048
        75
    paoqi2048  
       166 天前
    @3dwelcome 你往下走几步就遇到 C++了,这几十年 C++在游戏领域的积累太深了,要深耕的话目前来看暂时躲不掉
    dcsuibian
        76
    dcsuibian  
       166 天前
    Python
    dcsuibian
        77
    dcsuibian  
       166 天前
    按错了。。。
    学了 Node.js 后已经很久没用过 Python 了,感觉用处真的不大。
    都是动态脚本语言。
    js 单线程,Python 假多线程。
    js 中的异步支持可以说是嵌到骨子里的,Python 虽然有 async/await 但第三方支持库并不好。
    js 保底还能做个前端。
    爬虫。。。js 执行 DOM ,客户端渲染,无头浏览器 playwright 。

    除了那些人工智能啥的我真心觉得 Python 用处不大。

    其它行业的学个语言 Python 还是不错的(毕竟 js 有许多设计缺陷以及很重的历史包袱),但如果是程序员我还是比较建议 js 。
    zzzzzzggggggg
        78
    zzzzzzggggggg  
    OP
       166 天前
    @dcsuibian 同感
    karatsuba
        79
    karatsuba  
       166 天前
    @dcsuibian 你推荐 node 没必要踩 py 一脚,而且踩的也不对地方
    dcsuibian
        80
    dcsuibian  
       166 天前
    @karatsuba 主 Java ,js 接触早,但认真学的话是 Python 先的,后面想写 web 不得不用 js 才去学的。早期还因为 js 的设计缺陷比较抵触它。后面 Python 真的就越用越少,现在几乎不用了。
    这俩都不是我的主力语言,不能说完全客观,至少也没带什么特殊情绪。
    YaakovZiv
        81
    YaakovZiv  
       166 天前
    赞同,学之前先看看岗位需求更靠谱一些。
    snoopyhai
        82
    snoopyhai  
       166 天前
    转什么不好,都劝转前端?
    你们光看着 vue 好入门了,你们没纵观一下前端?
    最初的 xhtml 语义+css2 表现+js 逻辑,这时候痛苦的应该是 css 的兼容性,js 的兼容。
    进化到 h5+css3 酷炫+jquery ,这时候通过的基本上就是 css 的兼容和 png 透明,还有些 hack 处理。
    再进化到三大框架+类 tailwind 。
    下一步 svelte ? deno ? Web Component ?还是什么乱七八糟的新框架?
    三天两头更新技术栈很好玩??
    xusanduo2019
        83
    xusanduo2019  
       166 天前
    @littlewing rust 学习曲线太陡了吧
    Tom7
        84
    Tom7  
       166 天前
    java 都卷成这样了,还来一波推荐
    zhangchongjie
        85
    zhangchongjie  
       166 天前
    py 不清楚,但是不赞同 c++,现在虽然游戏行业不看好,但是现在政策不是说了做实业吗,工控,嵌入式,音频视频,很多都是用 c++来写的,但是确实出活慢,适合已经就业转行来学,这样语法上学习理解更容易
    zhangchongjie
        86
    zhangchongjie  
       166 天前
    @power100 我想入坑啊,现在从事 java ,毕竟现在政策不一样了,面向 spring 的 java ,电商现在已经萎靡了,不是吗
    3dwelcome
        87
    3dwelcome  
       166 天前
    @zzzzzzggggggg "你们公司有落地 WASM 的么?核心团队你得看当前的业务是什么形态的"

    figma 成功,已经很说明问题了,商业上 WASM 是没问题的。

    学 WASM 是对标 JS 的,现在流行前端用 js ,后端也用 nodejs 。但是 JS 入门容易,想写好很难,写巨型软件更是难上加难。

    现在后端 WASM 已经支持容器运行了,这年头不能只看眼前利益,JS 快速堆个前端软件容易,要运营要竞争过同类软件,还是需要一点不同技术栈的。
    OSong
        88
    OSong  
       166 天前
    感觉新人入行的话,学前端挺好的。因为不管公司后端是 PHP 还是 Java 都需要前端。 哈哈哈
    guabimian
        89
    guabimian  
       166 天前   ❤️ 1
    现在互联网行业的形式 要把眼光多往工业互联,行业软件,工控,专业软件领域看看啦
    恰恰是 C++,pyhon 重点方向,而且这些领域的积累是真的会发挥经验的价值,大龄问题大幅缓解
    。做网站的是不是目光就只锁定在这三板斧。
    encro
        90
    encro  
       166 天前   ❤️ 1
    Rust 学习曲线陡峭吗?

    还好,我有一点点的 C++基础,大概 2 周看视频,2 周看手册,总共一个月的晚上,可以开始慢慢写项目能用的项目了-----事实是我话了 2-3 周左右学习 Rust+OpenCV 写了一个图片去背景的 web 服务,这个算是简单的服务,如果复杂点的我认为一个月差不多能写,现在正在晚上有空就用 Rust 写服务端和客户端。

    如果有深厚 C++和操作系统基础,我觉得两周差不多了能上手了。

    Rust 其实是看起来东西多,很难,其实是很多都工程化了,你在学软件工程,测试思想,各种库。


    对于已有经验的程序员,熟练掌握一门语言(能找到工作):

    Rust 大概需要 6 个月经验;

    用 C++大概要 2 年经验;

    当然 C#,Java ,Node ,PHP 大概 2-4 个月就可以了;

    Python 可能也要 6 个月(写一个可用程序可能 1-2 周,但是要想掌握并合理运用所有 Python 技能大概也要 6 个月,所以和 Rust 差不多,甚至比 Rust 更长,因为 Python 太多历史遗留需要你去了解的了----当然很多时候我们不需要掌握这么多够用就行)
    encro
        91
    encro  
       166 天前
    @guabimian

    完全赞同

    一直搞 web 也没意思,人口红利已经到顶了,接下来是计算机在各行各业的深度运用。
    DeWjjj
        92
    DeWjjj  
       166 天前   ❤️ 1
    有一门万金油叫 JavaScript ,这是基本上目前网页躲不过的玩意了。
    chuanqirenwu
        93
    chuanqirenwu  
       166 天前   ❤️ 1
    python, js, rust, go 都学一学。
    zzzzzzggggggg
        94
    zzzzzzggggggg  
    OP
       165 天前
    @guabimian “工业互联,行业软件,工控,专业软件领域”,感觉这是个比较大的话题了,目前国内发展的如何?
    zzzzzzggggggg
        95
    zzzzzzggggggg  
    OP
       165 天前
    @3dwelcome figma 不错
    zzzzzzggggggg
        96
    zzzzzzggggggg  
    OP
       165 天前
    @encro “一直搞 web 也没意思,人口红利已经到顶了,接下来是计算机在各行各业的深度运用”,这句话感觉是个很大的话题了,展开说说?
    mmg114514
        97
    mmg114514  
       164 天前 via Android
    python 作为工具而言实在很好用,,,尤其在那些与编程无关的行业中,,,
    wuxinli1025
        98
    wuxinli1025  
       160 天前
    Javascript 一统江湖 啥都能干
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3228 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 85ms · UTC 04:43 · PVG 12:43 · LAX 21:43 · JFK 00:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.