Build systems and dependency management
Right now building a program doesn’t really seem like a hard problem: you hit the Compile and/or Run buttons (whatever they look like for you), your program runs and does stuff 🎉.
When your program consists of a single file, it can and should be that easy to build your code. But as the size of your code grows beyond one single file, building your program can become difficult and tedious. We’re going to spend some time looking at tools for building software from source code, and look at building source code for different programming languages.
As your programs grow in complexity, you’re also going to want to rely on source code and programs that have been developed by other people. We’ll take a look at some approaches to downloading and using third-party libraries of code that aren’t included as part of the language itself (I’m looking at you incredibly huge JDK!).