Quote Originariamente inviata da Dr.chm Visualizza il messaggio
...Ma mi sono reso conto che il codice oltre a essere poco comprensibile a persone esterne...
Ecco un'altra certezza.
TUTTO il codice è pochissimo comprensiible a persone esterne, se è più complesso di una cinquantina di righe al massimo.
La leggenda metropolitana che mediante qualche supermetodosegreto (ne avrò studiati una 50ina minimo) i programmi divengano meravigliosi e perfettamente manutentibili e chiarissimi etc è semplicemente falso (per non dire una boiata pazzesca parafrasando Fantozzi).
E lascio stare gli approcci meno "ortodossi", funzionali etc, anche perchè sono pressochè inutili nella vita reale (e via blocco le solite crociate di chi - quasi sempre - ha una idea solo superficiale di questi temi, spesso non per colpa sua ma per chi gli ha insegnato male)
Per questo volevo revisionare tutta l'applicazione basandomi questa volta sul concetto di OOP...
Nulla di male in questo.
Solo che stai partendo proprio malissimo, con PHP che è (forse) la "cosa" meno adatta per un "vero" programma ad oggetti (li hanno aggiunti perchè fa fico, non perchè servano particolarmente nell'ambito in cui PHP viene usato).

Comincia col chiederti qual'è lo strumento migliore per fare la cosa che vuoi fare, non quello "più fico", più "alla moda".
In certi ambiti un programma ad oggetti "vero" rende la vita molto facile.
In tanti altri la rende difficile.
In altri ancora impossibile.
Se poi diventi un seguace agile spazzerai via come risibili queste cose.

Bene, tornando al punto, il programma l'hai fatto? Funziona ragionevolmente bene? Puoi venderlo ? (se ci riesci) => OK il programma è giusto.
Il refactoring di un programma che funziona ragionevolmante bene, sol perchè ormai è un mucchio di codice difficile da leggere (lo sarà comunque), scritto con un paradigma non fico (non cambia nulla, tanto deve fare le sue cose), è (cit) la scelta peggiore che si può fare in informatica.
Intendo nell'informatica professionale-industriale, non in quella hobbystica-dilettantesca


PS e no, i "veri" linguaggi ad oggetti sono MOLTO diversi dai "finti" (cugini), tipo C++, Java, C#, Pascal e PHP (!!!! oddiiioooo... PHP ad oggetttiiii!
Quindi la risposta alla tua domanda, ovvero se è bene o male fare qualcosa, dipende "per fare COSA" e "con QUALE strumento".
Altrimenti permani nel livello fanboy Mac-è-meglio-di-PC-tiè oppure M$-è-male o certe-cose-non-si-fanno-perchè-me-lo-ha-detto-papà