lujiaxing
174 天前
自己玩肯定是 C#
至于 go, 你把 C# 语言版本调成 C# 2.0 (2006 年版), 那写起来就有 golang 那味儿了.
C# 主要在于优雅, 语言表达能力强, 上限极高, 而且通用万能. 你想写 CURD 可以用 C#, 想搞机器学习可以用 C#, 做 WEB 开发可以 C#, IoT 可以 C#, 桌面端/移动端可以 C# (Avalonia), 游戏可以 C# (Unity). 尤其如果你还不是 Windows 环境, 偶尔需要给自己开发个工具软件用, 没什么比 C# 更合适的了. 你总不能拿 JavaFx 写界面吧?
NodeJS, 也算是一个方向, JavaScript 同样具备与 C# 类似的, 极强的表达能力. 很多 C# 可以轻松实现的效果在 Javascript 里也可以轻松做到. 而且 NodeJS 同样具备万金油的属性, CURD 能做, 网页也能做. 小程序能做, H5 也能做. 桌面 PC 能做, APP 也能做 (RN / Cordova). 只是 npm_module 有点恼人, 但是眼不见心不烦只要不总盯着也算不得什么问题. 至于性能, 你是学着玩儿的, 管他什么性能呢. 你要性能的话找 C# 去.
Golang 在国内商业场景上用的多, 但是论给自己用的话, Golang 可以说是一个很差的选择. 贫瘠的语法, 羸弱的表达能力, 没完没了的 if err != nil... 别人一句话 golang 要写一串. Golang 之所以流行本质上就是很多人看中了 golang 语法贫瘠简陋这点, 在大团队中如果每个人在实现同一种逻辑的时候倾向于不同的实现方式, 那么后期维护会不那么方便. 而 golang 的语法由于一视同仁的贫瘠, 所以无论是刚毕业的孩子还是干了十年的老油条, 写出来的东西都是类似的. 可能就会相对好维护一些. 但是你是一个人用, 你既不拿开发挣钱 (起码现在不), 又不搞什么团队, golang 的这些优点对你来说就完全是无意义的.
其实你还有个更好的选择: Python.
人生苦短, 我用 Python. Python 这门开发语言最大的优势就是简洁, 优雅, 表达能力强. 而且也可以通过 PythonQT 来做界面. 而且你既然会 Python 何不一条路走到黑呢.... 反正你又不指着写代码挣钱.