Refactoring: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Aggiunte non pertinenti, 90% non è refactoring, molto POV, nessuna fonte, errori vari. Rollback manuale. Etichetta: Ripristino manuale |
|||
(29 versioni intermedie di 20 utenti non mostrate) | |||
Riga 1:
{{S|programmazione}}
== Descrizione ==
Benché il concetto generale di refactoring possa essere applicato in qualsiasi contesto di sviluppo software, nelle [[metodologie agili]] e nell'[[extreme programming]] il termine è usato prevalentemente nel contesto della [[programmazione orientata agli oggetti]].
L'azione di refactoring mira a eliminare il problema (per esempio portando a fattor comune il codice duplicato) attraverso una serie di "micro-passi" il più possibile semplici.<ref name="fowlerbook"/>
Il refactoring è un elemento integrante di molti processi di sviluppo fortemente basati su [[automazione del collaudo del software|test automatici]]; per esempio, lo [[test driven development|sviluppo basato su test]] (TDD) prevede una fase (obbligatoria ed esplicita) di refactoring al termine di ogni ciclo di modifica.
== Software
Molti [[
* [[IntelliJ IDEA]] (per [[Java (linguaggio di programmazione)|Java]])
* [[Eclipse (informatica)|Eclipse]] (per Java)
* [[NetBeans]] (per Java)
* Embarcadero [[C++]] e [[
* Embarcadero [[Delphi]]
* [[Visual Studio]]
* [[PyCharm]] (per [[Python]])
* WingIDE 4.x e 5.x di WingWare
* KomodoIDE
* [[PhpStorm]] per [[PHP]]
==Note==
Line 29 ⟶ 32:
==Voci correlate==
* [[Design pattern]]▼
* [[Automazione del collaudo del software]]
▲* [[Design pattern]]
* [[Test driven development]]
* [[Programmazione estrema]]
==Collegamenti esterni==
* {{FOLDOC||refactoring}}
* [http://refactoring.com refactoring.com], raccolta di risorse sul refactoring mantenuta da [[Martin Fowler]]
{{Controllo di autorità}}
{{Portale|Informatica|ingegneria}}
|