#3: Architecture, Performance, and Games
Software architecture is the way in which code was written and built up, which makes it an important factor when writing scripts for games, because it has everything to do with readability, flexibility, and, for the game specifically, processing speed. Often when prototyping code is rapidly slapped together to make something that is barely working to get a functioning game concept, which goes against best practices when it comes to writing code because those scripts tend to be very volatile and hard to work with. Decoupling is essential to software architecture because it separates two functions into independent pieces of code, allowing each to be changed without affect the other (and subsequently breaking the game).
An example of my own code that could be decoupled is when I put all of my code for one prototype into a single script that was attached to the player's GameObject. It would have to be decoupled in order to reuse any of the functions written in them for other GameObjects, and so that those functions can easily be changed without affecting all of the other functions in the game when the need arises.