“T” 开发人员
刚开始从事开发人员工作时,选择学习哪种编程语言会受到多种因素的影响。有些人会在大学里学习第一门语言,而另一些人则可能选择最容易学习的语言,甚至可能是朋友介绍的语言,等等。
我们可能会继续学习第一门语言,也可能继续学习其他语言,这很奇妙,因为作为一名开发人员,你总是有新的东西要学习,有新的“玩具”要尝试。但风险在于,有些开发人员可能会过于专注于追赶各种新潮的技术和流行语,而忽略了基础知识。
我听了 Venkat Subramaniam 的演讲,他是Java 冠军,会用超过 10 种不同的语言编程。他有句名言:“对某件事了如指掌,对每件事都略知一二。” ……再读一遍。
了解某事的一切
所以这代表了“T”上的竖线,它指的是对特定领域的理解深度,这可以通过投入时间和精力学习并跟上该技术来实现。你实际上并不需要真正了解一门技术的一切。事实上,需要注意的是,即使是某个领域的专家也会感到落后,需要迎头赶上,这种感觉并非只有初学者才会有。事实上,成为某个领域的专家并不需要你了解该领域的一切。如果你在谷歌上搜索“专家”,它会说“在某个领域知识渊博或技艺精湛的人”,它实际上并不是说了解所有可能的方法和库的人,尽管从定义上可以清楚地看出,专家并非新手。
需要注意的是,精通一门手艺需要时间,但我们有时也会低估自己的知识,高估别人的能力。有时尝试教一个纯粹的初学者编程,那时你可能会反思并发现你实际上已经在你的领域获得了很多知识。
了解一切
这代表了“T”上的横线。所以,在保持专注的同时,你也应该关注趋势和流行语,以免落伍。你应该能够与使用其他技术的开发人员进行轻松的交流,至少不会完全迷失方向。所以,即使你是一名前端 Web 开发人员,这并不意味着你在看到后端代码时会不知所措,至少你应该能够与后端工程师产生共鸣。此外,如果你是一名 Python 开发人员,这并不意味着你不应该关心 C# 中类和接口的实现方式。没有获得任何知识实际上是一种浪费,尤其是作为一名开发人员,学习 Python 有可能让你成为一名更优秀的 Java 程序员,即使它们并不相似。大多数情况下,我们所使用的语言实际上都很相似。学习一门新语言可能会令人望而生畏,因为我们不喜欢那种作为新手的怪异感觉,但这没关系,这很正常。实际上,你在学习一门新语言时积累的经验会一直伴随着你,所以你的投资不会白费。一个已经使用 C++ 编写了 5 年代码的 Golang 新手与一个从未编写过代码的 Golang 新手处理事情的方式是不同的。
例如,了解如何使用 Java 编写代码可以让学习 Kotlin 变得更加顺畅,同样,了解如何使用 Kotlin 编写代码可以让学习 Swift 变得更加顺利,其实太阳底下并没有什么新鲜事。
我强烈建议你听听开发者茶播客《你的大脑是非线性的》的这一集,他在那里出色地解释了我刚才所说的内容。
所以我还是要再说一遍“了解某件事的一切,并了解所有事情的一些情况”,当然,就像许多其他事情一样,说起来容易做起来难,但把这个目标放在心里,从长远来看会让我们受益。
鏂囩珷鏉ユ簮锛�https://dev.to/lemuelogbunude/the-t-developer-440a