[pugMI] [OT] Database legacy

Tondi Gabriele info a gabrieletondi.it
Mar 9 Set 2014 22:23:02 PDT


Ciao!

Sostengo l'anti-corruption layer suggerito da Matteo.
Definirei lato applicazione delle interfacce es. InvoiceGateway che saranno
poi implementate, possibilmente in un diverso package, dalle
implementazioni es. AS400InvoiceGateway.

È importante che il layer sia davvero anti corruption, cioè che i dettagli
implementativi riguardo il db legacy (ma in generale qualsiasi db) non
inquinino il tuo pacchetto "core" dove sono le logiche.
Ad esempio i gateway potrebbero tornare le tue Entity applicative o altri
DTO indipendenti dal db.

Così facendo potrai testare le tue logiche in maniera unitaria (usando
dei mock per i gateway).
Se possibile scriverei dei testi di integrazione per le implementazioni dei
gateway legacy.

Al prossimo incontro magari ci racconterai come va!

Ciao!
Gab


On Tuesday, September 9, 2014, skler <skler84 a gmail.com> wrote:

> Ciao Simone,
>
> se prevedi l’integrazione di un ORM per la nuova applicazione, Doctrine ha
> un buon supporto per il Reverse Engineering che ti evita la scrittura delle
> entity, ti tocchera’ definire a mano le associazioni:
>
>
> http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/tools.html#reverse-engineering
>
> Il tool e’ stato portato anche su DoctrineBundle di Symfony:
>
> http://symfony.com/doc/current/cookbook/doctrine/reverse_engineering.html
>
> Ciao,
> Mauro
>
> -----Original Message-----
> Da: Simone Fumagalli <simone a iliveinperego.com <javascript:;>>
> Rispondi: Simone Fumagalli <simone a iliveinperego.com <javascript:;>>>
> Data: 09 settembre 2014 at 12:53:50
> A: milano <milano a ml.grusp.org <javascript:;>>>
> Oggetto:  [pugMI] [OT] Database legacy
>
> > Ciao, spero non me ne vogliate per l'OT ma penso che la cosa posso
> > interessare anche ad altri.
> >
> > Mi trovo a dover sviluppare da zero un'applicazione collegata a un DB
> > legacy a cui voglio apportare nel lungo periodo delle modifiche. Nel
> > breve/medio periodo però non posso effettuare nessun intervento perchè
> > ci sono diversi script che ci scrivono e ogni modifica potrebbe avere
> > effetti imprevedibili.
> >
> > Da una parte ho quindi la necessità di aggiornare lo schema del DB
> > mentre dall'altra devo garantire la continuità di funzionamento.
> > Situazione classica che però non ho mai affrontato.
> >
> > Che strada mi consigliate ? Avete letture, blog/libri sull'argomento ?
> >
> > Ciao e grazie
> >
> > --
> > Simone
> > _______________________________________________
> > Milano mailing list
> > Milano a ml.grusp.org <javascript:;>
> > http://ml.grusp.org/listinfo.cgi/milano-grusp.org
> >
>
> --
> skler
>
>
> _______________________________________________
> Milano mailing list
> Milano a ml.grusp.org <javascript:;>
> http://ml.grusp.org/listinfo.cgi/milano-grusp.org
>


-- 
Tondi Gabriele - web and mobile software developer

*mail:* info a gabrieletondi.it
*web:* www.gabrieletondi.it
*mobile:* 392 54 50 560
*skype: *gabrieletondi
















*In ottemperanza alla Legge 196/2003 sulla tutela dei dati personali,
leinformazioni contenute in questa mail sono di natura confidenziale e
sidevono intendere ad uso esclusivo della persona o della Società cui
èdestinato. Se chi legge questo messaggio non è il destinatario o
l’incaricatoper la consegna del messaggio al destinatario, non deve
assolutamentecopiare, divulgare, distribuire o in qualsiasi modo utilizzare
leinformazioni contenute in questa mail.Nel caso in cui aveste ricevuto
questamail per errore, vogliate avvertire il mittente al più presto a mezzo
postaelettronica e distruggere il presente messaggio.According to Italian
Law 196/2003 concerning privacy, the informationcontained in this mail is
confidential and is intended for the addresseeonly. If you are not the
correct recipient, please note that any use,dissemination or copy of this
document/information is strictly prohibited.If you have received this
message in error, you should destroy it and pleasenotify us immediatly by
e-mail.*
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://ml.grusp.org/pipermail/milano-grusp.org/attachments/20140910/d3fb5544/attachment.htm>


Maggiori informazioni sulla lista Milano