你们会向新人推荐 C++么?

2016-08-18 11:07:45 +08:00
 xiqingongzi
/t/300012 提问 C++ 的路线图,很多人都在劝我放弃
但我是起意学 C++ 一方面是个人需要,另一方面是我的一个堂叔推荐我学 C++的。

什么样的情况下你会推荐别人学 C++ 。什么情况下不推荐 C++?

我觉得我堂叔不至于坑我吧....
11973 次点击
所在节点    C
174 条回复
owt5008137
2016-08-18 12:01:49 +08:00
C++上手慢,需要大量计算机基础。如果不能保持专研和保持时间投入的话是看不到什么成果的。

当然如果 C++有一定积累之后的好处是,学什么其他东西都可以从原理直接入手而比较快。

所以,如果对没有兴趣或者持续投入的决心的人,我不会推荐他 /她学 C++。
FrankHB
2016-08-18 12:20:26 +08:00
新人到什么程度?
基本上所有的工业级 C-like 的语言都不适合多数没有计算机科学(史)常识的新人。因为这些语言就不是设计出来服务新人入门的,坑的种类数不清,靠经验扛太耗青春。加上这方面优越感爆棚的半吊子和烂文献资料无数,很可能一知半解就学傻了,事后遇到其它需求还得回头再忘掉一些民科知识。
如果有其它语言的经验,仍然不推荐 C++,因为 C++的坑异于常人。只不过有些任务没有其它更合适的情况下不得不硬着头皮上而已。
想自己照搬设计通用目的语言的,参考 C++倒是优先于参考 C 和其它标准更不完备的语言。但有这种需求的不算是一般所谓的新人了吧。
FrankHB
2016-08-18 12:23:42 +08:00
不管是不是新人,是不是业内人士,是不是混饭,用到什么就学什么(但不要什么都信,须知设计者的智商和见识也是有上限的,别太早认定就是最优方案)是关于此类风险最小的一般策略。
FrankHB
2016-08-18 12:31:13 +08:00
@xiqingongzi 你叔叔推荐你 C++可能有那么几个原因:
当时 C++风头正健,“流行”,“学会”了不担心饿死(事实证明这个基本上不靠谱);
C++啥都能干(这个对新手来说一般不靠谱);
他见识到的领域没有其它更合适的语言。
比较合理的理由是最后一个。以前选择余地少,所以能适应领域广的语言就是合适的语言,在 Lisp 怂了的情况下 C++基本没什么对手;新的适合特定领域语言不断出现之后这种情况就比较少了。
现在的情况是某种古董语言有相当一部分领域基本不可能被取代,所以学起来是有前途的——如果你对该领域任务感兴趣的话。
AlexH
2016-08-18 13:02:29 +08:00
@FrankHB 用到什么就学什么,说的太好了。感同身受。更不要说现在看似网络信息唾手可得其实是身处信息垃圾的海洋中,作为一个没人指导的新人光是自己把自己捞出这个垃圾海洋都快要耗尽心力。
xuyuheng0905
2016-08-18 13:16:33 +08:00
四年 C++经验飘过。 C++细节(坑)多,难精通,需要大量实践。如果你是新手,有其他选择的话,就不用考虑 C++,除非你想找这方面开发经验,或者自己特别喜欢 C++,或者已经学了一段时间了,打算靠这方面工作谋生。最后还要说一点,只懂 C++肯定不够的。
wshcdr
2016-08-18 13:17:18 +08:00
不建议。
noli
2016-08-18 13:19:45 +08:00
不会推荐 C++。推荐 PASCAL ,虽然一点也不实用。
NonPainter
2016-08-18 13:22:02 +08:00
我公司的程序员在我问他我想学编程要从什么语言入手的时候,他说你要先想好自己编程要干什么,然后就不用面临挑选语言的问题了,你要想用 UE4 ,乖乖去学 C++,如果用 unity ,就从 C#学起,如果想做自己的网站,就从 web 语言开始学
panlilu
2016-08-18 13:22:18 +08:00
不会😅
ikw
2016-08-18 13:22:37 +08:00
看到有说是学生,作为刚入职场的我,建议就是自己喜欢什么就学呗,只要起码会一门大语言,面试可以用。
其他的工作时候能不能用上都是两说
zhuangzhuang1988
2016-08-18 13:32:32 +08:00
会。
dtfm
2016-08-18 13:35:26 +08:00
脱离具体环境谈论是否推荐 C++ 没有意义,人和人差别是很大的。

就像知乎上某些人,人家一个非 CS 专业中途转行就想快速学习找到一份工作,非去推荐别人学 C++ / 算法,有人推荐 Python 、前端之类上手快的还不乐意,说不利于了解底层。

这比那些向 JAVA 初学者推荐 JAVA 编程思想的人还可恶,简直误人子弟。
geek123
2016-08-18 13:46:19 +08:00
不推荐。
xiqingongzi
2016-08-18 13:59:45 +08:00
@dtfm 那么什么样的人和环境下你会推荐?
likeyou
2016-08-18 14:08:59 +08:00
不推荐 ,先学点简单易懂的倒可以。比如, Java 、 HTML
xiaowangge
2016-08-18 14:47:38 +08:00
国内的话,哈工大、上交大,已经把 Python 做为计算机相关专业的入门语言了。 :-)
loryyang
2016-08-18 15:16:41 +08:00
科班考虑 C++,非科班,比如自学、培训班,建议用比较简单使用的语言
C++你需要花很多时间入门,而且开发效率很低下
x8
2016-08-18 15:40:48 +08:00
新人是有多新,想达到什么目标?
科班出身:必须是 C 起手,然后根据选择的领域再换语言。
纠结性能型:必须是 C 起手,然后根据选择的领域再换语言。
语言研究型:必须是 C 起手,然后 Lisp ,然后自选。
数据处理型:首先要数学基础和建模基础, Python 起手,熟悉各种各样的库,有部分切换到 R 语言。
只当码农型:随便一个脚本语言就能用得很爽,但是职业生涯的上限也就这样,一辈子也就是把别人的想法翻译成代码。

为什么大部分必须是 C 起手?因为通过 C 语言是熟悉现代计算机系统结构的最佳语言,足够简单,抽象程度刚好,通过指针读写内存,修改 CPU 寄存器,对应图灵机的工作方式;深入 Linux 内核也必须是 C 语言。
fulvaz
2016-08-18 16:05:36 +08:00
我个人感觉当年本科的时候怎么没去自学 c++, 现在去补操作系统, linux 各种头大

虽然平时不用, 但是学完走得远啊

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/300102

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX