
Java 容易上手,但是学习成本远远大于 C++。
像是进程、线程、IO 、网络这些内容不深挖到操作系统层面,是不能真正理解和掌握的。相比而言,C++更容易与这些内容打交道,而 Java 更关注应用开发。Java 相比 C++多出了 JVM 和生态中的各种框架和中间件,大部分时间都被花在这上面去了; C++经常造轮子,反而会促进对这些底层内容的掌握。
似乎可以得出这样一个结论:C++所要学的,对于学 Java 的都需要学;但 Java 需要学的,对于学 C++则不一定需要学。学 Java 还不如学 C++。
各种大佬怎么看? Java 转 C++可行性如何?
1 echo1937 2022-05-17 18:20:01 +08:00 说得好像 C++不需要中间件似的,写 All in One 吗? |
2 lakehylia 2022-05-17 18:21:53 +08:00 语言只是表象,你需要学习计算机基础知识。。。 |
3 Jooooooooo 2022-05-17 18:22:57 +08:00 不知道从哪说起... 你是想学操作系统相关的知识还是? "Java 转 C++可行性如何?" 这个问题不得从找工作的角度考虑吗 |
4 ration 2022-05-17 18:25:47 +08:00 via Android 看你做什么,底层 C ,业务 java |
5 Renormalization 2022-05-17 18:38:27 +08:00 不如 Fortran (狗头 |
6 1194129822 2022-05-17 18:53:43 +08:00 那你看看 linux 之父怎么评价 C++的,你想转就转咯。你以为学了 C++就懂了 OS ,网络协议,数据库吗 |
7 HarrisonLee OP @1194129822 至少可以花更多的时间在这些上面 |
8 Edcwsyh 2022-05-17 19:04:46 +08:00 我觉得这不是编程语言的问题, 按你的说法直接学汇编岂不是更好, 更能了解操作系统 Java 转 C++? 我觉得你如果基础好, 啥语言转啥语言都没问题, 不过这事还是要以薪资为导向吧... |
9 LeegoYih 2022-05-17 19:56:12 +08:00 面向就业编程学都不影响,对与程序员个人来说,比较忌讳非 A 语言即 B 语言。 我用 Java 当主要吃饭工具赚了很多钱,也不影响我平时玩 Go/Python/C++啊。 |
10 HarrisonLee OP @LeegoYih 确实也是 |
11 across 2022-05-17 20:22:22 +08:00 从技术角度讲是这样,C++更底层,技术学起来感知更明显。 但这也是个问题,C++一般做基建库,你没有类似场景,写不出来东西,写出来了也不好验证,成长周期实在太长了。 Java 好歹中前期你自己做点小东西,开发速度快。 |
12 systemcall 2022-05-17 20:51:08 +08:00 via Android 你怎么不去学一下 51 单片机? |
13 micean 2022-05-17 20:57:55 +08:00 为什么不能一起学? |
14 Dockerfile 2022-05-17 21:46:25 +08:00 无非是造不造轮子罢了,我自己学了 rust 也拿它来写 web 阿。。你用 java 写轮子一样能接触到这些知识,你要是写不下去轮子你学 c++也没用 |
15 lessMonologue 2022-05-17 22:10:25 +08:00 看懂 op 的意思了,你需要学的不是 C++,是 apue 和 unp |
16 haah 2022-05-17 22:21:46 +08:00 买房子不如买股票! |
17 HarrisonLee OP @lessMonologue tlpi 怎么样 |
18 lessMonologue 2022-05-17 23:11:23 +08:00 @HarrisonLee 没看过 tlpi ,还是浅薄了 |
19 dqzcwxb 2022-05-18 00:40:06 +08:00 说得对,我也觉的开挖机的一定要会修发动机要不然就是基础不牢迟早完蛋 |
20 zagfai 2022-05-18 01:24:20 +08:00 去杭州上海学 java , 去广州深圳学 c/cpp ,想润学 solidity ,想做杂 7 杂 8 的什么分析 AI 创业其他的学 python |
21 agagega 2022-05-18 01:36:05 +08:00 via iPhone Java 和 Cpp 长得像,实际上完全是两个语言两种生态。学 Cpp 可以触类旁通了解很多语言:RAII 和 Rust 那套所有权机制的关系就不说了,模版和 STL 的变体活在很多现代语言的接口 /mixin 机制里(如 Rust 的 impl trait 和 Swift 的 extension protocol ),还有(蹩脚地)实现 Dependent Type 的模版元编程 |
22 Y29tL2gwd2Fy 2022-05-18 02:30:17 +08:00 via Android @dqzcwxb 最后发现都学了一遍,还不如学开挖掘机薪水多 |
23 levelworm 2022-05-18 02:35:40 +08:00 Real Programmers Use [ ] 请填空 |
24 kunkunzhang 2022-05-18 08:49:26 +08:00 不能理解。个人觉得两个语言没什么可比性,写的了 C++的人 学不会 java ? |
25 t2jk4000 2022-05-18 09:34:18 +08:00 学校里是这样的,出来工作就没那么多选择了 |
26 frank1256 2022-05-18 09:36:13 +08:00 你写 crud 能和写中间件的人一样?需要的知识能一样?干什么活,学什么知识。 |
27 dqzcwxb 2022-05-18 10:41:40 +08:00 @kunkunzhang #24 不是杠哈,你看我 19 楼的回复 "修的了发动机的学不会挖掘机?" |
28 aguesuka 2022-05-18 13:35:18 +08:00 学 C++不如学 rust 不如学 hashkell 不如学 agda 不如学 coq 不如学 latex 不如学 ppt |
29 darkengine 2022-05-18 15:52:20 +08:00 @aguesuka 链式调用,优雅 |
30 chenmobuys 2022-05-19 13:55:49 +08:00 为什么不去学汇编? |
31 HarrisonLee OP @chenmobuys 正在学啊,去年学完 32 位保护模式,今年学 64 位的 |
32 chenmobuys 2022-05-19 15:27:19 +08:00 @HarrisonLee 加油 |
33 fromdark 2022-05-19 16:07:58 +08:00 那你是不是还要学汇编。 另外机组,操作系统这些也还不够深入底层,是不是得学习数电模电,这种真正的底层。 最后,成功在纸带上打孔编程。 |
34 kunkunzhang 2022-05-19 17:37:30 +08:00 @dqzcwxb 你这个对比不对啊。你应该类比。 修发动机和开挖掘机都不是同一行的。 修得了航天飞机的发动机也能修挖掘机的发动机 |