常年用 C/C++ (C++只限于 class 和 STL)开发底层,这些年用 Python 较多,最近在用 Go 。
这个帖子并不抛出程序语言论战,而是我自己的一些体会。现在用 C/C++不多的原因是没太多时间折腾内存,除了必须用 C/C++实现,我首选 Go 。
C
用好 C ,其它语言都很简单(除了 Rust)。
C++
C++大部分特性都不实用,我只用 class 和部分 STL 。
Python
适合写 toy code ,性能太低,而且缺少类型检查,运行时错误满天飞。
Rust
如果熟悉使用 C/C++,找不到任何理由使用 Rust 。内存安全并不是 C/C++的问题,而是开发者的问题。
Go
比 C/C++开发效率高,性能也不错,包管理较为简单。
Java
没用过,实在不知道可以做什么... (对于底层)
===> 再复杂的程序或技巧对我已没有吸引力,实现它们需要的只是时间,但不同语言的模块(或程序)的连通,进而构建一个复杂系统是更大挑战。
1
sampeng 15 小时 44 分钟前 ![]() cursor:在座的都是垃圾
|
![]() |
2
liuhan907 15 小时 42 分钟前 ![]() 使用 Rust 的理由之一:开发者会犯错(
|
![]() |
3
wxw752 15 小时 39 分钟前 ![]() 我还以为点进来能看到一篇精彩文章呢
|
4
hwdq0012 14 小时 32 分钟前 ![]() 我是先 c# 再 c++的, 很多一直写 c++的人,是不会悟到高级语言才会接触到的设计模式的
我接手的 qt c++程序,即使写它的人来自体面厂,雷米厂,等大厂, 但没看到有什么设计 dll 都是头文件引用了,直接链接,没有抽象,统一的类型注册,初始化,安装,卸载接口 ,更别说依赖注入了 表格显示连 qt 的 model view 都没用,ui 和业务揉在一块 滥用信号槽( qt 观察者模式 松耦合通讯机制), 即使和 ui 线程没关的,也要连接到 ui 线程来中继一下 导致某些操作 ui 卡顿竟然影响 plc 通讯, 等后台重要线程 最蚤的操作是,某些功能做不出来,让我开发,我用开发完不让合并,因为用了他们不熟悉的技术栈,然后开会批我的时候我让他们自己做一个,沉默,他们提议让我做成小工具,他们在程序里做个按钮调用 后面算法部又有一个功能类似的小工具需要做,他们用 widget 做了,然后和算法在需求上吵起来了,有个功能他们做不出来,算法说 xxx 那个工具上有这个功能, 然后就又让我做了,做完还来问我怎么实现的, 这个事情当时算法总监下场和他们争论,CTO ,CEO 都沉默,但我做出那个算法工具后(就是一个简单的 json 编辑工具),他们不久都离职了,具体怎么走的不知道,当然他们顶着原来大厂的光环,能轻易敲开更高的门槛,对他们来说未偿不是好事呢 |
![]() |
5
Suaxi 14 小时 26 分钟前
昨天在群里看到一个梗 Rust:reconstruction ing🐶
|
6
lianglu 14 小时 20 分钟前
我说说我的想法:
Python:我的入门语言。用 Python 开发过 web ,上手简单,但是弱类型以及各种魔法方法让我无法忍受 Java:我蛮喜欢 Java ,但是目前业务都是基于 Spring 那一套,许多封装的东西让你一愣一愣的,而且很重很重 Go:喜欢它的简洁语法,不花里胡哨。该怎么写就怎么写,不会写出很骚的代码,适合中间件开发 Rust:目前正在学习中,入门太难了 |
7
fffq 14 小时 19 分钟前
php 是世界上最好的语言!
|
![]() |
9
InkStone 13 小时 39 分钟前
这个世界上可能有人能用 C/C++开发而极少犯错(就不抬不犯错这种杠了),但人数极少。
如果你在一个超过十人的 C/C++团队中工作,那每次大规模迭代写出各种内存错误的几率是 100%,如果没有充足的测试用例覆盖,错误的数量还会往上翻好几倍。 |
10
NessajCN 13 小时 38 分钟前
一看就既没用过 C 也没用过 Rust
|
![]() |
11
Reficul 12 小时 38 分钟前
> 用好 C ,其它语言都很简单(除了 Rust)。
看来是 C <--> Haskell 光谱上偏极左,没怎么接触过或者偏抵触 FP 。所以: > 如果熟悉使用 C/C++,找不到任何理由使用 Rust 。内存安全并不是 C/C++的问题,而是开发者的问题。 |
![]() |
12
xdeng 12 小时 25 分钟前
“现在用 C/C++不多的原因是没太多时间折腾内存,除了必须用 C/C++实现,我首选 Go 。” +1 。我之前也是写 C/C++的。
|
![]() |
13
yb2313 12 小时 24 分钟前
rust 应该是降低了心智负担吧, 不用一直想着有没有释放, 折磨自己, 不过还是能写出内存泄露
|
14
guotie 12 小时 2 分钟前
zig
|
15
arischow 11 小时 50 分钟前
每次看到 Python 都有人说弱类型啊
|
![]() |
16
BeiChuanAlex 11 小时 49 分钟前
《用好 C ,其它语言都很简单(除了 Rust)》哈哈哈哈哈,因为 rust 是自创了一个生命周期的东西,所以没有参考,学起来很难。
|
![]() |
17
just4id 11 小时 43 分钟前 via iPhone
没用过 Java ,不敢信
|
18
zhangeric 11 小时 40 分钟前
ai 表示啥语言我都行.
|
19
TWorldIsNButThis 11 小时 38 分钟前 via iPhone
我谔谔
经典土味 pl 指点江山 |
20
zzf2019 11 小时 38 分钟前
为啥都说 java 重呢?对于一款语言而言看中的肯定不是启动时间和引用包的数量吧。java 重代表它的性能和扩展,用来做一些复杂的服务和多人协作来说刚刚好。那种简单几行起个服务的,真的不算是玩具吗?能应付企业级使用吗?语言还是要合适场景最好
|
21
xsen 11 小时 24 分钟前
@zzf2019 #20 等一堆语言都用过之后,比如 c/c++/python/js/ts/java/golang/c#等,你就会为什么都说 java 重——因为是真重
对于刚入行或者语言用得少的,个人是建议主流的都多用用。真的,没对比就没伤害 |
22
flmn 11 小时 16 分钟前
Go ,包管理较为简单。
想起了 go 的黑历史…… |
23
luting 10 小时 57 分钟前
你的发言看出来, 你用的挺多, 但是哪个都不行
|
24
pulutom40 10 小时 47 分钟前 via iPhone
入门 php ,写了快 10 年 php 了
然后 python ,断断续续也用了 7 8 年了 然后写了两年 java 最近 5 年主要写 go 没有什么优劣,每种语言有自己适合的场景 |
25
henix 10 小时 46 分钟前
跟我的爱好差不多,我也喜欢用 C (非 C++)写个人项目,我目前的编程语言选择方法是:
1. 如果用命令能解决:几行 bash 或 cmd 2. 更复杂的任务,比如需要字符串处理:写一个几十行 Python 脚本 3. 需要抽象出函数、模块:写几个 Go 文件,放在一个目录里 4. 需要很多目录里放很多模块:C 语言 |
![]() |
26
sodesga 10 小时 39 分钟前
国内就是因为 java 技术栈,疯狂分层和造轮子,才养活了一大批码农。EJB -> Spring -> SpringBoot
|
![]() |
28
exch4nge 10 小时 5 分钟前
虽然没在工作中用过 Rust ,不过个人觉得 Rust 优势在团队开发的时候,review 别人的代码变得更简单,你能相信代码没有诡异的多线程安全问题,没有内存泄漏等,相对来说看 C++ 就得考虑前面几种问题
即使有很多年 C++ 经验,复杂需求下的写出内存安全还是有些难度的,难免会踩一些坑 看好 Rust ,不过国内岗位太少 |
29
kzfile 8 小时 37 分钟前
写过的感觉最没法掌握的语言是 scala ,看别人写的代码总有一山更有一山高的感觉
|
30
meinjoy 8 小时 18 分钟前 via Android
有了 ai ,我都敢用 rust 开发项目了…
|
![]() |
31
weiwenhao 7 小时 1 分钟前
@meinjoy ai 自己都难以解决 rust 的复杂所有权问题,可能是 rust 材料不够多。大部分时候还是要自己写,只能用 chat 模式和 ai 稍微问一些 rust 里的问题
|
![]() |
33
anivie 6 小时 26 分钟前
> 用好 C ,其它语言都很简单(除了 Rust)。
这是从来没没接触过 FP ,但凡用过 js…… |
35
hysjw 3 小时 46 分钟前
现在都靠 AI 了 能用 Rust 我都用 Rust 写代码已经不是难事了 为啥不更安全些 反正也不是自己写
|
![]() |
36
levelworm 3 小时 33 分钟前 via Android
楼主是做啥的?看来是做底层或者工具啊,求问手下还招人不?
|