[ImoLUG] domande residue intervento linuxday: sviluppo software

virgilio pierini virgilio.pierini@gmail.com
Mar 11 Nov 2008 09:44:22 CET


>
>
> Quello che non ha mai funzionato nella mia esperienza e' che ogni
> astrazione, per quanto buona, tende a leakare da qualche parte.
> Tradotto, non si riesce _mai_ a fare tutto con UML e si finisce sempre
> a mettere mano ai sottoprodotti, con grande sofferenza dello
> sviluppatore perche' tali sottoprodotti non sono generalmente intesi
> per elaborazione umana.


per Andromda questo è vero, sebbene, almeno per una fascia di problemi
"ragionevoli", si riesca a lavorare ancora nell'UML attraverso alcuni set di
attributi fatti apposta.diciamo che nei due progetti svolti sono riuscito a
non mettere mai mano ad hibernate ad esempio.

la cosa "in più" di questo approccio è che ho dei sottoprodotti che
ricoprono le funzionalità per cui posso scegliere se usare ejb oppure
hibernate, struts oppure jsf, spring per recuperare/gestire i "servizi di
business" oppure un webservice. ma io non ho dovuto imparare i dettagli di
queste tecnologie. posso fermarmi ad un livello architetturale nel quale
quando valuto hibernate 2 o 3 lo faccio in base alle features senza essere
preoccupato delle ore uomo per migrare la mia competenza tecnica ;)

>
>
> Per questo preferisco strumenti che aiutano lo sviluppatore
> _rimuovendo_ strati, piuttosto che aggiungendone altri ( tradotto:
> perche' avere un generatore che genera Hibernate, che genera mappings
> che genera SQL , quando posso usare un linguaggio molto piu' vicino ai
> dati ma altrettanto espressivo ( ActiveRecord nell'esempio specifico
> )).
>
> Quanto e' vero questo per andromda ? Quanto piu' questo e' vero, tanto
> piu' preferei la scelta di un linguaggio diretto tipo ruby / python.
> Se invece non capita mai e UML rappresenta il solo "codice sorgente" a
> cui guardi, allora la scelta tra i due tool perde un po' di valore.
> Dipende da quale ti permette piu' in fretta di tradurre idee in pezzi
> di codice funzionante.


altra cosa che direi di Andromda (per inire così di descriverti il mio
entusiasmo) è che aiuta tantissimo a mantenere degli
standard/pattern/pulizia del codice. so che sono cose che anche ruby o
cakephp hanno (le classi model, le view, gli helper) ma (per chi come me non
ha mai avuto troppo ordine nel codice o nei commenti) il fatto di scrivere
in autonomia ampie porzioni di codice è male :)))

>
>
> Per quanto dici circa il "capire i confini" e la riutilizzabilita' ...
> posto che secondo me non c'e' una soluzione che vada bene per tutto,
> nel caso dello specifico settore di sviluppo di applicazioni web Rails
> e' veramente centrato. Puo' non essere lo strumento ideale per altri
> tipi di progetti ( esempio ? ) ma e' comunque flessibile. Io l'ho
> visto integrato a Flex e Ruby lo vedo piu' o meno a tutti i livelli (
> da job batch , a collante per altri linguaggi,  a linguaggio embedded
> in altri tool etc ).
> Che tipo di cose ci dovrai fare ? Se si tratta di chiamare web
> services, per me sei a casa. Se ci vuoi fare un ESB, probabilmente non
> e' lo strumento ( o la filosofia ) adatta.
>

diciamo una cosa: quando avrò tempo libero (stavolta me la tiro io) potremmo
fare così: io modello alcune entità di un sistema ed un paio di servizi di
business logic via webservices, tu mi fai la parte ror ;) ? ciascuno guarda
quello che fa l'altro... (e valerio riprende?)
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: http://lists.linux.it/private/imolug/attachments/20081111/06e175a0/attachment-0001.htm 


Maggiori informazioni sulla lista ImoLUG