- read

How to Read Large Code Source: VS Code

Jesse Nerio 48

How to Read Large Code Source: VS Code

The most comprehensive guide to navigating humongous sources

Jesse Nerio
Level Up Coding
Published in
11 min read2 days ago

--

VS Code is a bit different than other IDEs.

The goal as a developer in VS Code is to customize your editor with plugins for every project.

That is the norm and everyone is expected to add features this way.

Because of this, I will be showing you some universal extensions for you to add to the IDE.

You can read the original how to read large code sources to see the best ways to navigate humongous code sources in an IDE agnostic way.

As every IDE is different this article specifically is for VS Code.

Required extensions

Some features require extensions. I will be trying to keep the plugins I recommend universal to all languages, workflows and frameworks.

  1. Build tool extension: Most build tools like Visual Studio Solutions, Gradle, CMake, NPM, require you to integrate the tool with the IDE. It is impossible to start most projects efficiently without an extension for the build tool. Some build tools are okay without an extension but most require it.
  2. Get a language specific intellisense extension: These are different per language
  3. GitLens: This extension includes additional GUIs for Git which are useful for debugging and managing your commits.
  4. Easy icon theme: The project explorer is easier to read with the right icons. I find easy icon theme great for readability. (Optional)

You need a solid build tool

In VS Code this is the hardest part about setting up a workflow with a large code source. Before we even start learning a large code source we need to create build tasks which are compatible with the project and the team.

In case you are not familiar, build tasks are individual compilations of the code.

You can create a debug build task, a release build task and also specify libraries which are only included in release or debug compilation.

In Javascript for instance you create build tasks in package.json, like this: