MENU

Fun & Interesting

Project Structure & Architecture - Code Folders with OOP approach : Godot Tutorial

Nanotech Gamedev 5,456 8 months ago
Video Not Working? Fix It Now

Hey I am back with a new video, will be posting again regularly with new stuff, this time it`s about project folders, yes they are that important, After a while looking at older projects and a video presentation by Martin C : https://www.youtube.com/watch?v=Nsjsiz2A9mg I realized how my projects were displaying and prioritizing the wrong type of information on it's highest level, this was second nature to me as a habit of separating folders by their content type, which isn't that important as a simple extension on the filenames can tell you that, and we can also perform searchs in folders if we want specific objects lists, So the idea of separating folders by function popped up, and after a while testing it in a new project, I realized how much it changed just about everything, because now I was forced to manage my project content with intent, rather than a folder I would just throw a bunch of files together, The relationship between the project content also was cleaned, because now that our folders can be displayed by what they do or how they work, we know the relationship between the objects inside of them, otherwise we would just have a big library with a bunch of things that not necessarily work together, which is impossible to know before opening and reading all the code, Portability of project content was also an issue that this format of managing folders helps big time, because now to copy features or port object code is much easier as they are separated by function, Separation by function should be the main focus of your project content, because that is the reason why objects and classes exist, to serve functions for your project, not a library of assets that you use and connect together to make your project work, this simple misguided step can make your project unmanagable as it expands, because the time spent on understanding the architecture of the code will grow exponentially as well, Doing it this way it's not only cleaner, but faster to work and maintain your code, the trade off and catch is that your project content now is not ambiguous, which you may want when building a prototype, because you don't know yet how everything should be structured, so this workflow might not work for projects you don't know how to build, That being said, check the full video and try out the idea I presented, I think it's more suitable for building and maintaining projects, Subscribe if you like what you see, and comment if you have any suggestions, questions or just want to stop by and say hello, I always try to read your comments,

Comment