Ciao Federico,

Riguardo l'approccio con la mappa, mi sembra un modo di aggirare il
> problema di stare usando Java. Quest'approccio mi fa tornare in mente un
> articolo di Martin Fowler che diceva che comunque tu hai sempre uno schema
> dei dati, che sia implicito ed esplicito (forse era qui:
> https://martinfowler.com/articles/schemaless). Questo perche'
> l'utilizzatore andra' a leggersi certi campi, avra' certe aspettative. Per
> cui mi conforta avere lo schema esplicito, sotto forma di classe. D'altra
> parte se ti scrivi gli opportuni test lo schema lo vai invece a
> "cristallizzare" nei test. L'approccio a classi, oltre all'aiuto del
> compilatore mi darebbe la possibilita' di usare la reflection dove serve.
>

Grazie, molto bello l'articolo.

Però sostanzialmente conferma la mia reticenza ad usare le mappe: nel
nostro caso il problema non è tanto il fatto di non conoscere a priori la
struttura dati e non è il fatto che la struttura non sia uniforme (due dei
tre trigger che utilizza per scegliere che tipo di schema utilizzare). Il
problema è il numero di trasformazioni inutili che facciamo in rapporto al
numero di quelle realmente utili.

Per risolverlo vogliamo usare uno schema implicito al posto di quello
esplicito, perdendo tutti i vantaggi di quest'ultimo, per ritrovarci
comunque un mucchio di trasformazioni inutili, ma fatte più facilmente..

Mi convince di più l'approcio di Bruno: faccio la trasformazione soltanto
laddove mi serve (la perdita di uniformità è probabilmente il male minore).
E se usassimo un linguaggio diverso da java forse in alcuni casi potremmo
evitare anche quella: mi viene da pensare alla manipolazione
dell'interfaccia degli oggetti a runtime di groovy, ma ci devo riflettere
per capire se è una porcata o può essere realmente utile in questo caso.
Rimarrebbero soltanto le trasformazioni che in effetti hanno senso come
tali: cioè quando ai confini del sistema lo schema cambia, i dati sono
rappresentati in maniera differente.


> Se fossi confinato a Java userei l'approccio a mappa ma se potessi
> passerei a Kotlin.
>

Mi togliete una curiosità dovuta alla mia ignoranza: perché proprio Kotlin?
Mi sarei aspettata di vedere citati diversi linguaggi la cui sintassi
facilita lo sviluppo, invece c'è il coro unanime pro-Kotlin. Come mai?

Se poi la tua azienda sta pensando "eh ma non e' ancora maturo" o "e'
> troppo nuovo" considera che Kotlin e' stato approvato da Google come
> linguaggio ufficiale per lo sviluppo di applicazioni Android. Se la tua
> azienda non riesce a reggere il passo di un colosso e deve avere molta piu'
> cautela, be', penso che tu abbia un problema.
>

A volte l'azienda non può pensare, si limita ad adeguarsi agli standard del
cliente...

Ciao,
Tatiana

>
      • ... Roberto Franchini ro.franch...@gmail.com [it-torino-java-jug]
      • ... Federico Fissore feder...@fsfe.org [it-torino-java-jug]
      • ... Roberto Franchini ro.franch...@gmail.com [it-torino-java-jug]
      • ... Andrea Cerisara andreaceris...@gmail.com [it-torino-java-jug]
      • ... Tatiana Litvinova tatiana.litvin...@gmail.com [it-torino-java-jug]
      • ... Tatiana Litvinova tatiana.litvin...@gmail.com [it-torino-java-jug]
      • ... bruno bossola bboss...@gmail.com [it-torino-java-jug]
      • ... Tatiana Litvinova tatiana.litvin...@gmail.com [it-torino-java-jug]
      • ... bruno bossola bboss...@gmail.com [it-torino-java-jug]
      • ... Federico Tomassetti f.tomasse...@gmail.com [it-torino-java-jug]
      • ... Tatiana Litvinova tatiana.litvin...@gmail.com [it-torino-java-jug]
      • ... Roberto Franchini ro.franch...@gmail.com [it-torino-java-jug]
      • ... Profetiko profet...@gmail.com [it-torino-java-jug]
      • ... Angelo Marlo angelo.marlo....@gmail.com [it-torino-java-jug]
      • ... Ivan Rovano ivanrov...@gmail.com [it-torino-java-jug]
      • ... Tatiana Litvinova tatiana.litvin...@gmail.com [it-torino-java-jug]
      • ... Andrea Cerisara andreaceris...@gmail.com [it-torino-java-jug]
      • ... axa1...@gmail.com [it-torino-java-jug]
      • ... Andrea Cerisara andreaceris...@gmail.com [it-torino-java-jug]
      • ... Tatiana Litvinova tatiana.litvin...@gmail.com [it-torino-java-jug]
  • Re: [Ju... Federico Fissore feder...@fsfe.org [it-torino-java-jug]

Reply via email to