「这是我参与2022首次更文挑战的第3天,活动详情查看:2022首次更文挑战」。
个人认知的结论: 语言只是一种工具,技术栈中的一环,甚至在技术栈内占比会随着时间推移占比越来越少。所以选择适合的语言就是最好的,甚至可以设计自己的语言,创造一套语法规则。
比如语言在工程师技术栈中的占比可以从以下的简单罗列中看出一些:
- 语言工具
- 数据库
- Server工具
- 缓存
- 中间件
- 数据结构与算法
- 安全相关
- 项目管理
- 软件工程/设计模式
- 操作系统/计算机体系结构
- 编译原理
- 计算机网络
- 前端
- 工具(浏览器、Android、iOS)
- 协议
- 分布式、集群
- 效率工具
- 开发框架
- 运维工具
- IDE
- 测试及优化 细分的技术栈还有很多,都是成为架构师和技术专家必不可少的知识,也需要花大量时间和精力去实践和积累经验,不要把视野太局限在语言上,实在占比太小。
其次,这点也很重要,不要太纠结学什么语言。语言知识的迁移成本非常低,学会一种,再学第二种第三种基本上都不太花时间和精力,半天时间就差不多上手了,用的过程中可以再深入了解,多语言成本很低。 但是学一门语言就学深,仅仅会使用是不足够的,要清楚这门语言的优劣势是什么?适合的场景是什么?运行环境、编译过程以及执行过程是什么?配合这门语言的工具栈(IDE、各种工具包、调优调试工具等)有哪些?都是需要深挖的点。
最后#今日份十分钟#建议各位同学:“吾生也有涯,而知也无涯,以有涯随无涯,何如?” ,建议多学一些“不变的”。语言只是外壳,入门从怎么用着手没问题,但要切记用熟练之后要剥离外壳深入进去研究原理,这才能学到一些不变的内容,从而做到一通百通。