06-27-2023, 08:15 PM
(06-27-2023, 04:18 PM)TerryRitchie Wrote:I 100% agree on the subdirectories - keeping libraries in a separate file is reasonable, but for me the less folders and dependencies, the easier it is to work with. It would just be easier if QB64/QB64PE had a tabbed editor to make it easier to work with multiple files.(06-27-2023, 02:49 PM)madscijr Wrote: It amazes me that most software developers are not only able to handle these complicated tool chains and code organization, they prefer & thrive in it! They must have an extra lobe or three in their brains that I'm missing, LoL! :-DI'm right there with you. I get confused very quickly when tool chains start getting even a few levels deep. I equate it to me getting old and not really having to worry too much about organization back in the day because project sizes were nothing compared to today's. That's probably why I prefer to code in QB64. It's fun and easy to whip up something cool in a minimal amount of time.
I also try to keep all main code in one file and libraries in a separate file (one .BI and one .BM), or even a few if I'm loading multiple libraries. I also like to keep assets (sounds, graphics, etc..) within the same working directory as the code and avoid using subdirectories as much as possible.
Just my style, YMMV.
I forgot to mention that although I prefer one monolithic file in QB64, I do try to keep my code organized by function (general-use, graphics definitions, tile routines, etc.) Having collapsible sections would be nice for this approach.
If the QB64/PE editor supported having multiple tabs open at once, I might start separating routines out into different BI/BM files, but wouldn't want things to get too complex (e.g. subdirectories). I know you can configure Notepad++ and other editors that do support tabs to work with QB64 & QB64PE, but I haven't found one that supports the realtime syntax checking.
On the subject of multi-file programs, does QB64PE have that feature where if 2 or more files in a project include the same file, it's smart enough to ignore the duplicate? I can't recall if I saw this for QB64, QB64PE or some other language (maybe Python?)