Sessió B1: C++, polimorfisme i contenidors

Dimarts 23 o Dijous 25 d'Octubre

Objectius

Exemple de test driven development

A classe implementarem "en viu" les primeres classes del nostre sistema: Obra i Colleccio. De moment no us preocupeu gaire de com s'integrarà això amb la resta de sistema.

Us hem fet commit de un entorn de desenvolupament mínim al directori src dels vostres sandbox. El directori src del sandbox ha de quedar de la següent manera:

Nota Test Driven Development

Red-Green-Refactor: el mantra del TDD

El llibre de Kent Beck que explica TDD a base d'exemples.

Amazon permet llegir-ne algun capítol.

A la wiki, teniu una explicació de com heu aplicar TDD a les pràctiques i de com convinar-ho amb l'ús de Subversion

També us hem posat una metàfora molt il·lustrativa comparant el TDD amb l'art de l'escalada

C++

Si encara no l'heu fet, seguiu el tutorial pas a pas per refrescar conceptes de C++, contenidors STL i polimorfisme

A part, us recomanem molt que implementeu l'exercici (resolt) Factures en C++ de la col.lecció de problemes.

Nota Manual de Referències del C++

La web www.sgi.com té una bona guia de la STL

La web www.cplusplus.com té una bona referència dels 'streams' de la STL

Estàndard de codificació

Alerta Estàndard de noms i del codi

Els exemples que us donarem seguiran aquest estàndar. I el vostre codi també s'hi haurà d'ajustar.

Alerta Accessibilitat dels membres
Alerta Implementant mètodes

Testfarm: Monitorització automàtica de la qualitat del codi

La pàgina de testfarm monitoritza tots els vostres repositoris. En particular mostra l'estat dels tests (verd o vermell), i el nombre de tests passant. Hi anirem afegint noves funcionalitats com mètriques de codi.

Tasques

  1. Passeu un a un els tests unitaris que teniu al tarball donat, seguint les tècniques del test driven development (TDD).
  2. Feu commit al subversion a cada pas a cada red, gren i refactor. No tingueu por de comitejar algo que no esteu segurs que sera el cami. Si camineu pel cami equivocat subversion permet tornar enrera i a més, ho podreu seguir amb l'històric per apendre'n.
  3. Desenvolupeu una nova classe Autor seguint la tècnica del TDD. De moment serà una classe amb un sol atribut, el nom, i una agregació d'obres. Per implementar aquesta agragació baseu-vos amb l'agregació que hem fet abans de Colleccio amb Obra

Valid XHTML 1.0!