Applica il principio YAGNI - purché tu abbia solo 3 oggetti e un solo punto di ingresso nel tuo script, probabilmente non hai bisogno di quella classe aggiuntiva Application
, quindi non crearla. Ciò non renderebbe il tuo codice più leggibile o meglio mantenibile, quindi perché preoccuparsi (per ora).
Tuttavia, quando il tuo script diventa più grande in futuro e il tuo main.pl
ottiene ulteriori responsabilità, può essere una buona idea rifattorizzare il codice di istanza di quelle operazioni combinate in una funzione separata . Dare a quella funzione un nome significativo che descriva l'operazione nel suo insieme sarebbe un'ottima idea. Inoltre, quando il tuo programma cresce in uno stato in cui questa operazione è solo una delle molte altre operazioni, sarebbe un motivo ancora migliore per rifattorizzare le cose fuori dal main.
Quando viene visualizzato più tardi che questa operazione richiede ulteriori informazioni "globali" sullo stato o sull'ambiente, questa nuova funzione può essere sottoposta a refactoring in una classe per rendere tale stato globale una variabile membro di tale classe. Normalmente questa classe non otterrà il nome Application
, poiché questo nome non è molto descrittivo per ciò che fa l'operazione. Ma refactor quando succede, non prima.
AFAIK la nozione di avere una classe Application
separata deriva da alcuni (soprattutto C ++) framework GUI dove questo è un modo standard per definire un tipo di punto di accesso e oggetto globalmente disponibile. Vedi, ad esempio, questo post SO , circa la QApplication
class nel framework Qt. Non so se ci sono framework Perl con un approccio simile, ma finché non utilizzi o crei un framework di questo tipo, non vedo il punto di aggiungere una classe Application
al tuo script Perl.