[ Pobierz całość w formacie PDF ]
//-->Tytuł oryginału: Agile Software Development, Principles, Patterns, and PracticesTłumaczenie: Radosław MerykProjekt okładki: Studio Gravite / Olsztyn; Obarek, Pokoński, Pazdrijowski, ZapruckiMateriały graficzne na okładce zostały wykorzystane za zgodą Shutterstock Images LLC.ISBN: 978-83-246-9685-7Authorized translation from the English language edition, entitled:AGILE SOFTWARE DEVELOPMENT, PRINCIPLES, PATTERNS, AND PRACTICES;ISBN 0135974445; by Robert C. Martin; published by Pearson Education, Inc;publishing as Prentice Hall. Copyright © 2003 by Pearson Education, Inc.All rights reserved. No part of this book may be reproduced or transmitted in any form or byany means, electronic or mechanical, including photocopying, recording or by any informationstorage retrieval system, without permission from Pearson Education, Inc.Polish language edition published by HELION S.A., Copyright © 2015.Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszejpublikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innympowoduje naruszenie praw autorskich niniejszej publikacji.Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymiich właścicieli.Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje byłykompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związanez tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELIONnie ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystaniainformacji zawartych w książce.Wydawnictwo HELIONul. Kościuszki 1c, 44-100 GLIWICEtel. 32 231 22 19, 32 230 98 63e-mail:helion@helion.plWWW:(księgarnia internetowa, katalog książek)Drogi Czytelniku!Jeżeli chcesz ocenić tę książkę, zajrzyj pod adresMożesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.Pliki z przykładami omawianymi w książce można znaleźć pod adresem:ftp://ftp.helion.pl/przyklady/zwiwyo.zipPoleć książkę na Facebook.comKup w wersji papierowejOceń książkęKsięgarnia internetowaLubię to! » Nasza społecznośćSpis treściSłowo wstępnePrzedmowaO autorachCZĘŚĆ IZWINNE WYTWARZANIE OPROGRAMOWANIAAgile AllianceManifest Agile Alliance13142021232424Rozdział 1 Praktyki agileZasadyWniosekBibliografia272929Rozdział 2 Przegląd informacji o programowaniu ekstremalnymPraktyki programowania ekstremalnegoKlient jest członkiem zespołuHistoryjki użytkownikówKrótkie cykleTesty akceptacyjneProgramowanie paramiProgramowanie sterowane testamiWspólna własnośćCiągła integracjaRównomierne tempoOtwarta przestrzeń roboczaGra w planowanieProsty projektRefaktoryzacjaMetafora31313232323333343434353535363737WniosekBibliografia3838Rozdział 3 PlanowaniePoczątkowa eksploracjaTworzenie prototypów, dzielenie i szybkość394040Planowanie wersji dystrybucyjnychPlanowanie iteracjiPlanowanie zadańPółmetek41414142Przebieg iteracjiWniosekBibliografia4243434SPIS TREŚCIRozdział 4 TestowanieProgramowanie sterowane testamiPrzykład projektu w stylu „najpierw test”Izolacja testuNieoczekiwane wyeliminowanie sprzężeń4545464748Testy akceptacyjnePrzykład testów akceptacyjnychArchitektura „przy okazji”495051WniosekBibliografia5152Rozdział 5 RefaktoryzacjaGenerowanie liczb pierwszych — prosty przykład refaktoryzacjiOstateczny przegląd535459WniosekBibliografia6263Rozdział 6 Epizod programowaniaGra w kręgleWniosek656698CZĘŚĆ IIPROJEKT AGILESymptomy złego projektuZasadyZapachy a zasadyBibliografia101101101102102Rozdział 7 Co to jest projekt agile?Co złego dzieje się z oprogramowaniem?Zapachy projektu — woń psującego się oprogramowaniaCo stymuluje oprogramowanie do psucia się?Zespoły agile nie pozwalają psuć się oprogramowaniu103103104106106Program CopyPrzykład programu Copy wykonanego zgodnie z metodyką agileSkąd deweloperzy agile wiedzieli, co należy zrobić?106109110Utrzymywanie projektu w jak najlepszej postaciWniosekBibliografia110111111Rozdział 8 SRP — zasada pojedynczej odpowiedzialnościSRP — zasada pojedynczej odpowiedzialnościCzym jest odpowiedzialność?Rozdzielanie sprzężonych odpowiedzialnościTrwałość113113115115116WniosekBibliografia116116Rozdział 9 OCP — zasada otwarte-zamknięteOCP — zasada otwarte-zamknięteOpisKluczem jest abstrakcja117117118118SPIS TREŚCI5Aplikacja ShapeNaruszenie zasady OCPZachowanie zgodności z zasadą OCPPrzyznaję się. KłamałemPrzewidywanie i „naturalna” strukturaUmieszczanie „haczyków”Stosowanie abstrakcji w celu uzyskania jawnego domknięciaZastosowanie podejścia „sterowania danymi” w celu uzyskania domknięcia119120121122122123124125WniosekBibliografia126126Rozdział 10 LSP — zasada podstawiania LiskovLSP — zasada podstawiania LiskovProsty przykład naruszenia zasady LSPKwadraty i prostokąty — bardziej subtelne naruszenie zasady LSPPrawdziwy problemPoprawność nie jest wrodzonaRelacja IS-A dotyczy zachowaniaProjektowanie według kontraktuSpecyfikowanie kontraktów w testach jednostkowych127127128129131132132132133Realny przykładMotywacjaProblemRozwiązanie niezgodne z zasadą LSPRozwiązanie zgodne z zasadą LSP133133135136136Wydzielanie zamiast dziedziczeniaHeurystyki i konwencjeZdegenerowane funkcje w klasach pochodnychZgłaszanie wyjątków z klas pochodnych137139140140WniosekBibliografia140140Rozdział 11 DIP — zasada odwracania zależnościDIP — zasada odwracania zależnościPodział na warstwyOdwrócenie własnościZależność od abstrakcji141141142142143Prosty przykładWyszukiwanie potrzebnych abstrakcji144145Przykład programu FurnacePolimorfizm dynamiczny i statyczny146147WniosekBibliografia148148Rozdział 12 ISP — zasada segregacji interfejsówZaśmiecanie interfejsówOdrębne klienty oznaczają odrębne interfejsySiła oddziaływania klientów na interfejsy149149150151ISP — zasada segregacji interfejsówInterfejsy klas a interfejsy obiektówSeparacja przez delegacjęSeparacja przez wielokrotne dziedziczenie151152152153
[ Pobierz całość w formacie PDF ]