2022年,学点技术管理(二十四)

152 阅读3分钟

编程语言漫谈。

如何在工程中用适当的语言搭建出一个方便协作、性能过得去、可读性好、模块化好、可重用、易扩展的代码库。

把合适的技术用到正确的场景中。平衡是我们在这个阶段要着重考虑的,这种平衡有时候是时间复杂度,有时候是空间复杂度。

初学者不要纠结“先学哪种语言”。

与其浪费时间纠结先学哪种语言,不如随便挑一个语言,跳进去游几圈试试。

对于工程师来说,只要你还在这个领域,就不可能只学一种语言,只会一种语言的工程师根本就不能称之为工程师。

如果不能用一种编程语言的基本特性写出好代码,那换另外一种语言也无济于事。

基本掌握了一门语言的功能和语法特性之后,要去做实践和练习,能写生产代码了,再回过头来去看编程语言的本质,了解这门编程语言的设计原理,能力边界和高级功能,这样有助于你更快更好地掌握其他编程语言。

关于脚本语言,就着人工智能浪潮搞机器学习的人,用 Python 入门就很好。

后端工程师要熟练掌握一门前端语言,前端工程师页要熟练掌握一门后端语言。

两者的编程思维模式很不一样。知己知彼,在架构设计和解决具体问题时,才会有更精确的判断。

另外,大前端工程师能够同时掌握 Web 编程语言、iOSAndroid 编程语言。原生技术(iOSAndroid)和 Web 的配合会越来越紧密。

SQL 是一门非常非常重要并且应该熟练掌握的语言。

SQL 不能被称为程序语言,它是数据的语言,通过它可以和数据建立连接和沟通。

如果你的数据访问模式写得很差,轻则代码性能一塌糊涂,重则引发 Bug,而涉及数据的问题,Bug 等级都比较高,后果可能很严重。

无论使用什么语言,工程师都应该能够基于这种语言搭建测试框架。

写好测试代码和业务代码一样重要。

任何时候都要用并发的、分布式的思维去看待你的程序。

因为竞争条件或者并发中的不确定因素(比如调用顺序)导致的 Bug,仅仅理解语言的基本特性,根本不能解释。

每种语言都有自己的并发编程模式。学习每一种语言,都应该去深入了解它的并发模型,在这个多核的时代,不懂并发的程序员不可能是个好工程师。

小结

编程语言,可以是一门简单的编程语言,有语法,有特性,也有优缺点,但这样的语言也可以复杂到去实现和解释各种计算模型和理论。一门编程语言到底能做什么,完全和工程师怎么去用,在什么场景中用息息相关。