Recentemente ho iniziato a lavorare nel dominio della generazione di mesh . I miei programmi di solito contengono grossi pezzi di codice procedurale composti da diverse fasi. Per esempio.
class MeshAlgo1
{
/* A very long function */
void DoSomething(MeshData data)
{
// Phase 1
...
// Phase 2
...
// Phase N
}
};
Vorrei suddividere queste funzioni membro lunghe in funzioni più piccole per una migliore leggibilità e manutenibilità.
class MeshAlgo1
{
/* Shorter function! :-) */
void DoSomething(MeshData data)
{
DoSomething1();
//...
DoSomething2();
//...
DoSomethingN();
}
};
Ma poiché questo codice è procedurale, DoSomething1 (), DoSomething2 (), ecc non sarebbe indipendente l'uno dall'altro e quindi non si adatta allo stile OOP. Cioè, DoSomething2 () presuppone che DoSomething1 () sia stato chiamato prima di esso. Mi piacerebbe sapere qual è il modo corretto di scrivere questo codice in stile Object Oriented. Grazie mille.