[Python] wxFrame , background, transparent text

2008-02-03 Per discussione Crash Override
Salve a tutti.
Finalmente ho terminato la mia applicazionicina (chi mi ha seguito sa... 
;)). Ora volevo aggiungere un po' di stile; così visto che 
l'applicazione si riferisce a film, ho messo una bella locandina come 
sfondo in questo modo:


img = wx.Image('qtpy3.bmp', wx.BITMAP_TYPE_ANY)
self.buffer = wx.BitmapFromImage(img)
dc = wx.BufferedDC(wx.ClientDC(self), self.buffer)
self.Bind(wx.EVT_PAINT, self.OnPaint)

...

def OnPaint(self, evt):
dc = wx.BufferedPaintDC(self, self.buffer)

ora il problema mio qualè? Che tutti gli static text si vedono con lo 
sfondo del frame in modo abbastanza bruttino. Posso renderli 
'trasparenti'? Cioè posso fare in modo che il testo compaia direttamente 
sull'img?

Grazie

P
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Giorgio Zoppi
2008/2/3, giuseppe saviano <[EMAIL PROTECTED]>:
> ciao a tutti,
> è un po' che lurko e vorrei fare i complimenti a questa bella community!
>
> soprattutto alcuni fra gli ultimi post, mi hanno letteralmente aperto
> agli occhi su quanto python sia un vero e proprio "modo di pensare",
> oltre che un linguaggio.
>
> ed in particolare mi ha colpito:
>
> > > hem rimasugli di UML e Ingegneria del software.
> >
> > Sigh, non si rendono nemmeno conto di quanto male faccia insegnare
> > UML. :(

Questa affermazione non la capisco,sarò
che sono ignorante, mi dispiace. UML è ottimo per documentare il codice
e l'interazione tra  i sottosistemi, e anche per pensare a pattern.
Quando lavori da solo è un po una rottura usarlo.
ciao,
Giorgio.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


[Python] Python vs UML

2008-02-03 Per discussione giuseppe saviano
ciao a tutti,
è un po' che lurko e vorrei fare i complimenti a questa bella community!

soprattutto alcuni fra gli ultimi post, mi hanno letteralmente aperto
agli occhi su quanto python sia un vero e proprio "modo di pensare",
oltre che un linguaggio.

ed in particolare mi ha colpito:

> > hem rimasugli di UML e Ingegneria del software.
>
> Sigh, non si rendono nemmeno conto di quanto male faccia insegnare
> UML. :(

ho capito che la progettazione uml in alcuni casi risulta limitante;
nella stessa serie di messaggi si parlava poi di list comprehension
... altri esempi?

grazie
-- 
# non autorizzo la memorizzazione del mio indirizzo su outlook
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Y3s

Il giorno 03/feb/08, alle ore 20:30, giuseppe saviano ha scritto:



> ho capito che la progettazione uml in alcuni casi risulta limitante;

In alcuni casi?!? Sempre direi...UML è IMHO una roba di cui non ho  
mai capito il senso. Se devo spiegare un concetto ad altre persone è  
molto più facile e comprensibile un pezzo di codice ben scritto  
(soprattutto se è python). Se lo devo spiegare a un non tecnico,  
avere uno schema pieno di riquadri, linee e freccette non aiuta di  
certo...mentre per la documentazione, codice ben scritto si documenta  
al 90% da sè. I commenti servono proprio a spiegare il 10% rimanente.  
Insomma, non trovo una sola applicazione utile di UML, se non quella  
di vendere tanti libri e rompere le scatole a chi vorrebbe produrre  
invece di perdere del tempo ;-)

> nella stessa serie di messaggi si parlava poi di list comprehension
> ... altri esempi?
>

Altri esempi di cosa? Di roba "pythonica"? Prova ad aprire una shell  
e digitare:

 >>> import this


--
Antonio Valente


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Enrico Franchi

On Feb 3, 2008, at 8:30 PM, giuseppe saviano wrote:

> ho capito che la progettazione uml in alcuni casi risulta limitante;
> nella stessa serie di messaggi si parlava poi di list comprehension
> ... altri esempi?

Non è che è limitante, è che tutt'ora devo trovare un caso in cui sia  
davvero utile.
No, il fatto che il management si ecciti se gli porti dei plichi di  
documentazione non conta.

In pratica UML è una cosa che piace molto ai patiti del big design up  
front (ci vuole pure un linguaggio in cui esprimerlo sto design, no?).

Nei linguaggi inerentemente dinamici, la programmazione agile è parte  
del DNA di quasi ogni programmatore.

Aggiungo: Don't Repeat Yourself; perchè esprimere qualcosa in UML  
quando ho Python? Faccio prima ed è pure eseguibile. Mica sviluppiamo  
in Java, qui.
Poi c'è tutto il discorso sulla ridondanza dell'informazione, etc etc  
etc.

Nota, non è che sono *contro* UML: sono contro la maggior parte degli  
usi che se ne fanno; specialmente sono contrario ad usarlo come  
strumento di design. 
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Java
Y3s ha scritto:
> Il giorno 03/feb/08, alle ore 20:30, giuseppe saviano ha scritto:
>
> 
>
>   
>> ho capito che la progettazione uml in alcuni casi risulta limitante;
>> 
>
> In alcuni casi?!? Sempre direi...UML è IMHO una roba di cui non ho  
> mai capito il senso. Se devo spiegare un concetto ad altre persone è  
> molto più facile e comprensibile un pezzo di codice ben scritto  
> (soprattutto se è python). Se lo devo spiegare a un non tecnico,  
> avere uno schema pieno di riquadri, linee e freccette non aiuta di  
> certo...mentre per la documentazione, codice ben scritto si documenta  
> al 90% da sè. I commenti servono proprio a spiegare il 10% rimanente.  
> Insomma, non trovo una sola applicazione utile di UML, se non quella  
> di vendere tanti libri e rompere le scatole a chi vorrebbe produrre  
> invece di perdere del tempo ;-)
>
>   
Mah...
Vai e dillo alla IBM (Microsoft Hp etc etc)che con l'uml ci "perdono" un 
sacco di tempo. Ti do una dritta generale: quando un'azienda fa 
qualcosa, è perché ci guadagna, non perché ci perde del tempo.

Poi cerchiamo anche di separare un po le cose. Una cosa è quando fai il 
tuo programmino o sitini internet. Un'altra è quando devi progettare una 
grossa applicazione alla quale trovi impegnati diversi team. Come 
esercizio  potresti provare ad analizzare i codice dell'ultimo kernel 
linux. Vediamo se lo capisci al 90%.

L'UML fa da "linguaggio universale" che chiunque può prendere capire e 
implementare.

Lo si può usare *anche* come documentazione inserito all'interno di 
processi di sviluppo agili tipo XP programming e simili. Ma magari 
avrete da ridire anche su di questi...

Per maggiori dettagli sull'UML:
http://it.wikipedia.org/wiki/Unified_Modeling_Language

Per l'elenco di aziende che si divertono a perdere tempo:
http://www.omg.org/cgi-bin/apps/membersearch.pl (schiacciare "search")


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


[Python] [ANNOUNCE] Pygtksourceview-2.1.1

2008-02-03 Per discussione Gian Mario Tagliaretti
I am pleased to announce version 2.1.1 of the Gtksourceview Python bindings.

Once the mirrors have sync correctly it will be available at:

http://ftp.gnome.org/pub/GNOME/sources/pygtksourceview/2.1/

The bindings are updated with the new Gtksourceview API

News in 2.1.1
=

o adapted to API changes in GtkSourceView
o fix the docs accordingly

Blurb:
==

gtksourceview is a library that provides a widget for source code display
and editing, derived from Gtk's TextView, and used by gedit and nemiver,
among others.

gtksourceview has recently been released 2.1.2

PyGtksourceview requires:
=

 o Gtksourceview >= 2.1.2
 o PyGObject >= 2.8.0 (2.11.3 to build the docs)
 o PyGTK >= 2.8.0

Bug reports should go to:
http://bugzilla.gnome.org/browse.cgi?product=pygtksourceview

cheers
-- 
Gian Mario Tagliaretti
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Crash Override

Enrico Franchi ha scritto:

On Feb 3, 2008, at 8:30 PM, giuseppe saviano wrote:

  

ho capito che la progettazione uml in alcuni casi risulta limitante;
nella stessa serie di messaggi si parlava poi di list comprehension
... altri esempi?



Non è che è limitante, è che tutt'ora devo trovare un caso in cui sia  
davvero utile.
No, il fatto che il management si ecciti se gli porti dei plichi di  
documentazione non conta.


In pratica UML è una cosa che piace molto ai patiti del big design up  
front (ci vuole pure un linguaggio in cui esprimerlo sto design, no?).


Nei linguaggi inerentemente dinamici, la programmazione agile è parte  
del DNA di quasi ogni programmatore.


Aggiungo: Don't Repeat Yourself; perchè esprimere qualcosa in UML  
quando ho Python? Faccio prima ed è pure eseguibile. Mica sviluppiamo  
in Java, qui.
Poi c'è tutto il discorso sulla ridondanza dell'informazione, etc etc  
etc.


Nota, non è che sono *contro* UML: sono contro la maggior parte degli  
usi che se ne fanno; specialmente sono contrario ad usarlo come  
strumento di design. 
___

Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

  
Forse non avete ben chiari i vari ruoli dei membri che contribuiscono al 
successo di un progetto software. Avete mai sentito parlare di 
Architect, Designer? O conoscete solo il programmatore?
Allora quando costruiamo una casa esistono solo i muratori? E se un 
muratore costruisce bene le mura allora la casa può farla senza progetto?
Se vi riferite esclusivamente a Python forse in parte potreste aver 
ragione... Dico forse perchè la mia conoscenza di Python non è molto 
approfondita (sicuramente si tratta di un linguaggio non difficilissimo).

La domanda forse sarebbe:
Quali sono i vostri titoli di studio? Che fate nella vita? Ma è meglio 
tralasciare...



___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Enrico Franchi

On Feb 3, 2008, at 8:44 PM, Giorgio Zoppi wrote:

> Questa affermazione non la capisco,sarò

La spiego.

> che sono ignorante, mi dispiace. UML è ottimo per documentare il  
> codice
> e l'interazione tra  i sottosistemi, e anche per pensare a pattern.

Documentare il codice con UML?

1. per l'interazione tra i sottosistemi ci potrebbe pure stare.  
peccato che non sia necessario; oltre tutto ci sono tante di quelle  
parti lasciate scoperte (volutamente) dallo standard che anche li  
bisogna praticamente sempre definirsi il proprio dialetto.

2. per documentare il codice, direi proprio di no. In primo luogo  
perchè UML diventa particolarmente rognoso quando si scende nei  
dettagli: la documentazione del codice spesso non prescinde dai  
dettagli, ergo eccoci con UML in difficoltà. In secondo luogo nel  
tempo in cui ci va a fare un diagramma (anzi, i due o tre diagrammi  
necessari per una data fase) UML si ripulisce il codice fino a  
renderlo sostanzialmente auto-esplicativo, tramite l'uso di  
nomenclatura *chiara*, docstrings, tests ed eventualmente se tutto  
questo non bastasse commenti mirati.

3. pensare a pattern è diverso da *conoscere* i pattern. pensare a  
pattern è come dire pensare a mattoncini: se qualcuno mi dicesse che  
penso a mattoncini io gli tirerei due schiaffoni. Non si *pensa* a  
pattern; quando si conoscono *bene* i pattern si *vedono* nel problema  
i pattern. Ma questo è un modo a posteriori di usare i pattern;  
viceversa pensare a pattern usa unità di ragionamento e struttura  
troppo rigide.

Ora potresti provare a spiegarmi perché UML è ottimo (lasciando stare  
il fatto che lo usano tutti). Io sinceramente non sono mai riuscito a  
capire questa cosa. O meglio: posso capirla quando penso al mondo  
business, ai manager, ai commerciali, all'inventare un problema e  
vendere i costosi strumenti necessari per risolverlo. Posso capirla  
quando penso a linguaggi completamente ingessati, team di progettisti,  
analisti e programmatori virtualmente disgiunti. E ho presente anche  
il fatto che un numero spropositato di progetti finisce in un bagno di  
sangue. D'altra parte sono completamente aperto a ricredermi.


> Quando lavori da solo è un po una rottura usarlo.

Anche quando lavoro in gruppo. Certo, se per una serie di ragione i  
miei compari non sono in grado di leggere il codice e la  
documentazione e hanno bisogno di rappresentazioni grafiche... ok.  
Anche UML ha un suo senso. Viceversa preferisco del buon codice,  
scritto bene, non più complesso del necessario e una buona suite di  
test che mostri anche come il codice va usato e come non va usato.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] programma kde+qt, registratore radio

2008-02-03 Per discussione ugaciaka
Grazie per le dritte,
ormai che ci sono...qualcuno dove posso trovare dei semplici esempi,
funzionanti, banalissimi su programmazione che usa pyqt/qt? mi sono
 fatto un giro su kde-apps.org ma non ho trovato molto...(k-encfs2 è
troppo complicato... kgmailnotifier già più abbordabile...)
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Y3s

Il giorno 03/feb/08, alle ore 21:31, Java ha scritto:

> Y3s ha scritto:
>> Il giorno 03/feb/08, alle ore 20:30, giuseppe saviano ha scritto:
>>
>> 
>>
>>
>>> ho capito che la progettazione uml in alcuni casi risulta limitante;
>>>
>>
>> In alcuni casi?!? Sempre direi...UML è IMHO una roba di cui non ho
>> mai capito il senso. Se devo spiegare un concetto ad altre persone è
>> molto più facile e comprensibile un pezzo di codice ben scritto
>> (soprattutto se è python). Se lo devo spiegare a un non tecnico,
>> avere uno schema pieno di riquadri, linee e freccette non aiuta di
>> certo...mentre per la documentazione, codice ben scritto si documenta
>> al 90% da sè. I commenti servono proprio a spiegare il 10% rimanente.
>> Insomma, non trovo una sola applicazione utile di UML, se non quella
>> di vendere tanti libri e rompere le scatole a chi vorrebbe produrre
>> invece di perdere del tempo ;-)
>>
>>
> Mah...
> Vai e dillo alla IBM (Microsoft Hp etc etc)che con l'uml ci  
> "perdono" un
> sacco di tempo. Ti do una dritta generale: quando un'azienda fa
> qualcosa, è perché ci guadagna, non perché ci perde del tempo.

UML viene spinto dai manager non certo da quelli che lavorano ;-)  
Immagino che praticamente tutti gli sviluppatori eviterebbero  
volentieri se possibile.
In ogni caso, IBM, microsoft, hp, ecc. fanno software da ben prima  
che venisse inventato UML. O Java. O qualunque tecnologia  
"irrinunciabile". E non mi pare che guadagnassero meno.


> Poi cerchiamo anche di separare un po le cose. Una cosa è quando  
> fai il
> tuo programmino o sitini internet. Un'altra è quando devi  
> progettare una
> grossa applicazione alla quale trovi impegnati diversi team. Come
> esercizio  potresti provare ad analizzare i codice dell'ultimo kernel
> linux. Vediamo se lo capisci al 90%.

Come tutti sanno, linux è pieno di UML, vero? UML come strumento di  
progettazione è del tutto inutile, come ampiamente dimostrato da  
praticamente tutti i software open source, linux incluso.
In ogni caso, se Linus (intendo ovviamente la community) avesse  
scritto tutti i diagrammi UML prima di cominciare lo sviluppo di  
linux, probabilmente non mi avrebbe semplificato la comprensione del  
kernel (che è un software particolarmente complesso e dipendente da  
dettagli di basso livello), ma sicuramente non avremmo avuto alcun  
"linux" funzionante per chissà quanti anni. Ti consiglio di leggere  
il famoso saggio "La cattedrale e il bazaar", di E. Raymond,  
reperibile facilmente in rete.


> L'UML fa da "linguaggio universale" che chiunque può prendere capire e
> implementare.

Chiunque studi UML. Come chiunque studi python (o qualunque altro  
linguaggio altamente espressivo). Con la differenza che se scrivo in  
python ho anche un prototipo funzionante.


> Lo si può usare *anche* come documentazione inserito all'interno di
> processi di sviluppo agili tipo XP programming e simili. Ma magari
> avrete da ridire anche su di questi...

Continuo a non capire perchè devo mettermi a disegnare quadretti e  
freccette per documentare qualcosa. Se ho bisogno di una  
documentazione tecnica ho codice e commenti, se invece ho bisogno di  
documentazione per i manager, scrivo una mezza paginetta in inglese/ 
italiano/quant'altro.

> Per maggiori dettagli sull'UML:
> http://it.wikipedia.org/wiki/Unified_Modeling_Language

Conosco UML, grazie. (com'era la pubblicità? se lo conosci lo eviti?)


> Per l'elenco di aziende che si divertono a perdere tempo:
> http://www.omg.org/cgi-bin/apps/membersearch.pl (schiacciare "search")

Che poi sarebbe proprio da vedere come e quanto viene utilizzato  
all'interno delle aziende. Cosa impossibile da fare per software closed.

--
Antonio Valente


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Y3s


Il giorno 03/feb/08, alle ore 21:38, Crash Override ha scritto:


Enrico Franchi ha scritto:


On Feb 3, 2008, at 8:30 PM, giuseppe saviano wrote:



ho capito che la progettazione uml in alcuni casi risulta limitante;
nella stessa serie di messaggi si parlava poi di list comprehension
... altri esempi?


Non è che è limitante, è che tutt'ora devo trovare un caso in cui sia
davvero utile.
No, il fatto che il management si ecciti se gli porti dei plichi di
documentazione non conta.

In pratica UML è una cosa che piace molto ai patiti del big design up
front (ci vuole pure un linguaggio in cui esprimerlo sto design,  
no?).


Nei linguaggi inerentemente dinamici, la programmazione agile è parte
del DNA di quasi ogni programmatore.

Aggiungo: Don't Repeat Yourself; perchè esprimere qualcosa in UML
quando ho Python? Faccio prima ed è pure eseguibile. Mica sviluppiamo
in Java, qui.
Poi c'è tutto il discorso sulla ridondanza dell'informazione, etc etc
etc.

Nota, non è che sono *contro* UML: sono contro la maggior parte degli
usi che se ne fanno; specialmente sono contrario ad usarlo come
strumento di design.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Forse non avete ben chiari i vari ruoli dei membri che  
contribuiscono al successo di un progetto software. Avete mai  
sentito parlare di Architect, Designer? O conoscete solo il  
programmatore?


Oltre al fatto che in molte delle metodologie di sviluppo "moderne"  
il programmatore è al centro del progetto di sviluppo (come è giusto  
che sia), qual'è il vantaggio di UML su un linguaggio altamente  
espressivo (come python, ma puoi scegliere qualunque altro)?




Allora quando costruiamo una casa esistono solo i muratori? E se un  
muratore costruisce bene le mura allora la casa può farla senza  
progetto?


Di nuovo con questa fissazione di paragonare lo sviluppo software  
all'edilizia. Cito a memoria un esempio di Valentino Volonghi: prova  
a cambiare le fondamenta di un palazzo e poi mi dici.
In ogni caso, un muratore può costruire una casa senza architetto, il  
viceversa di nuovo non vale.




Se vi riferite esclusivamente a Python forse in parte potreste aver  
ragione... Dico forse perchè la mia conoscenza di Python non è  
molto approfondita (sicuramente si tratta di un linguaggio non  
difficilissimo).


Python non c'entra. C'entrano al limite i metodi di sviluppo agili,  
implementabili in qualunque linguaggio.




La domanda forse sarebbe:
Quali sono i vostri titoli di studio? Che fate nella vita? Ma è  
meglio tralasciare...



Ecco il punto: il lavaggio della mente delle università ;-)

--
Antonio Valente


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Y3s

Il giorno 03/feb/08, alle ore 21:41, Enrico Franchi ha scritto:

>
> On Feb 3, 2008, at 8:44 PM, Giorgio Zoppi wrote:
>
>> Questa affermazione non la capisco,sarò
>
> La spiego.
>
>> che sono ignorante, mi dispiace. UML è ottimo per documentare il
>> codice
>> e l'interazione tra  i sottosistemi, e anche per pensare a pattern.
>
> Documentare il codice con UML?
>
> 1. per l'interazione tra i sottosistemi ci potrebbe pure stare.
> peccato che non sia necessario; oltre tutto ci sono tante di quelle
> parti lasciate scoperte (volutamente) dallo standard che anche li
> bisogna praticamente sempre definirsi il proprio dialetto.

E in ogni caso è poco espressivo.

> 2. per documentare il codice, direi proprio di no. In primo luogo
> perchè UML diventa particolarmente rognoso quando si scende nei
> dettagli: la documentazione del codice spesso non prescinde dai
> dettagli, ergo eccoci con UML in difficoltà. In secondo luogo nel
> tempo in cui ci va a fare un diagramma (anzi, i due o tre diagrammi
> necessari per una data fase) UML si ripulisce il codice fino a
> renderlo sostanzialmente auto-esplicativo, tramite l'uso di
> nomenclatura *chiara*, docstrings, tests ed eventualmente se tutto
> questo non bastasse commenti mirati.

Quoto


> 3. pensare a pattern è diverso da *conoscere* i pattern. pensare a
> pattern è come dire pensare a mattoncini: se qualcuno mi dicesse che
> penso a mattoncini io gli tirerei due schiaffoni. Non si *pensa* a
> pattern; quando si conoscono *bene* i pattern si *vedono* nel problema
> i pattern. Ma questo è un modo a posteriori di usare i pattern;
> viceversa pensare a pattern usa unità di ragionamento e struttura
> troppo rigide.

Quoto. Diverso è "parlare" a pattern, dove e quando possibile).



--
Antonio Valente


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Domenico Chierico
On Feb 3, 2008 9:41 PM, Enrico Franchi <[EMAIL PROTECTED]> wrote:

> > Quando lavori da solo è un po una rottura usarlo.
>
> Anche quando lavoro in gruppo. Certo, se per una serie di ragione i
> miei compari non sono in grado di leggere il codice e la
> documentazione e hanno bisogno di rappresentazioni grafiche... ok.
> Anche UML ha un suo senso. Viceversa preferisco del buon codice,
> scritto bene, non più complesso del necessario e una buona suite di
> test che mostri anche come il codice va usato e come non va usato.
>

e se devi definire le interfacce prima di scrivere il codice per
parallelizare l'implementazione di alcune componenti del software ?

Scrivi tutti gli stub dei moduli ?
Riesci ad avere una visione d'insieme di una grande applicazione a mente ?

IMHO e' solo questione del modello di sviluppo che si segue... si
probabilmente quando si parla di Agile non c'e' proprio bisogno di
uml, ma se cominciamo a vedere un approccio Waterfall dove chi fa
l'analisi e' una persona diversa da chi fa il progetto che e' diversa
dalle persone che implementano l'applicazione... allora formalizzare i
flussi di informazioni fra tutte queste persone potrebbe avere un
senso... dato che il codice si scrive alla fine


Tutto serve ad uno scopo se lo usi in un'ambito diverso sembra una
minchiata e questo e' normale :)
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Lawrence Oluyede
> e se devi definire le interfacce prima di scrivere il codice per
> parallelizare l'implementazione di alcune componenti del software ?

Basta parlarsi. Secondo me le CRC cards (o un semplice pezzo di carta)
sono 100 volte più utili dell'ingessato UML

> Scrivi tutti gli stub dei moduli ?
> Riesci ad avere una visione d'insieme di una grande applicazione a mente ?

Dipende da quanto grande, e poi ci sono gli architetti per questo. E
di certo non si preoccupano dei nomi dei metodi.

> IMHO e' solo questione del modello di sviluppo che si segue... si
> probabilmente quando si parla di Agile non c'e' proprio bisogno di
> uml, ma se cominciamo a vedere un approccio Waterfall dove chi fa
> l'analisi e' una persona diversa da chi fa il progetto che e' diversa
> dalle persone che implementano l'applicazione... allora formalizzare i
> flussi di informazioni fra tutte queste persone potrebbe avere un
> senso... dato che il codice si scrive alla fine

Il waterfall è un problema per la maggioranza dei casi, e non sono io
a dirlo :-D


-- 
Lawrence, stacktrace.it - oluyede.org - neropercaso.it
"It is difficult to get a man to understand
something when his salary depends on not
understanding it" - Upton Sinclair
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Y3s

Il giorno 03/feb/08, alle ore 22:00, Domenico Chierico ha scritto:

> On Feb 3, 2008 9:41 PM, Enrico Franchi <[EMAIL PROTECTED]>  
> wrote:
>
>>> Quando lavori da solo è un po una rottura usarlo.
>>
>> Anche quando lavoro in gruppo. Certo, se per una serie di ragione i
>> miei compari non sono in grado di leggere il codice e la
>> documentazione e hanno bisogno di rappresentazioni grafiche... ok.
>> Anche UML ha un suo senso. Viceversa preferisco del buon codice,
>> scritto bene, non più complesso del necessario e una buona suite di
>> test che mostri anche come il codice va usato e come non va usato.
>>
>
> e se devi definire le interfacce prima di scrivere il codice per
> parallelizare l'implementazione di alcune componenti del software ?
>
> Scrivi tutti gli stub dei moduli ?
> Riesci ad avere una visione d'insieme di una grande applicazione a  
> mente ?

Il punto è: che bisogno c'è di usare una cosa inutile e complessa  
come uml? perchè non utilizzare semplicemente un linguaggio altamente  
espressivo, che ha anche il vantaggio di fornirti un prototipo  
eseguibile?


> IMHO e' solo questione del modello di sviluppo che si segue... si
> probabilmente quando si parla di Agile non c'e' proprio bisogno di
> uml, ma se cominciamo a vedere un approccio Waterfall dove chi fa
> l'analisi e' una persona diversa da chi fa il progetto che e' diversa
> dalle persone che implementano l'applicazione... allora formalizzare i
> flussi di informazioni fra tutte queste persone potrebbe avere un
> senso... dato che il codice si scrive alla fine
>

Waterfall? Gli anni '80 sono passati da un po' eh ;-)
Comunque, nessuno nega che la formalizzazione dei flussi di  
informazioni tra persone diverse dello stesso team o tra team diversi  
sia necessaria, ma io (e penso altri) non capisco perchè uml. Non  
capisco i vantaggi di uml rispetto a un altro linguaggio più  
espressivo. Probabilmente perchè avere un diagramma fa più fico nelle  
riunioni?

--
Antonio Valente


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Domenico Chierico
On Feb 3, 2008 10:14 PM, Lawrence Oluyede <[EMAIL PROTECTED]> wrote:
> > e se devi definire le interfacce prima di scrivere il codice per
> > parallelizare l'implementazione di alcune componenti del software ?
>
> Basta parlarsi. Secondo me le CRC cards (o un semplice pezzo di carta)
> sono 100 volte più utili dell'ingessato UML
>
> > Scrivi tutti gli stub dei moduli ?
> > Riesci ad avere una visione d'insieme di una grande applicazione a mente ?
>
> Dipende da quanto grande, e poi ci sono gli architetti per questo. E
> di certo non si preoccupano dei nomi dei metodi.

No no ma infatti sono d'accordo che probabilmente il diagramma delle
classi e' la parte piu' inutile dell'uml ... secondo me "soprattutto"
nelle universita l'uml e' spiegato e insegnato in modo insensato.

>
> > IMHO e' solo questione del modello di sviluppo che si segue... si
> > probabilmente quando si parla di Agile non c'e' proprio bisogno di
> > uml, ma se cominciamo a vedere un approccio Waterfall dove chi fa
> > l'analisi e' una persona diversa da chi fa il progetto che e' diversa
> > dalle persone che implementano l'applicazione... allora formalizzare i
> > flussi di informazioni fra tutte queste persone potrebbe avere un
> > senso... dato che il codice si scrive alla fine
>
> Il waterfall è un problema per la maggioranza dei casi, e non sono io
> a dirlo :-D
>

be sicuramente e' poco applicabile oramai pero' per certi tipi di
progetto la via vecchia e' sempre attuabile.

Be in conclusione la cosa secondo me da chiarire e' che l'UML non e'
un linguaggio pensato per la documentazione del codice, e'
semplicemente una formalizzazione per la modellazione ,  ha senso solo
e' soltato se e' generato prima (molto prima) di mettere le mani su
una tastiera, e soprattuto non e' compito di un programmatore creare
l'uml. Dovrebbe essere, sempre per come l'ho inteso io, un mezzo
standard per far comunicare architetti e sviluppatori, analisti e
architetti etc etc...

Detto in modo semplice, dovrebbe sostituire quella meravigliosa forma
d'arte che sono gli schizzi e schemi che, credo, ogniuno di noi
produce durante lo sviluppo di un software.

Io la vedo cosi' non uso molto UML ma quando e' servito e' stata una
gran cosa... certo e' si potrebbe anche creare qualcosa di meglio, non
e' che sia cosi' bello ... ma io conosco solo quello.. :)
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Giorgio Zoppi
2008/2/3, Domenico Chierico <[EMAIL PROTECTED]>:
> On Feb 3, 2008 9:41 PM, Enrico Franchi <[EMAIL PROTECTED]> wrote:
>
> > > Quando lavori da solo è un po una rottura usarlo.
> >
> > Anche quando lavoro in gruppo. Certo, se per una serie di ragione i
> > miei compari non sono in grado di leggere il codice e la
> > documentazione e hanno bisogno di rappresentazioni grafiche... ok.
> > Anche UML ha un suo senso. Viceversa preferisco del buon codice,
> > scritto bene, non più complesso del necessario e una buona suite di
> > test che mostri anche come il codice va usato e come non va usato.
> >
>
> e se devi definire le interfacce prima di scrivere il codice per
> parallelizare l'implementazione di alcune componenti del software ?
>
> Scrivi tutti gli stub dei moduli ?
> Riesci ad avere una visione d'insieme di una grande applicazione a mente ?


Il problema è che le applicazioni esplodono soprattutto quelle scritte
in linguaggi come C# e
Java: lo dico per esperienza. In Python non ho scritto mai piu di 1000
righe di codice.
Cio' accade soprattutto quando si è in tanti a lavorare, perche ognuno vuole
mettere le sue ganzate: questo o quel design pattern quel modo di
procedere invece che
un'altro. Cosi uno si trova a passare i pomeriggi a fare debug scritto
dagli altri (se riuscite
a capire un sistema fatto da tanto solo dall'analisi statica, cambio
mestiere...vado
a fare l'educatore), mentre se fosse solo un po' piu documentato magari con UML
il pomeriggio lo passerebbe a fare shopping o cmq sa come e' fatto il
sistema si mette l'anima in pace e quando ci sono problemi di
performance sa dove andare a parare per eliminare i colli di
bottiglia. Un'altra
cosa che accade spesso in progetti opensource, non nel kernel di Linux
che è ben
commentato o nei sorgenti di Python (per esempio la parte sul garbage collection
è una favola..quasi quasi è piu la doc che il codice), è che spesso ti
trovi davanti
ad grandi parti  di codice C o Java, dove non c'e un commento o solo
commenti stupidi:
esperienza di un paio di mesi fa davanti a JBoss per dare una
struttura gerarchica
agli EJB, preferivo sparire e cambiare mestire. Infatti si è passati a
Python e SCA di IBM.

> IMHO e' solo questione del modello di sviluppo che si segue... si
> probabilmente quando si parla di Agile non c'e' proprio bisogno di
> uml, ma se cominciamo a vedere un approccio Waterfall dove chi fa
> l'analisi e' una persona diversa da chi fa il progetto che e' diversa

Sta cosa dello sviluppo agile ed Extreme Programming non lo mai capita,
ma in Italia ce qualcuno in questa ml. che lo fa realmente?
Se si quanto fate durare le iterazioni? Ce qualcuno che fa UP Agile?
Secondo me se non è fatto bene puzza di code-and-fix.
In generale comunque usare linguaggi piu snelli come Python,
semplifica di molto
il ciclo di sviluppo. Due mesi fa ho scritto un parser soap, che
prelevava i pacchetti
dalla rete, con libpcap in Python, in una giornata..in C o in Java
c'avrei messo mezza
settimana.

>
> Tutto serve ad uno scopo se lo usi in un'ambito diverso sembra una
> minchiata e questo e' normale :)
> ___
> Python mailing list
> Python@lists.python.it
> http://lists.python.it/mailman/listinfo/python
>
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Manlio Perillo
Y3s ha scritto:
> Il giorno 03/feb/08, alle ore 22:00, Domenico Chierico ha scritto:
> 
>> On Feb 3, 2008 9:41 PM, Enrico Franchi <[EMAIL PROTECTED]>  
>> wrote:
>>
 Quando lavori da solo è un po una rottura usarlo.
>>> Anche quando lavoro in gruppo. Certo, se per una serie di ragione i
>>> miei compari non sono in grado di leggere il codice e la
>>> documentazione e hanno bisogno di rappresentazioni grafiche... ok.
>>> Anche UML ha un suo senso. Viceversa preferisco del buon codice,
>>> scritto bene, non più complesso del necessario e una buona suite di
>>> test che mostri anche come il codice va usato e come non va usato.
>>>
>> e se devi definire le interfacce prima di scrivere il codice per
>> parallelizare l'implementazione di alcune componenti del software ?
>>
>> Scrivi tutti gli stub dei moduli ?
>> Riesci ad avere una visione d'insieme di una grande applicazione a  
>> mente ?
> 
> Il punto è: che bisogno c'è di usare una cosa inutile e complessa  
> come uml? perchè non utilizzare semplicemente un linguaggio altamente  
> espressivo, che ha anche il vantaggio di fornirti un prototipo  
> eseguibile?
> 
> 
>> IMHO e' solo questione del modello di sviluppo che si segue... si
>> probabilmente quando si parla di Agile non c'e' proprio bisogno di
>> uml, ma se cominciamo a vedere un approccio Waterfall dove chi fa
>> l'analisi e' una persona diversa da chi fa il progetto che e' diversa
>> dalle persone che implementano l'applicazione... allora formalizzare i
>> flussi di informazioni fra tutte queste persone potrebbe avere un
>> senso... dato che il codice si scrive alla fine
>>
> 
> Waterfall? Gli anni '80 sono passati da un po' eh ;-)
> Comunque, nessuno nega che la formalizzazione dei flussi di  
> informazioni tra persone diverse dello stesso team o tra team diversi  
> sia necessaria, ma io (e penso altri) non capisco perchè uml. Non  
> capisco i vantaggi di uml rispetto a un altro linguaggio più  
> espressivo. Probabilmente perchè avere un diagramma fa più fico nelle  
> riunioni?
> 

Pensa che ho avuto una discussione simile nell'ambito SQL su cosa fosse 
meglio usare: un diagramma E/R o del semplice codice pseudo SQL.


La mia tesi a favore del codice SQL era la facilità di modifica e 
versionamento (specialmente se condiviso) mentre un diagramma grafico è 
una rottura da gestire.

La sua tesi era che non si deve scrivere codice nella fase di design 
(ok, ma un diagramma E/R non è codice?).


Manlio Perillo
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


[Python] Python vs UML

2008-02-03 Per discussione giuseppe saviano
> > nella stessa serie di messaggi si parlava poi di list comprehension
> > ... altri esempi?

>Altri esempi di cosa? Di roba "pythonica"? Prova ad aprire una shell ...

no, intendevo altri esempi di costrutti python non esprimibili con uml
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Enrico Franchi

On Feb 3, 2008, at 10:14 PM, Lawrence Oluyede wrote:

> Basta parlarsi. Secondo me le CRC cards (o un semplice pezzo di carta)
> sono 100 volte più utili dell'ingessato UML

Cazzo quanto quoto.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Enrico Franchi

On Feb 3, 2008, at 10:38 PM, giuseppe saviano wrote:

> no, intendevo altri esempi di costrutti python non esprimibili con uml

IMHO non hai ben chiaro cosa sia UML e come si usi.

___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Y3s

Il giorno 03/feb/08, alle ore 22:36, Manlio Perillo ha scritto:
>>>

>>
>> Waterfall? Gli anni '80 sono passati da un po' eh ;-)
>> Comunque, nessuno nega che la formalizzazione dei flussi di
>> informazioni tra persone diverse dello stesso team o tra team diversi
>> sia necessaria, ma io (e penso altri) non capisco perchè uml. Non
>> capisco i vantaggi di uml rispetto a un altro linguaggio più
>> espressivo. Probabilmente perchè avere un diagramma fa più fico nelle
>> riunioni?
>>
>
> Pensa che ho avuto una discussione simile nell'ambito SQL su cosa  
> fosse
> meglio usare: un diagramma E/R o del semplice codice pseudo SQL.
>

Però già un diagramma E/R è diverso: è più semplice e non c'è bisogno  
di imparare un nuovo formalismo, bastano 2 o 3 convenzioni, poi tutti  
riescono a scrivere una tabellina di campi. Mentre UML è un vero  
formalismo, ingessato, poco flessibile, non si impara certo in 10  
minuti. Quello che dico è: se dobbiamo insegnare a uno un linguaggio  
come UML, non conviene insegnargli un linguaggio "reale"?
Comunque tra diagramma E/R e codice SQL generico penso sia davvero  
una questione di gusti!

>
> La mia tesi a favore del codice SQL era la facilità di modifica e
> versionamento (specialmente se condiviso) mentre un diagramma  
> grafico è
> una rottura da gestire.

>
> La sua tesi era che non si deve scrivere codice nella fase di design
> (ok, ma un diagramma E/R non è codice?).


Infatti.

--
Antonio Valente


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Enrico Franchi

On Feb 3, 2008, at 10:35 PM, Giorgio Zoppi wrote:

> Il problema è che le applicazioni esplodono soprattutto quelle scritte
> in linguaggi come C# e Java: lo dico per esperienza.

Quoto, ovviamente. Per Java intendo. C# non me lo filo, per cui non mi  
esprimo.
Mi sono spesso interrogato sulla tendenza a sovraingegnerizzare di  
progettisti Java.

> In Python non ho scritto mai piu di 1000
> righe di codice.

Eh...

> Cio' accade soprattutto quando si è in tanti a lavorare, perche  
> ognuno vuole
> mettere le sue ganzate: questo o quel design pattern quel modo di
> procedere invece che
> un'altro. Cosi uno si trova a passare i pomeriggi a fare debug scritto
> dagli altri

Questo è vero. Ma va anche detto che ci sono *tanti* metodi che  
possono essere usati.
Il pair programming risolve abbastanza alla svelta (a meno che  
casualmente non si formi sempre una coppia di due con gli stessi  
vizi...).
In generale anche la peer review risolve.


> (se riuscite
> a capire un sistema fatto da tanto solo dall'analisi statica, cambio
> mestiere...vado
> a fare l'educatore)

Se ti può interessare, a margine, ho anche lavorato a tools di analisi  
statica automatizzata. :P
Ma è meglio che non dica quale sia la mia opinione a riguardo.

> , mentre se fosse solo un po' piu documentato magari con UML
> il pomeriggio lo passerebbe a fare shopping o cmq sa come e' fatto il
> sistema si mette l'anima in pace e quando ci sono problemi di
> performance sa dove andare a parare per eliminare i colli di
> bottiglia.

Se riesci a capire dove sta il collo di bottiglia di un sistema  
guardando la descrizione (necessariamente astratta) in UML, tanto di  
cappello.
Io non sono minimamente in grado (esattamente come mi rendo conto che  
la pura intuizione è fuorviante).
Preferisco usare un buon profiler e arrivare al punto.


> Un'altra cosa che accade spesso in progetti
> opensource, non nel kernel di Linux che è ben
> commentato o nei sorgenti di Python (per esempio la
> parte sul garbage collection è una favola..quasi
> quasi è piu la doc che il codice), è che spesso ti
> trovi davanti ad grandi parti di codice C o Java,
> dove non c'e un commento o solo commenti stupidi:
> esperienza di un paio di mesi fa davanti a JBoss
> per dare una struttura gerarchica agli EJB,
> preferivo sparire e cambiare mestire. Infatti si è
> passati a Python e SCA di IBM.

Bene. Sempre felice quando si passa a Python.

___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Enrico Franchi

On Feb 3, 2008, at 10:42 PM, Y3s wrote:

> Però già un diagramma E/R è diverso: è più semplice e non c'è bisogno
> di imparare un nuovo formalismo, bastano 2 o 3 convenzioni, poi tutti
> riescono a scrivere una tabellina di campi.

Sono abbastanza d'accordo. Tra l'altro quello dei DB è uno dei pochi  
campi in cui mi trovo bene con gli schemi.

Anche usando sintassi pseudo-relazionali, avere le keys grafiche aiuta  
a focalizzare le interdipendenze.

> Mentre UML è un vero
> formalismo, ingessato, poco flessibile, non si impara certo in 10
> minuti.

E poi ti possono vendere un bel case da K$ a licenza...
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Giorgio Zoppi
> Oh, grazie del link.
> Ma se si vuole consigliare qualcosa di buono, perchè non linkare il
> libro di Fowler?
> http://www.amazon.com/UML-Distilled-Standard-Addison-Wesley-Technology/dp/0321193687/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1202078809&sr=1-1
>
> Per quanto in completo e totale disaccordo, non è mae nemmeno questo:
> http://www.amazon.com/UML-Unified-Process-Object-Oriented-Addison-Wesley/dp/0321321278/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1202078755&sr=8-1
>
> Cosa vuole dire? Che sono abbastanza realisti, non sono degli
> invasati. E no, non mi hanno convinto che il loro metodo sia buono, ma
> almeno l'esposizione è lucida e ben fatta.

Gia che siete in vena di link, a me è piaciuto molto questo:
Applying UML and Patterns.

http://www.amazon.com/Applying-UML-Patterns-Craig-Larman/dp/0137488807
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Enrico Franchi

On Feb 3, 2008, at 9:31 PM, Java wrote:

> Vai e dillo alla IBM (Microsoft Hp etc etc)che con l'uml ci  
> "perdono" un
> sacco di tempo. Ti do una dritta generale: quando un'azienda fa
> qualcosa, è perché ci guadagna, non perché ci perde del tempo.

Beh, per quanto tempo ci perda IBM ci fanno pure un sacco di soldi.  
Presente Rational Rose?
Insomma, oste, come è il vino?

> Poi cerchiamo anche di separare un po le cose. Una cosa è quando fai  
> il
> tuo programmino o sitini internet. Un'altra è quando devi progettare  
> una
> grossa applicazione alla quale trovi impegnati diversi team. Come
> esercizio  potresti provare ad analizzare i codice dell'ultimo kernel
> linux. Vediamo se lo capisci al 90%.

Ma che discorso! Tra l'altro un kernel è un *pessimo* esempio per un  
uso sensato di UML.

Sono perfettamente convinto che se ti faccio vedere l'ottimizzatore di  
un compilatore non lo capisci nemmeno al 10%. E se te lo faccio vedere  
con qualche documentazione in UML continui a non capirlo. Ma non per  
un limite tuo: perchè (probabilmente) non hai li le tue skills. Tra  
l'altro avrei molta poca fiducia di un programmatore che non è in  
grado di comprendere il codice, a prescindere dal fatto che capisca UML.

> L'UML fa da "linguaggio universale" che chiunque può prendere capire e
> implementare.

Ma via, non scherziamo. Un 'linguaggio universale'. Se non lo studi  
non lo capisci; e allora quale è il vantaggio?
Che si presta ugualmente male a descrivere i vari linguaggi di  
programmazione?

> Lo si può usare *anche* come documentazione inserito all'interno di
> processi di sviluppo agili tipo XP programming e simili. Ma magari
> avrete da ridire anche su di questi...

Che lo si possa inserire chi dice nulla. Sul fatto che sia davvero  
necessario ho dei seri dubbi.
Sul fatto che sia parzialmente antitetico allo spirito stesso di XP  
sono invece piuttosto d'accordo.
In particolare è *ovvio* che è integrabile in XP; come è ovvio che  
elementi di XP possono essere presi e innestati in altri processi di  
sviluppo.
XP è *estremamente* flessibile.

Questo non vuole dire che UML sia semplicemente un overkill.

> Per maggiori dettagli sull'UML:
> http://it.wikipedia.org/wiki/Unified_Modeling_Language

Oh, grazie del link.
Ma se si vuole consigliare qualcosa di buono, perchè non linkare il  
libro di Fowler?
http://www.amazon.com/UML-Distilled-Standard-Addison-Wesley-Technology/dp/0321193687/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1202078809&sr=1-1

Per quanto in completo e totale disaccordo, non è mae nemmeno questo:
http://www.amazon.com/UML-Unified-Process-Object-Oriented-Addison-Wesley/dp/0321321278/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1202078755&sr=8-1

Cosa vuole dire? Che sono abbastanza realisti, non sono degli  
invasati. E no, non mi hanno convinto che il loro metodo sia buono, ma  
almeno l'esposizione è lucida e ben fatta.

> Per l'elenco di aziende che si divertono a perdere tempo:
> http://www.omg.org/cgi-bin/apps/membersearch.pl (schiacciare "search")

Quindi aspetta... 1 mosche non possono sbagliare?
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Enrico Franchi

On Feb 3, 2008, at 10:32 PM, Domenico Chierico wrote:

> No no ma infatti sono d'accordo che probabilmente il diagramma delle
> classi e' la parte piu' inutile dell'uml ... secondo me "soprattutto"
> nelle universita l'uml e' spiegato e insegnato in modo insensato.

Vediamo un po' sto UML... tutta la parte di UseCase (che per inciso è  
il pezzo più utile dell'ambaradan) è un'inutile formalizzazione di una  
cosa molto naturale.
E' precisamente il pezzo in cui si vede quanto la descrizione testuale  
sia *molto* più importante del disegnino. A questo punto, seghi i  
disegnini, rendi il tutto più umano e meno formale invece che 'use- 
case' hai delle stories: più leggibili, comprensibili e comode.

Ma diciamola... anche le macchine a stati mi è capitato di usarle. Ma  
tipicamente fuori dal formalismo dell'UML, quando e se ce ne è  
bisogno, senza irrigidirmi alla UP o peggio RUP.

La parte di architettura di UML è aperta: ovvero in pratica ti devi  
reinventare il tutto tu.

Il diagramma delle classi concordo: è inutile o quasi (se non a  
posteriori, come informazione aggiuntiva se ad uno proprio garba  
vedere le cose grafiche).

Ma quindi di utile cosa ci sarebbe?

> be sicuramente e' poco applicabile oramai pero' per certi tipi di
> progetto la via vecchia e' sempre attuabile.

Per i progetti che vanno fatti fallire, dai. Anche se vuoi stare in  
modalità ingessata, allora UP è venti volte migliore.


> Be in conclusione la cosa secondo me da chiarire e' che l'UML non e'
> un linguaggio pensato per la documentazione del codice, e'
> semplicemente una formalizzazione per la modellazione ,  ha senso solo
> e' soltato se e' generato prima (molto prima) di mettere le mani su
> una tastiera, e soprattuto non e' compito di un programmatore creare
> l'uml. Dovrebbe essere, sempre per come l'ho inteso io, un mezzo
> standard per far comunicare architetti e sviluppatori, analisti e
> architetti etc etc...

Questa è in effetti la funzione classica che assume (e che ha nelle  
intenzioni dei suoi creatori).
Il punto è che buona parte di noi qui sono assolutamente pro XP. Dal  
che segue che tutto sto rigidume 'eBiz' ci fa un po' onco.

> Io la vedo cosi' non uso molto UML ma quando e' servito e' stata una
> gran cosa... certo e' si potrebbe anche creare qualcosa di meglio, non
> e' che sia cosi' bello ... ma io conosco solo quello.. :)

Non credo si possa creare qualcosa di strettamente migliore (ovvero,  
si può, ma potrebbe essere UML 3.0 o un'altra cosa ma poco importa).  
Il punto è proprio la presunzione dello strumento. Ci si è inventati  
un problema e si ha creato lo strumento quasi adatto per risolverlo.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Domenico Chierico
ba secondo me la questione non sta proprio in questi termini... per me
uml e' solo una maniera formalizzata di fare i soliti disegnini 

al fine che chiunque se vuole studia e li capisce poi decidi tu cosa
ti serve disegnare...

e' un linguaggio per descrivere i risultati della fase di modellazione
.. non e' uno strumento per modellare i problemi.

Invece di fare lo use case con il quadrato hanno deciso che si usa il
cerchio chiunque lo vede capisce .. tutto qua .. secondo me spesso si
cerca di usare l'uml per cose per cui non ha senso.

Ora che tu ti trovi meglio a scrivere per esteso o io a fare i pallini
o un'altro fara' le crocette e' una questione di personale gusto ...

Uml e' solo uno dei linguaggi per fare disegnini e schemini .. io
solitamente lo uso sulla carta.

that's all .. per me
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Y3s

Il giorno 04/feb/08, alle ore 00:02, Enrico Franchi ha scritto:

>
> On Feb 3, 2008, at 10:32 PM, Domenico Chierico wrote:
>
>> No no ma infatti sono d'accordo che probabilmente il diagramma delle
>> classi e' la parte piu' inutile dell'uml ... secondo me "soprattutto"
>> nelle universita l'uml e' spiegato e insegnato in modo insensato.
>
> Vediamo un po' sto UML... tutta la parte di UseCase (che per inciso è
> il pezzo più utile dell'ambaradan) è un'inutile formalizzazione di una
> cosa molto naturale.
> E' precisamente il pezzo in cui si vede quanto la descrizione testuale
> sia *molto* più importante del disegnino. A questo punto, seghi i
> disegnini, rendi il tutto più umano e meno formale invece che 'use-
> case' hai delle stories: più leggibili, comprensibili e comode.
>

E se chi le scrive ha il giusto senso dell'umorismo anche molto più  
simpatiche e di conseguenza "leggere" da leggere (doh!)



> Ma quindi di utile cosa ci sarebbe?

Il case da K$ dell'altro post forse? ;-)


--
Antonio Valente


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Enrico Franchi

On Feb 3, 2008, at 9:38 PM, Crash Override wrote:

> Forse non avete ben chiari i vari ruoli dei membri che  
> contribuiscono al successo di un progetto software. Avete mai  
> sentito parlare di Architect, Designer? O conoscete solo il  
> programmatore?

Non ti senti arrogante ad uscirtene con una frase del genere?

> Se vi riferite esclusivamente a Python forse in parte potreste aver  
> ragione... Dico forse perchè la mia conoscenza di Python non è molto  
> approfondita (sicuramente si tratta di un linguaggio non  
> difficilissimo).

Ma quale è il punto? Stiamo in una ML di Python o sbaglio.
Per inciso, se uso un linguaggio demenziale, potrebbe cambiare proprio  
tutto alla radice. Cambia la quantità di informazione semantica  
portata dal codice stesso, cambia l'utilità di determinati strumenti.  
Si cambia anche linguaggio, per inciso.

Che so... quando lavoro in Prolog mi verrebbe da ridere a usare UML  
(poi a me Prolog non è che stia molto simpatico). Ma idem per Haskell  
(che invece mi sta molto simpatico), eh.

Guarda caso UML è culo e camicia con Java. Insomma, perchè sbattermi  
con uno schema UML quando in un tempo comparabile ho un prototipo  
funzionante con una buona suite di test unitari e funzionali. E magari  
pure qualche pezzo dei test di integrazione.

> Quali sono i vostri titoli di studio? Che fate nella vita? Ma è  
> meglio tralasciare...

Dottore in Matematica e Informatica. Ma penso che possiamo tralasciare  
cose tristi come sbandierare curriculum, pubblicazioni, etc etc etc,  
sono d'accordo. Ed è un giochino in cui non mi faccio trascinare.

Tra l'altro spiegami cosa dovrebbe avere a che fare il titolo di  
studio con la competenza in un discorso di questo tipo. In Università  
insegnano quasi nulla di quello che è necessario 'qua fuori'. Sulle  
cose *teoriche* sono *molto* forti. Idem sul formare determinate  
abilità di ragionamento e tutto. Sugli aspetti tecnologici spesso no:  
e giustamente, per inciso. 
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Giorgio Zoppi
> Uml e' solo uno dei linguaggi per fare disegnini e schemini .. io
> solitamente lo uso sulla carta.
Ma infatti vanno fatti su carta.
Trovo che gli strumenti case siano scomodi, costosi e perdi tempo.
Molto spesso il reverse engineering non funziona. Io alla fanzoppi lo
faccio spesso, sperando di avere qualche lume sul progetto..ma è
sempre difficile fare ispection con tali strumenti.
Te nel tuo gruppo devi comunicare e questo lo puoi fare parlando,
scrivendogli un trattato
usare le CRC cards (ce un libro chiamato Object Thinking della MS
Press, bellino su questo),
oppure facendo dei diagrammi di sequenza.
La modellazione del dominio la fai a priori: è il modo in cui pensi ad
oggetti importante
non lo strumento formale. Lo strumento formale come UML ti serve per
scambiare informazioni e ricevere informazioni IMHO ed non
necessariamente dovrebbe essere al pc. Personalmente cmq sono un fan
dei diagrammi di sequenza.
Cheers,
Giorgio.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Enrico Franchi

On Feb 4, 2008, at 12:12 AM, Y3s wrote:

> E se chi le scrive ha il giusto senso dell'umorismo anche molto più
> simpatiche e di conseguenza "leggere" da leggere (doh!)

Si, vero. :)

> Il case da K$ dell'altro post forse? ;-)

Solo dopo averlo scritto. :P

___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Domenico Chierico
On Feb 4, 2008 12:19 AM, Giorgio Zoppi <[EMAIL PROTECTED]> wrote:
 Personalmente cmq sono un fan
> dei diagrammi di sequenza.
> Cheers,
> Giorgio.

si si i diagrammi di sequenza so un po pallosi da fare ma quando devi
farti capire e' la via :)
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Python vs UML

2008-02-03 Per discussione Roberto Bettazzoni
Ciao a tutti,
butto i miei 2 centesimi

In sintesi:
concordo sull'inutilità di UML per lo sviluppo, soprattutto
se usi un linguaggio come Python.

Y3s ha scritto:
> Il giorno 03/feb/08, alle ore 21:38, Crash Override ha scritto:
>> Enrico Franchi ha scritto:
>>> On Feb 3, 2008, at 8:30 PM, giuseppe saviano wrote:
>>>
>>>   
 ho capito che la progettazione uml in alcuni casi risulta limitante;
 nella stessa serie di messaggi si parlava poi di list comprehension
 ... altri esempi?
 
>>> Non è che è limitante, è che tutt'ora devo trovare un caso in cui sia  
>>> davvero utile.

Anch'io vengo da una storia di UML imposto dal management in una grossa
applicazione J2EE
... lasciamo stare, brutti ricordi

Però, ultimamente, ho visto due applicazioni dell'UML

- Dove lavoro ora chi scrive embedded lo utilizza con successo per documentare
l'unione di Hw e Sw. Sembra che sia piuttosto utile allo scopo.
(è una parte che non conosco bene, lo riferisco solo per dovere di notizia).

- In una applicazione sviluppata congiuntamente da un team C++ ed uno Python
abbiamo visto che 2 o 3 semplici diagrammi in UML, che "congelavano" le 
interfacce
senza scendere in dettagli, evitavano una marea di discussioni.
Non che fosse vitale dal punto di vista del design, o tecnico in generale,
ma è stato utile: il team C++ non voleva vedere del codice pitonico e molti
serpidi non capivano il C++. L'UML è stato un compromesso accettabile per 
entrambi.


>> Forse non avete ben chiari i vari ruoli dei membri che contribuiscono 
>> al successo di un progetto software. Avete mai sentito parlare di 
>> Architect, Designer? O conoscete solo il programmatore?
>
si, si, anche evangelista, analista, tester, coach, QA manager
  ... di ruoli ce n'è a volontà
Qualche volta corrispondono ad un mestiere vero, altre sono solo fuffa

IMHO il tutto è piuttosto lineare.
Se un gruppo di persone vuole una cosa ed un gruppo di persone sa farla, questi
devono comunicare nel linguaggio più efficente allo scopo.
UML, Python, Italiano, Inglese, SQL, C++ ... non importa.
Qui si parla di comunicazione tra le persone, non di comunicazione con la 
macchina.
L'unico che comunica con la macchina è il programmatore mediante il codice.

Nella mia esperienza UML non è il più efficente modo di comunicare con gli 
umani.
Io preferisco l'italiano o l'inglese.

A proposito dei ruoli:
se sei nell'esercito, e il tuo sergente ti dice che il tenente ti comunica che 
il
capitano ha ricevuto un ordine dal colonnello che il generale vuole che si 
avanzi
di 100 metri ... sei sicuro che siano proprio le parole del generale?
I ruoli gerarchici o sequenziali non aiutano certo la comunicazione.


>> Allora quando costruiamo una casa esistono solo i muratori? E se un 
>> muratore costruisce bene le mura allora la casa può farla senza progetto? 

Da un po' di tempo si vocifera che il codice sia il progetto (non la casa) e
che il muratore sia l'interprete (non il programmatore).


>> La domanda forse sarebbe:
>> Quali sono i vostri titoli di studio? Che fate nella vita? Ma è meglio 
>> tralasciare...

Il titolo di studio ... stupendo, come se in questo campo fosse qualificante
... ma daii

Scegli:
"Giro, vedo gente, scrivo codice"
"Mi chiamo Taz, risolvo problemi",

si, concordo, è meglio tralasciare
:-)
Roberto




___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python