Pair programming: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
FrescoBot (discussione | contributi)
m Bot: numeri di pagina nei template citazione
 
(44 versioni intermedie di 25 utenti non mostrate)
Riga 1:
[[File:Pair programming 1.jpg|thumb|Due colleghi che programmano in coppia (2007)]]
{{stub|informatica}}
La '''Programmazione di coppia''' o '''Pair programming''' è una tecnica di sviluppo del software nella quale due programmatori lavorano insieme in una postazione di lavoro. Il primo scrive il codice, mentre l'altro rivede ogni riga di codice mentre viene digitato. La persona che scrive è chiamata il conducente. La persona che fa la revisione del codice è chiamato '''l'osservatore''' o '''navigatore.''' I due programmatori si scambiano spesso ruoli (possibilmente ogni 30 minuti).
 
La '''programmazione in coppia''', meglio nota come '''''pair programming''''', è una [[metodologia di sviluppo del software]] di tipologia [[metodologia agile|agile]] nella quale due programmatori lavorano insieme sulla stessa postazione di lavoro.<ref name=":1">{{Cita pubblicazione|nome=L.|cognome=Williams|data=2001|titolo=Integrating pair programming into a software development process|rivista=Proceedings 14th Conference on Software Engineering Education and Training. 'In search of a software engineering profession' (Cat. No.PR01059)|editore=IEEE Comput. Soc|pp=27-36|accesso=2023-01-23|doi=10.1109/CSEE.2001.913816|url=http://ieeexplore.ieee.org/document/913816/}}</ref><ref name=":0">{{Cita web|url=https://www.codecademy.com/resources/blog/what-is-pair-programming/|titolo=What Is Pair Programming?|data=2021-09-24|lingua=en|accesso=2023-01-23}}</ref> I due solitamente hanno due ruoli distinti che possono scambiarsi: uno, detto "conducente" (''driver''), ha il compito di scrivere il codice, mentre l'altro, detto "osservatore" (''observer'') o "navigatore" (''navigator''), è incaricato di supervisionare e correggere il codice man mano che viene scritto.<ref name=":1" /><ref name=":0" /> Il conducente ha l'obiettivo principale di portare a termine una soluzione funzionante del problema in considerazione, mentre al navigatore è lasciato il compito di segnalare errori del conducente o proporre strategie alternative di soluzione.<ref name=":1" />
Programmare in coppia, ossia: due programmatori, due sedie, una scrivania, un computer, una tastiera ed un mouse; uno dei due scrive, l'altro verifica, entrambi scelgono la soluzione costruttiva migliore; è stato dimostrato che i costi di questa scelta sono inferiori ai benefici che apporta, ma ci sono esempi pratici che indicano come questa pratica possa essere insopportabile per alcuni programmatori e quindi controproducente, soprattutto per quelli che gli stanno intorno se si trovano in un ambinete condiviso.
 
Il pair programming è in genere applicato insieme ad altri concetti tipici delle metodologie agili e dell'''[[extreme programming]]''. Per esempio, l'attività di sviluppo viene in genere suddivisa in brevi cicli di sviluppo vincolati temporalmente (''[[timeboxing]]''), e ciascun ciclo si conclude con un rilascio del codice sviluppato ([[integrazione continua]]). In molti casi, i due programmatori si scambiano di ruolo al termine di ciascun ciclo di sviluppo.
{{portale|informatica}}
 
== Note ==
[[Categoria:Metodologie di sviluppo]]
 
<references />
== Voci correlate ==
* [[Metodologia di sviluppo del software]]
* [[Metodologia agile]]
* [[en:PairExtreme programming]]
 
== Altri progetti ==
{{interprogetto|preposizione=sulla}}
 
{{stubportale|informatica}}
 
[[Categoria:MetodologieMetodi di sviluppo software]]
[[da:Parprogrammering]]
[[de:Paarprogrammierung]]
[[en:Pair programming]]
[[es:Programación en pareja]]
[[fr:Programmation en binôme]]
[[ja:ペアプログラミング]]
[[lt:Programavimas poromis]]
[[nl:Pair programming]]
[[ru:Парное программирование]]
[[uk:Парне програмування]]
[[vi:Lập trình đôi]]
[[zh:结对编程]]