Organizing desktop application

Maurizio Berti maurizio.berti at gmail.com
Tue Apr 13 20:03:09 BST 2021


Il giorno mar 13 apr 2021 alle ore 19:40 Patrick Stinson <
patrickkidd at gmail.com> ha scritto:

> I disagree with some of the comments above. There are a number of
> application project folder structures which mimic the MVC structure.


Keeping a well organized project structure is a very important aspect, I'd
never say the contrary, nor that there's no point in splitting MVC parts
into folders.
Some packages provide "MVC-ready" project templates, and, especially with
package management, some structures must be respected as much as possible,
but those are also often a requirement specific to "extra" files (images,
docs and other resources).
Some specific libraries *have* to respect the structure due to their
nature, even to the point of file naming (consider Django).

The point is: it's not a /strict/ requirement for Python (or Qt for what
matters), and it's important to understand the difference between knowing a
good practice and actually following it.
I've seen people trying to work their way out of a madness of complex
directory/file/object structure and insane cross references, just because
"it has a model, there's a view, so I need to respect the MVC pattern",
with the result that *any* benefit it could have provided was completely
nullified by an excessive and unnecessary complexity caused by wrong
assumptions on otherwise correct approaches.

To paraphrase a common quote (but, actually, about threads):

> You like salt, I like salt, we all like salt; but we eat more pasta.


The fact that a paradigm is good for a certain concept doesn't mean that if
that concept is met then that paradigm *must* be used.

Cheers,
Maurizio

-- 
È difficile avere una convinzione precisa quando si parla delle ragioni del
cuore. - "Sostiene Pereira", Antonio Tabucchi
http://www.jidesk.net
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.riverbankcomputing.com/pipermail/pyqt/attachments/20210413/c29ab4c0/attachment.htm>


More information about the PyQt mailing list