A software engineer is never working on the code by themselves. There are usually colleagues with whom you must discuss your choices, they may need to read and understand the code you wrote. And of course there is future you. When looking back on your work in a few years, it would be nice if you can still understand what you were doing. This makes it so very important to understand each other, and that we must apply certain principles. During this lesson we will talk about a number of common terms, and a couple of general principles that are often applied when designing code.
The theory may contain notes to clarify important details:
Note: Make sure that you understand this distinction.
Warning: Usually, you should not do this, or do this later.
Note: This provides additional details for those who are interested.