[Python] 2 neo pythonisti che affrontano un orda barbara di javisti - con quasi-rissa finale
Enrico Franchi
enrico.franchi a gmail.com
Ven 1 Apr 2011 10:27:58 CEST
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-
Maggiori informazioni sulla lista
Python