4 ms·
I've found that Matlab is good at prototyping but poor in structuring into large applications with complex physical structure. I'm sure things have changed over
by jxramos 9y ago
I've found that Matlab is good at prototyping but poor in structuring into large applications with complex physical structure. I'm sure things have changed over the years but the sort of folder oriented loading of modules from the working directory baked habits into people that are hard to break I imagine.
Give Large Scale C++ Software Design by Lakos a read to learn about the issues involved in ramping up tall dependency chains. A lot of the book is naturally C++ oriented and thus focuses on impact to compile and link time, but the dependency concepts live on in other languages. Find a CASE tool that works for you https://en.wikipedia.org/wiki/Computer-aided_software_engineering https://en.wikipedia.org/wiki/Computer-aided_software_engine.... Visualizing codebases with auto generated diagrams from something like CppDepend or any of its cousins can enlighten a lot. But getting masterful at these subjects is really what Software Architecture is all about. There was a fella by the name of Juval Lowy peddling some architecture training/certification wizardry. Read up on Martin Fowler too, he has good subject matter in this area.
EDIT:
But for your immediate Matlab concerns I remember some StackOverflow questions about structuring large matlab applications. I just learned from one that Matlab has this notion of packages I was previously unaware of:
https://stackoverflow.com/questions/2748302/what-is-the-closest-thing-matlab-has-to-namespaces https://stackoverflow.com/questions/2748302/what-is-the-clos...
https://stackoverflow.com/questions/27861304/managing-bigger-matlab-projects https://stackoverflow.com/questions/27861304/managing-bigger...
https://stackoverflow.com/questions/2326609/how-to-visualize-a-project-structure-in-matlab https://stackoverflow.com/questions/2326609/how-to-visualize...
you may search StackOverflow for "matlab packaging" "matlab organization" "matlab structure" etc to get likewise hits.