CRC karty
Author
Albert FloresCRC karty (zkratka z Class-Responsibility-Collaboration,tj. třída-zodpovědnost-spolupráce) jsou nástrojem používaném při návrhu objektově orientovaného softwaru. Jedná se o jednoduchou techniku používanou při brainstormingu, kdy se s pomocí procházení scénářů tým snaží definovat jaké se budou v systému vyskytovat třídy a jak budou interagovat.
Vzhled
CRC karta není nic jiného než obyčejný kartotéční lístek, který obsahuje záhlaví se jménem třídy, jmény jejích podtříd a nadtříd a dva sloupce. Levý se zodpovědnostmi třídy a pravý pro jména tříd, s jejichž pomocí bude třída tuto zodpovědnost realizovat.
Tvorba
Karty jsou vytvářeny při brainstormingových sezeních. Jako počátek lze vzít specifikaci programu a z podstatných jmen vytvořit třídy a ze sloves odpovědnosti. +more Další karty, zodpovědnosti a vazby mezi třídami (stejně jako změny v jichž hotových kartách) se pak odhalí při procházení scénářů a diskuse nad nimi.
Používání malých karet udržuje komplexitu návrhu na minimu. Nutí zabývat se zásadními věcmi a zabraňuje zabřednutí do přílišných detailů ve chvíli, kdy takové detaily jsou spíše kontraproduktivní. +more Také nutí návrháře, aby třídám nedával příliš mnoho zodpovědností. Díky tomu, že jsou karty malé, lze je snadno rozložit například na stole a přerovnávat je podle potřeba při diskusi s ostatními členy týmu.
CRC karty jsou výtvorem Warda Cunninghama.
Externí odkazy
[url=http://c2. com/doc/oopsla89/paper. +morehtml]A Laboratory For Teaching Object-Oriented Thinking[/url] - článek od Kenta Becka and Warda Cunninghama, který představil CRC karty na konferenci OOPSLA89. * [url=http://c2. com/doc/crc/draw. html]Ukázka prvních CRC karet vytvořených pro aplikaci HotDraw[/url].