[Python] Come approcciare il python
y3s a katamail.com
y3s a katamail.com
Mer 23 Gen 2008 15:02:02 CET
> On Jan 23, 2008 11:44 AM, y3s a katamail.com <y3s a katamail.com> wrote:
>
>> > Il mio intervento è volto per scoraggiare:
>> > 1. un'applicazione quasi 1-1 di tali pattern
>> > 2. il modo di ragionare a pattern che spesso viene promosso ed è
>> > tipico di buona parte del mondo (anche di quello 'buono') Java.
>> >
>>
>> Non capisco molto il punto 2...perchè scoraggiarlo? Alla fine i pattern
>> sono soluzioni sulla cui bontà tutti più o meno concordano...che so, se
>> io
>> dico "un iteratore" tutti sanno di cosa parlo e si sa che in generale è
>> un
>> buon metodo per attraversare collezioni. Ovvio che poi non bisogna
>> abusarne, e che bisogna avere un minimo di senso critico per capire se è
>> il caso di applicare un certo pattern oppure è preferibile inventarsi
>> una
>> soluzione ad hoc, ma questo è un discorso più generale. Io credo che
>> avere
>> un linguaggio comune per riferirsi ad alcuni problemi e alle soluzioni
>> generalmente accettare per risolverli sia un bene!
>>
>>
>
> Credo che il punto di Enrico fosse che in Python,
> sia per la filosofia del linguaggio, sia per la ricchezza
> della libreria standard o dei moduli fuori libreria ma diffusissimi,
> molti pattern non sono neanche pattern, si tratta solo di scrivere
> in maniera "pythonica" :-)
>
Il fatto che moltissimi patterns siano già implementati dal linguaggio o
dalla stdlib non toglie importanza ai pattern stessi, anzi secondo me la
aumenta! Il fatto è che, come dicono gli stessi signori della GoF, i
pattern esprimono prima di tutto un linguaggio, un modo di comunicare un
concetto più o meno complesso in modo immediato e accettato globalmente
(più o meno).
> Visto che citi gli iteratori, pensa a quanto sono diffusi
> e al fatto che basta scrivere pythonicamente per usarli :-)
> with open("my_data") as f:
> for line in f:
> #fai qualcosa con la linea
>
> stai iterando senza neanche pensarci :-)
>
Esatto. Ma il fatto che so che sto utilizzando un pattern è IMHO un valore
aggiunto, che poi in python mi arriva gratis, meglio, ma se devo esprimere
la stessa logica in un linguaggio diverso o addirittura in nessun
linguaggio, posso sentirmi libero di dire "iteriamo sulla struttura dati"
e aspettarmi che il mio interlocutore mi capisca...spero di aver spiegato
cosa intendo!
--
Antonio Valente
More information about the Python
mailing list