V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Duodenum
V2EX  ›  问与答

C++服务器开发工程师的未来前景如何?和 Golang 还有 Python 相比呢?

  •  1
     
  •   Duodenum · 2017-10-27 00:30:40 +08:00 · 9349 次点击
    这是一个创建于 2610 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题,非引战,希望大家理性讨论。

    30 条回复    2019-10-09 18:14:47 +08:00
    kevinzhwl
        1
    kevinzhwl  
       2017-10-27 00:36:59 +08:00
    我还想入门呢,怎么就这么快就没前景了?
    lsmgeb89
        2
    lsmgeb89  
       2017-10-27 00:57:54 +08:00
    同问,顶起来
    Phariel
        3
    Phariel  
       2017-10-27 02:24:43 +08:00
    关键是什么业务,语言都是其次。
    WildCat
        4
    WildCat  
       2017-10-27 02:25:21 +08:00 via iPhone
    嵌入式人工智能很需要吧 底层
    Cooky
        5
    Cooky  
       2017-10-27 07:39:21 +08:00 via Android
    当然是哪个综合成本低用哪个
    shallyy
        6
    shallyy  
       2017-10-27 08:17:25 +08:00
    学好了前者 精通后两个易如反掌.
    admirez
        7
    admirez  
       2017-10-27 08:23:30 +08:00 via iPhone
    @shallyy 易如反掌……
    2225377fjs
        8
    2225377fjs  
       2017-10-27 09:26:46 +08:00
    现在游戏服务器不少是 python 和 golang 写的啊
    coderluan
        9
    coderluan  
       2017-10-27 09:43:54 +08:00
    C++服务器开发基本就是没前景,对公司来说成本太高,性能虽好但是堆硬件更便宜。
    C++服务器开发工程师分三种吧:
    死守 C++服务器,那样还是没前景。
    放弃 C++坚持服务器,学个 golang 啥的太容易,前景和之前不会有大区别。
    放弃服务器去学 C/C++为主的是偏向底层性能相关的领域,说不定会上一个台阶,当然这个不好学。
    Duodenum
        10
    Duodenum  
    OP
       2017-10-27 11:16:24 +08:00 via iPhone
    @coderluan 对于刚毕业的本科生来说,选择先做 C++再转其它好呢?还是直接 Python/GolangGolang 好呢?或者是一直做 C++?
    coderluan
        11
    coderluan  
       2017-10-27 11:25:26 +08:00
    @Duodenum #10

    都毕业了,哪个学的好找哪个的工作呗,毕竟转别的需要时间,也不能不工作啊。
    在校的学生,如果想做服务器选 Java,想做数据方面选 Python,想做算法图像之类的选 C/C++,golang/node 之类个人不建议作为第一语言,工作之后再学比较好。
    abcbuzhiming
        12
    abcbuzhiming  
       2017-10-27 11:29:28 +08:00
    目前 C++在关键位置仍然无法替代,但是关键位置的岗位会缩减,这是趋势
    @shallyy C++的学习成本非常高,我个人认为如果不是相当有天分,“学好 C++”后再去学其它的我觉得真的是幻想,你找几个人敢说自己“ C++学的很好”的?从其它语言入手,然后逐渐的在工作中渗透 C++的一部分,我觉得是比较合适的做法
    Duodenum
        13
    Duodenum  
    OP
       2017-10-27 11:33:27 +08:00 via iPhone
    @coderluan 有 C++的 offer 和 Python+Golang 的 offer 了,在犹豫选哪一个更好一些…
    coderluan
        14
    coderluan  
       2017-10-27 11:35:04 +08:00
    @Duodenum #13 选后者。
    yhvictor
        15
    yhvictor  
       2017-10-27 11:36:57 +08:00 via iPhone
    有时候需要手工管理 gc,不知道 c 以外的怎么办
    ini
        16
    ini  
       2017-10-27 11:40:15 +08:00 via iPhone
    @coderluan 不要乱下结论。
    northisland
        17
    northisland  
       2017-10-27 11:42:03 +08:00
    大概比纯 python 好吧

    不会搞 C++的 pythoner,顶多是中级水平吧
    coderluan
        18
    coderluan  
       2017-10-27 11:46:22 +08:00
    @ini #16 (我推荐)选后者,下结论只能是楼主。
    ini
        19
    ini  
       2017-10-27 11:56:53 +08:00 via iPhone
    @coderluan 我说的是你#9 的结论,不够准确。
    firefox12
        20
    firefox12  
       2017-10-27 12:02:38 +08:00
    c++ 学到熟练的话, 基础比 python go 的熟练高得不是一星半点。想精通的话 智力不足,玩不起来。
    学了 c++ 再学 python go 那简直砍瓜切菜,你会发现 原来 python go 用这种方法解决了,我原来很麻烦的地方。

    c++纯学习很难学, 需要结合 unix 网络编程和 unix 系统编程。 纯学习 c++ 语法 技巧是没有意义的。
    firefox12
        21
    firefox12  
       2017-10-27 12:04:19 +08:00
    但是我推荐大家学 java 工作机会比起来也差得不是一星半点。互联网行业基本上 java 全覆盖 秒杀了 c++
    除了搜索 游戏 还有机会,其他 c++基本都被干光了。
    qooweds
        22
    qooweds  
       2017-10-27 12:09:56 +08:00
    C++服务器就业面实在太窄了 除了你能在游戏行业死加班
    python 相对好一点,但是也不是很理想
    做服务器开发只有 Java 才是理性的选择
    当然这都是对普通人而言,你对自己技术实力有自信大可选择你最喜欢的语言
    coderluan
        23
    coderluan  
       2017-10-27 12:18:57 +08:00 via Android
    @ini 那你就说“我认为你的观点不准确,因为什么什么”就好了,从感情色彩来说,观点不准确和乱下结论可是两回事。
    chiu
        24
    chiu  
       2017-10-27 12:38:27 +08:00 via Android
    什么情况 mark
    introom
        25
    introom  
       2017-10-27 12:45:23 +08:00 via Android   ❤️ 1
    看你是什么性格的人,以后又想做什么。CPP 是经历时间考验的东西,是 ISO 委员会制定的标准,你选他不会出大问题。只是真的要熟练 CPP,得多写多练多思考。看似很繁琐的规矩,其实不需要死记硬背,因为它背后都有可以理解的历史的局限性或者实现的复杂性的制约。举个例子,为何对于 temporary, const reference 能延长它的生命周期,但是却不能超过 enclosing function. 虚函数的参数修正通常用 thunk, 那这样制约了虚函数的什么功能? 都是很简单的东西,多思考,融汇贯通。

    然后到最后你发现这些毛用都没有。那些搞高频交易的,竟然只是在用去掉 GC 的 Java.
    nicevar
        26
    nicevar  
       2017-10-27 22:58:50 +08:00
    看环境,一二线城市选择新潮的高大上的,讨论起来能口水满天飞的那种
    如果是小城市或者以后考虑回到小城市可以学一下 c++,工作机会还多点,甚至能拿一线城市的薪资,而且不用加班
    gamexg
        27
    gamexg  
       2017-10-28 19:20:56 +08:00 via Android
    楼上说的都很清楚,c++虽然在一些领域不可代替,但是应用范围并不广。
    如果是在学校,建议学一下,但是不建议后期选 c++就业,除非你是大牛。
    lsmgeb89
        28
    lsmgeb89  
       2017-11-01 14:43:01 +08:00 via Android   ❤️ 1
    好无趣,web 时代都是烂大街的 Java,快糙猛的搞搞,感觉少了份精致,手艺的感觉不在了。
    Coeus999
        29
    Coeus999  
       2019-03-11 18:36:19 +08:00
    c++可以考虑的方向:1 )低延迟领域,比如金融,尤其是高频交易; 2 )偏底层性能优化,如 Intel、数据库类、编译器类公司。在这些领域里,c++人才稀释比例远远低于 Java 所应用的领域,方差也更大。
    感兴趣了解更多的,加我微信详聊:18666933727 (我是猎头)
    Ingran
        30
    Ingran  
       2019-10-09 18:14:47 +08:00
    同问
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3604 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 10:32 · PVG 18:32 · LAX 02:32 · JFK 05:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.