Sono un programmatore Java e sono relativamente nuovo a Java (1 anno). Sto lavorando per una piccola azienda di startup.
Il mio problema è un po 'strano e mi trovo di fronte ad esso un po' difficile da gestire e spiegare anche.
Il mio direttore dell'azienda di solito assegna alcune attività di programmazione sul prodotto che stiamo sviluppando. Non proviene da uno sfondo Java, ma da uno sfondo di database. Di solito si preoccupa della configurazione dell'applicazione e dell'architettura collegabile che è molto desiderabile.
Ciò che secondo lui è collegabile è ottenere istanze di oggetti tramite Java Reflection. Sempre ci insiste a scrivere una classe che legge un file xml dove è scritto quale classe deve essere istanziata e fare un lavoro effettivo da quell'oggetto istanziato usando la riflessione. Ho cercato di spiegare i framework DI come Spring e Java EE CDI, ma di nessun uso.
E pensa che ogni volta che una struttura di file xml viene cambiata, il suo codice di analisi o il codice di scrittura non devono essere modificati. Noi, i programmatori, preferiamo usare JAXB per il marshalling e smantellare gli xml in quanto è intuitivo.
Molto spesso si lamenta che il codice è lento, o che i programmatori non sono in grado di fornire un'architettura che non consente assolutamente alcun cambiamento nel codice Java, ma tutte le modifiche nella configurazione / dati xml sono consumate dall'applicazione.
E ogni singola decisione che prendiamo è con il suo consenso per quanto riguarda la finalizzazione della struttura xmls. Di conseguenza, codifichiamo e sviluppiamo le cose. Ma dopo un po 'di tempo scopre che qualcos'altro è affascinante e ci chiede di cambiare l'intera struttura dell'XML. Il cambiamento dei requisiti non è un problema, ma pensa che il codice Java non debba mai essere cambiato e continua a rimproverare che i programmatori non sono in grado di scrivere codice in questo modo.
È davvero possibile? Come lo convinciamo o spieghiamo?