Carlos Catucci wrote:
Io preferisco l'agilita' di Python. Fare refacttoring in ython e' per
me 100 volte piu' semplice che in Java. Cosi' come farl;o in Java (o
C#) e 100 volte piu' facile che farlo in C++.

Non saprei, sai. E' una cosa difficilmente paragonabile, IMHO.

In Java hai certe strutturazioni del codice che in Python non hai (bisogno). Di conseguenza certi tipi di refactoring in Python non li devi, in genere, fare. Pero' e' anche vero che in Java spesso basta un comando dell'IDE e le cose le fa bene (per lo meno cosi' fa IntelliJ).

Viceversa, in Python mi sono trovato spesso di fronte ad un pattern del tipo:

1. refactor
2. test
3. if test fallisce, vai a vedere cosa ti sei scordato e goto 2.
4. vai a casa tardi

Quindi il *singolo* refactoring in Python e' piu' semplice. Ma e' anche molto piu' manuale (manuale -> errore di distrazione).

Voglio dire, fino a pochissimo tempo fa, una cosa *cretina* come il rename delle variabili mi dava una probabilita' non nulla di avere un rosso per coglioneria mia. Adeddo PyCharm (e a ruota Wing) hanno sorpassato il problema.

Ah, no, le regex non aiutano, in quanto esprimono un linguaggio regolare, che e' strettamente meno potente di uno libero dal contesto, mentre per capire se una certo nome e' effettivamente quello rinominato ci vuole un linguaggio contestuale.

Poi abbiamo qui un riko che non vede l'ora di avere un po' di tempo di giocare con Pycharm piu' a lungo, eh. Trovo l'esempio particolarmente significativo: ci sono dietro gli stessi di IntelliJ, che ha capacita' di refactoring automatico avanzatissime.

Mi aspetto che in un anno e mezzo/due Pycharm fara' in proposito tutto quello che e' strutturalmente possibile fare. E cosi' ci


--
.
..: -enrico-

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

Rispondere a