Visual Studio Code 权威指南
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.3 学会学习

“师者,所以传道授业解惑也。”我们可以看到,自古以来,我们就把“传道”放在了“授业”和“解惑”之前,其重要性可见一斑。虽然本书的大部分章节是关于“授业”的,但贯穿其中的,不乏“传道”的内容。希望读者朋友通过本书的“授业”能掌握Visual Studio Code的各项内容,更能通过本书的“传道”,提升自己的学习能力,拥有自己的思考,了解Visual Studio Code背后的原理,通过本书的内容举一反三,学到更多知识。

1.3.1 自己的思考

在寻求帮助之前,自己要对问题进行过认真思考。比如,你经常使用的某个插件出现了一个bug。这个bug在Visual Studio Code 1.36上是不存在的,但在1.37上就出现了。那么在开始给插件提Issue之前,是不是可以自己思考一下,也许是Visual Studio Code 1.37版本的更改或regression(倒退的错误)导致了插件的bug。在提issue时,能给出自己遇到的情况和思考,可以更好地帮助插件开发者找到问题的根本原因。同时,对自己也能有很大的帮助。

再比如被广泛使用的Code Runner插件,读者有没有想过背后的实现原理是什么?其实,原理很简单。这里留给读者自己思考。相信读者通过思考后,一定会有自己的答案。读者也可以查看Code Runner的源代码(见参考资料[3]),通过查看源代码便可以了解其原理。如果以后遇到Code Runner的bug,也许就不用再向笔者寻求帮助了,直接发一个Pull request,岂不是更棒?

1.3.2 知其然知其所以然

相信很多人都是Visual Studio Code的使用者,而Visual Studio Code的开发者或插件开发者只占其中很小的比例。作为一个使用者,知道Visual Studio Code背后更多的原理和技术栈,知其然知其所以然,对自己也是很大的帮助。

2019年,微软正式发布了Visual Studio Online。网页版的Visual Studio Online其实是基于Visual Studio Code而打造的。如果你能知道Visual Studio Code是基于Electron开发框架开发的,而Electron是基于HTML、CSS、JavaScript等Web技术栈而开发的,你就一定能理解为什么Visual Studio Online是基于Visual Studio Code开发的了。此外,Visual Studio Code的核心组件、“前端”与“后端”分离的架构设计、进程隔离的插件模型,都为Visual Studio Online打下了坚实的基础。这也是值得我们学习的地方。

了解背后的原理和技术栈不仅有助于我们使用Visual Studio Code这个开发工具本身,而且可以帮助我们在日常的项目开发中了解更多的技术选型和架构设计,开阔我们的眼界。

1.3.3 举一反三

也许,你是一个多语言开发者,需要在Visual Studio Code中同时使用Python和Pascal语言。通过学习,你可以玩转Visual Studio Code的Python使用技巧,同时也应该学会举一反三。在一些方面,不同语言的开发体验是相近的。如果你已经学会了在Visual Studio Code中对Python代码进行代码编辑、静态代码检查、调试、单元测试等功能,那么在Visual Studio Code中编写Pascal时,你就可以有相应的参考。Visual Studio Code为调试、智能提示、代码导航等功能都提供了风格一致的开发体验。有了举一反三的能力,你就能在Visual Studio Code中更快地上手不同编程语言的开发。