c++是不是吃透编程的必学语言 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
tianly1999
V2EX    Java

c++是不是吃透编程的必学语言

  •  
  •   tianly1999 2019-06-05 17:14:45 +08:00 8765 次点击
    这是一个创建于 2325 天前的主题,其中的信息可能已经有所发展或是发生改变。
    在校学生该怎么规划好自己的编程人生
    57 条回复    019-06-06 13:41:19 +08:00
    moodasmood
        1
    moodasmood  
       2019-06-05 17:33:14 +08:00   1
    个人路线,c->java->php->python->js->go
    zycpp
        2
    zycpp  
       2019-06-05 17:37:03 +08:00 via iPhone
    啥叫吃透?

    ps:为啥发在 java 节点…
    chendy
        3
    chendy  
       2019-06-05 17:39:54 +08:00
    吃透的标准是啥
    FelixLiu
        4
    FelixLiu  
       2019-06-05 17:41:36 +08:00   3
    c++之父都吃不透,没有人能完全理解 c++
    LokiSharp
        5
    LokiSharp  
       2019-06-05 17:42:57 +08:00 via iPhone
    VB->C->Java->Python->Kotlin
    jingyulong
        6
    jingyulong  
       2019-06-05 17:43:32 +08:00 via iPhone
    静态语言,动态语言,再来个汇编,C,差不多了。

    目前 python 应用最广,最划算。
    https://i.loli.net/2019/06/05/5cf78ebbd2afc61710.png
    zhuangzhuang1988
        7
    zhuangzhuang1988  
       2019-06-05 17:45:35 +08:00
    是的。
    4lokale
        8
    4lokale  
       2019-06-05 17:47:07 +08:00 via Android   6
    按照我的理解,
    百年前贵族研究各种学科,穷其一生,是因为他们不用为吃饭睡觉发愁。
    可是现在我们是要吃饭的,所以有一个度,适可而止得理解就行了。至于语言,看市场需求吧。
    Jirajine
        9
    Jirajine  
       2019-06-05 17:48:45 +08:00 via Android
    汇编 C++ js php/Java 足矣
    ccoming
        10
    ccoming  
       2019-06-05 17:49:08 +08:00
    lz 想说的是,能举一反三的语言吧?
    Salvation
        11
    Salvation  
       2019-06-05 17:52:18 +08:00
    不是。这么理解的话会出很多问题。

    有这个精力不如把计算机原理,编译原理学清楚。

    然后按照自己的路线选个语言搞清楚。(当然如果你想搞图形学,那还是学 c++吧)

    c++看上去很厉害,实际上也很厉害,但是从学习的角度来说恐怕性价比不高。因为现在行业要解决的问题,大部分都不是单机的问题了。而要解决单机的问题,往往是很专的领域,把基础打好更重要。
    midasplus
        12
    midasplus  
       2019-06-05 17:54:36 +08:00
    lz 的意思应该是为了吃透编程而学习 c++,而不是“吃透 c++”吧
    必学谈不上,但是学习 C++对于初学者来说应该有很多好处
    testeststs
        13
    testeststs  
       2019-06-05 17:55:07 +08:00
    学 C/C++的历史发展,才能认清其历史地位。
    zhujinliang
        14
    zhujinliang  
       2019-06-05 17:55:58 +08:00 via iPhone
    个人感觉一个 C,一个 C#或者 Java
    C 典型面向过程、更接近底层,对于算法和数据结构有很好的表现
    C#是典型的面向对象
    脚本语言的话,shell、python、php 可以选一个
    supuwoerc
        15
    supuwoerc  
       2019-06-05 17:57:43 +08:00 via iPhone
    吃透。。依我看是汇编语言
    testeststs
        16
    testeststs  
       2019-06-05 18:00:49 +08:00
    在校生必学,培训班除外。
    kiwier
        17
    kiwier  
       2019-06-05 18:00:50 +08:00   1
    汇编走起吧,编程界的九阳神功
    noli
        18
    noli  
       2019-06-05 18:01:26 +08:00   1
    从多范式这件事情来看,是。

    C++ 囊括了编程语言发展史上的几种重要编程思想。
    面向过程,可以写 C 甚至直接写 asm。
    面向对象,C++ 也是支持的,你还可以从中理解为何后来者如 Java C# 都不想做多继承等等问题。
    函数式编程,C++ template 是一个非常简陋的纯函数式编程。
    异步编程,可以试试 co_await 等新关键字,也可以试试直接用 boost context

    此外 C++ 深入底层,可以直接和操作系统打交道,对于理解一些架构设计为什么必须是如此,也是有所帮助的。
    natforum
        19
    natforum  
       2019-06-05 18:01:30 +08:00
    delphi-vb-c-java-python-go-rust-kotlin
    tt67wq
        20
    tt67wq  
       2019-06-05 18:05:04 +08:00   1
    上学好好学原理,语言不是重点。
    friddle
        21
    friddle  
       2019-06-05 18:05:14 +08:00
    基本上语言层面上卡我卡的最死的东西就是 C++。既不想写也不想学。想通的东西 rust 都可以搞定。问题就是你搞着搞着就发现还是得看 c++和 c++一套非常难用的工具链。

    我的语言逻辑是 c->python->java->kotlin.
    想看没能力搞定的东西 grpc,pycef,anbox

    假如只是学习。rust 真的好很多。
    zjyl1994
        22
    zjyl1994  
       2019-06-05 18:15:22 +08:00   2
    不是,c++之父都无法说自己精通这门语言,你怎么吃透。不干 c++这行的话,c 起手去学 java c#都挺好。找工作也方便。对动态语言好奇玩玩 python,php,想要 better c 去学 go,基本就是这样的了。
    tianly1999
        23
    tianly1999  
    OP
       2019-06-05 18:31:00 +08:00
    @111qqz 对对对
    bugeye
        24
    bugeye  
       2019-06-05 18:54:43 +08:00
    C++是吃透编程语言的语言。想吃透编程?那是算法的事情,和语言没什么关系。
    linvaux
        25
    linvaux  
       2019-06-05 19:04:09 +08:00 via Android
    不是,回答完毕
    xpfd
        26
    xpfd  
       2019-06-05 19:50:56 +08:00
    c 精通以后 其他的都可以触类旁通 所以说 c++不是 c 才是
    tianly1999
        27
    tianly1999  
    OP
       2019-06-05 19:59:14 +08:00 via Android
    计算机知识类目多,更新快,所以要把精力花在。。。。
    vkhsyj
        28
    vkhsyj  
       2019-06-05 20:00:18 +08:00
    c++ 是不值得学的语言
    season4675
        29
    season4675  
       2019-06-05 20:07:23 +08:00
    其实我个人非常推崇 C++的,单纯 C 肯定是不够的,学 C++,然后多看操作系统方面的知识,以后其他的语言都非常容易学了~~ 当然 C++太庞大了
    hkitdog
        30
    hkitdog  
       2019-06-05 20:07:26 +08:00 via iPhone
    用 C++ CRUD?
    wc951
        31
    wc951  
       2019-06-05 20:19:37 +08:00 via Android
    我原来大学 c++老师就很鄙视 c++,说学了出去找不到工作,所以那门课只是专业选修课,还没书面考试
    russian
        32
    russian  
       2019-06-05 20:21:02 +08:00
    c++不是难,而是范围大。你 c++学的差不多了其他语言学了发现都差不多
    carlclone
        33
    carlclone  
       2019-06-05 20:22:58 +08:00
    很多优秀的开源项目都是 C 写的 , 比如 Redis , 学了 C 还能看项目源码,当然是 C 啦
    smdbh
        34
    smdbh  
       2019-06-05 21:17:20 +08:00 via Android
    显然不是
    Cu635
        35
    Cu635  
       2019-06-05 21:26:40 +08:00
    @Salvation
    “有这个精力不如把计算机原理,编译原理学清楚”
    不要忘了学习这些也要有个载体,也要有个交流用的语言。
    wakan190
        36
    wakan190  
       2019-06-05 21:27:16 +08:00 via Android
    着眼于要解决的问题要更重要,在解决问题的过程中去学习
    Z0h2N4ZTHjHkI2v5
        37
    Z0h2N4ZTHjHkI2v5  
       2019-06-05 21:27:33 +08:00   1
    LZ 的意思应该是,我把钢琴搞定,大概所有乐器都差不多了吧
    2kCS5c0b0ITXE5k2
        38
    2kCS5c0b0ITXE5k2  
       2019-06-05 21:36:50 +08:00
    语言只是其次, 重要得解决问题的思想,为什么大牛无论换什么语言还是大牛,不是因为他用什么语言 而是他有这个思想在
    BCy66drFCvk1Ou87
        39
    BCy66drFCvk1Ou87  
       2019-06-05 21:38:20 +08:00 via Android
    C++学过几个月果断放弃,不得不说这东西太复杂了……
    GeruzoniAnsasu
        40
    GeruzoniAnsasu  
       2019-06-05 22:13:02 +08:00 via Android   1
    学习其它语言 ,感觉总在学习新机制

    学习 c++,感觉是一个不断用你熟悉的机制创造出你不熟悉的匪夷所思的东西然后让你了解原来自己根本不熟悉这个机制 的过程,就像握着一套万能开锁套件在撬各家的门。。。
    vipygd
        41
    vipygd  
       2019-06-05 22:32:42 +08:00
    绝对不是。学了几年 C++,工作用了几年 C++,发现 C++是一门变态的语言。
    chenoe
        42
    chenoe  
       2019-06-05 23:19:32 +08:00 via iPad   2
    绝对不是,学会任何一门语言都可以吃透编程,哪怕是 VB,易语言,或者再怎么次的语言,只要不是 HTML 那种的(……)
    语言只是帮助你表达出你的意思的工具,至于你到底想表达什么,那是你决定的,并且是通用的,所有语言到最后都一个意思啊(除了 HTML 之类的……)
    个人认为学编程广度确实很重要,但是深度还是更重要的(如果我有误解。恐怕是我数学不好的缘故 hhh )归根到底还是各种算法。各种排序和功能实现等等都是通用的,而且是参透编程的真正关键,只不过每种语言都有自己的特性而已,你讲英语和汉语不都是一个意思么,只不过不同的人听得懂的程度( 0 or 1 )不一样而已。
    PS:回楼主,我不会 C++(逃
    tianly1999
        43
    tianly1999  
    OP
       2019-06-06 00:06:08 +08:00 via Android
    本话题存在逻辑漏洞,不影响该讨论中心思想。中心思想就是本 lz 想通过各位秃头前辈获得经验,而不是标准答案
    tianly1999
        44
    tianly1999  
    OP
       2019-06-06 00:06:32 +08:00 via Android
    dartabe
        45
    dartabe  
       2019-06-06 01:07:33 +08:00
    我觉得学下 C 就可以了吧 个人感觉哈
    exonuclease
        46
    exonuclease  
       2019-06-06 01:33:34 +08:00
    不够的 c++包括了 oo 和命令式 还差一个函数式 建议 c++和 haskell 都学一下
    chenoe
        47
    chenoe  
       2019-06-06 01:37:50 +08:00 via iPad
    @tianly1999 我在校时的顺序是从非常简单的 sb 级别入手,先广后深,主要攻网页类的
    Visual Basic (当时我真的很渣。。) > HTML & H5 (不含 CSS ) > PHP (先 5 后 7 ) > Javascript > CSS > SQL ( MySQL > SQL Server > Orcale ) > ASP.NET > C > C++
    PS:当时我抱的是“学得浅一点没关系”的心态,功能实现就好(因为我设计真的不行)所以开始几个学得都挺浅的(当然后面要补)。另外,如果有时间其实当时我想补 VB.NET

    另外。考虑到楼主可能不是主攻网站制作。临时想了条线路:
    Visual Basic (有基础跳过) > Python > Java > C > (正则大法好) > Go > C++
    个人认为 Java 可以跳过,首先 Java 和 C 之类的差别好像真的有点大。。。Java 能提供的基础好像 Python 也都能提供了,而且 Python 现在看来比较热一点,未来就业啥的先打个基础(爬虫好啊)。再就是为什么我的虚拟机死装不上 jre ……
    补充:这里没有 OC 和 Swift 之类的,听说苹果审核真严 我就懒得学了。。。另外有特殊癖好的 VHDL 了解下(逃
    shadowwalker2644
        48
    shadowwalker2644  
       2019-06-06 01:40:57 +08:00 via Android
    不,汇编才是
    b00tyhunt3r
        49
    b00tyhunt3r  
       2019-06-06 02:00:13 +08:00 via iPad   1
    绝对是的。
    而且学精 c++你就有了一种迷之自信,看其他语言都像玩具。
    Cloutain
        50
    Cloutain  
       2019-06-06 09:12:36 +08:00
    真不是,程序设计语言与编译原理是根本
    Salvation
        51
    Salvation  
       2019-06-06 09:16:35 +08:00
    @Cu635
    1.学习编译原理、计算机原理的载体一定是 c++?
    2. 我有说不学一门语言吗?我在说的是不一定要选 c++,麻烦看清楚再回。
    xuddk727
        52
    xuddk727  
       2019-06-06 09:38:11 +08:00   3
    吃透干嘛,我写了十多年 C++代码,看一些人的代码仍感觉云里雾里,而且 C++市场在逐步萎缩,后来者学习一下可以,钻精性价比并不高
    yingo
        53
    yingo  
       2019-06-06 10:32:49 +08:00
    曾经是主力语言,后来弃了.现在 c,java,c#,js,php,lua,做什么就用什么语言不要太爽.
    cyspy
        54
    cyspy  
       2019-06-06 10:55:09 +08:00
    lisp 才是真正吃透的必学语言
    karllynn
        55
    karllynn  
       2019-06-06 11:58:42 +08:00
    不是,c 和 lisp 才是
    darknoll
        56
    darknoll  
       2019-06-06 12:59:10 +08:00
    现在 99.99%程序员干的活,不需要用 C++,杀鸡焉用牛刀
    相当多的 C++程序员其实也就是把 C++当 c with classes,让他换个其他语言,他一样还是差水平。
    cookey39
        57
    cookey39  
       2019-06-06 13:41:19 +08:00 via Android
    这是一个悖论,比如说你想学习 python 的面对对象,那你直接去学 python 就好了啊。想学 Javascript 的函数式编程,那就直接看 Javascriptl 就好了啊。
    就比如说你想去美国,直接去美国就好了,有人跟你说先去朝鲜,朝鲜离美国近,还有主体思想的照耀。
    任何一门主流语言对应的生态都不是一天两天能弄懂的,说什么学会了 c++其他语言一通百通,最多只是基础语法层面上的,然而基础语法只是编程的一小部分。
    天知道那些人之前学 c++花了多久。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5110 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 39ms UTC 09:23 PVG 17:23 LAX 02:23 JFK 05:23
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86