Considera un programma di grandi dimensioni con molte parti differenti che hanno un'unica interfaccia a riga di comando, come nel caso della maggior parte delle applicazioni. Quanto meglio gestire i vari parametri della riga di comando, che possono essere intesi per varie parti dell'applicazione, a loro?
Queste parti possono essere gerarchiche, ad esempio main()
istanzia A (che crea un'istanza di B, C) e D (che genera E) e ognuna di esse ha requisiti specifici per i parametri della riga di comando. Ci sono varie possibilità.
- Crea variabili globali per i parametri, impostale e poi leggi semplicemente come richiesto. Forse in uno spazio dei nomi di configurazione o in una classe o qualche tipo.
- Crea una HashMap, che mappa gli argomenti della riga di comando, che costituiscono membri di un Enum, ai loro valori. Queste sono inizialmente delle stringhe, ma ogni parte del programma legge e interpreta i tipi come richiesto. Questa mappa è passata gerarchicamente con ogni istanza.
- Crea classi per AConf, DConf, che vengono poi compilate da main e passate a A e D resp., da cui creano BConf, CConf, EConf e passano tali oggetti di configurazione a B, C, E resp.
e molti altri.
In una grande applicazione con varie parti, come viene gestita con garbo?
Nota: sono non che mi chiede informazioni sull'analisi degli argomenti. Sto chiedendo come inviare i valori a oggetti diversi dopo che sono stati analizzati.