我的编程语言使用体会

134 天前
 codefun666

常年用 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

没用过,实在不知道可以做什么... (对于底层)

===> 再复杂的程序或技巧对我已没有吸引力,实现它们需要的只是时间,但不同语言的模块(或程序)的连通,进而构建一个复杂系统是更大挑战。

5704 次点击
所在节点    程序员
50 条回复
sampeng
134 天前
cursor:在座的都是垃圾
liuhan907
134 天前
使用 Rust 的理由之一:开发者会犯错(
wxw752
134 天前
我还以为点进来能看到一篇精彩文章呢
hwdq0012
134 天前
我是先 c# 再 c++的, 很多一直写 c++的人,是不会悟到高级语言才会接触到的设计模式的
我接手的 qt c++程序,即使写它的人来自体面厂,雷米厂,等大厂, 但没看到有什么设计
dll 都是头文件引用了,直接链接,没有抽象,统一的类型注册,初始化,安装,卸载接口 ,更别说依赖注入了
表格显示连 qt 的 model view 都没用,ui 和业务揉在一块
滥用信号槽( qt 观察者模式 松耦合通讯机制), 即使和 ui 线程没关的,也要连接到 ui 线程来中继一下
导致某些操作 ui 卡顿竟然影响 plc 通讯, 等后台重要线程

最蚤的操作是,某些功能做不出来,让我开发,我用开发完不让合并,因为用了他们不熟悉的技术栈,然后开会批我的时候我让他们自己做一个,沉默,他们提议让我做成小工具,他们在程序里做个按钮调用
后面算法部又有一个功能类似的小工具需要做,他们用 widget 做了,然后和算法在需求上吵起来了,有个功能他们做不出来,算法说 xxx 那个工具上有这个功能, 然后就又让我做了,做完还来问我怎么实现的, 这个事情当时算法总监下场和他们争论,CTO ,CEO 都沉默,但我做出那个算法工具后(就是一个简单的 json 编辑工具),他们不久都离职了,具体怎么走的不知道,当然他们顶着原来大厂的光环,能轻易敲开更高的门槛,对他们来说未偿不是好事呢
Suaxi
134 天前
昨天在群里看到一个梗 Rust:reconstruction ing🐶
chambered
134 天前
我说说我的想法:
Python:我的入门语言。用 Python 开发过 web ,上手简单,但是弱类型以及各种魔法方法让我无法忍受
Java:我蛮喜欢 Java ,但是目前业务都是基于 Spring 那一套,许多封装的东西让你一愣一愣的,而且很重很重
Go:喜欢它的简洁语法,不花里胡哨。该怎么写就怎么写,不会写出很骚的代码,适合中间件开发
Rust:目前正在学习中,入门太难了
fffq
134 天前
php 是世界上最好的语言!
dacapoday
134 天前
@hwdq0012 听着好熟悉,感觉市面上有两拨人,面试专家 和 工程师。一类拿 offer ,一类解 bug 。
InkStone
134 天前
这个世界上可能有人能用 C/C++开发而极少犯错(就不抬不犯错这种杠了),但人数极少。

如果你在一个超过十人的 C/C++团队中工作,那每次大规模迭代写出各种内存错误的几率是 100%,如果没有充足的测试用例覆盖,错误的数量还会往上翻好几倍。
NessajCN
134 天前
一看就既没用过 C 也没用过 Rust
Reficul
134 天前
> 用好 C ,其它语言都很简单(除了 Rust)。

看来是 C <--> Haskell 光谱上偏极左,没怎么接触过或者偏抵触 FP 。所以:

> 如果熟悉使用 C/C++,找不到任何理由使用 Rust 。内存安全并不是 C/C++的问题,而是开发者的问题。
xdeng
134 天前
“现在用 C/C++不多的原因是没太多时间折腾内存,除了必须用 C/C++实现,我首选 Go 。” +1 。我之前也是写 C/C++的。
yb2313
134 天前
rust 应该是降低了心智负担吧, 不用一直想着有没有释放, 折磨自己, 不过还是能写出内存泄露
guotie
134 天前
zig
arischow
134 天前
每次看到 Python 都有人说弱类型啊
BeiChuanAlex
134 天前
《用好 C ,其它语言都很简单(除了 Rust)》哈哈哈哈哈,因为 rust 是自创了一个生命周期的东西,所以没有参考,学起来很难。
just4id
134 天前
没用过 Java ,不敢信
zhangeric
134 天前
ai 表示啥语言我都行.
TWorldIsNButThis
134 天前
我谔谔

经典土味 pl 指点江山
zzf2019
134 天前
为啥都说 java 重呢?对于一款语言而言看中的肯定不是启动时间和引用包的数量吧。java 重代表它的性能和扩展,用来做一些复杂的服务和多人协作来说刚刚好。那种简单几行起个服务的,真的不算是玩具吗?能应付企业级使用吗?语言还是要合适场景最好

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

https://ex.noerr.eu.org/t/1131936

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

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

© 2021 V2EX