Categories
Ebooks
-
Business and economy
- Bitcoin
- Businesswoman
- Coaching
- Controlling
- E-business
- Economy
- Finances
- Stocks and investments
- Personal competence
- Computer in the office
- Communication and negotiation
- Small company
- Marketing
- Motivation
- Multimedia trainings
- Real estate
- Persuasion and NLP
- Taxes
- Social policy
- Guides
- Presentations
- Leadership
- Public Relation
- Reports, analyses
- Secret
- Social Media
- Sales
- Start-up
- Your career
- Management
- Project management
- Human Resources
-
For children
-
For youth
-
Education
-
Encyclopedias, dictionaries
-
E-press
- Architektura i wnętrza
- Health and Safety
- Biznes i Ekonomia
- Home and garden
- E-business
- Ekonomia i finanse
- Finances
- Personal finance
- Business
- Photography
- Computer science
- HR & Payroll
- Computers, Excel
- Accounts
- Culture and literature
- Scientific and academic
- Environmental protection
- Opinion-forming
- Education
- Taxes
- Travelling
- Psychology
- Religion
- Agriculture
- Book and press market
- Transport and Spedition
- Healthand beauty
-
History
-
Computer science
- Office applications
- Data bases
- Bioinformatics
- IT business
- CAD/CAM
- Digital Lifestyle
- DTP
- Electronics
- Digital photography
- Computer graphics
- Games
- Hacking
- Hardware
- IT w ekonomii
- Scientific software package
- School textbooks
- Computer basics
- Programming
- Mobile programming
- Internet servers
- Computer networks
- Start-up
- Operational systems
- Artificial intelligence
- Technology for children
- Webmastering
-
Other
-
Foreign languages
-
Culture and art
-
School reading books
-
Literature
- Antology
- Ballade
- Biographies and autobiographies
- For adults
- Dramas
- Diaries, memoirs, letters
- Epic, epopee
- Essay
- Fantasy and science fiction
- Feuilletons
- Work of fiction
- Humour and satire
- Other
- Classical
- Crime fiction
- Non-fiction
- Fiction
- Mity i legendy
- Nobelists
- Novellas
- Moral
- Okultyzm i magia
- Short stories
- Memoirs
- Travelling
- Narrative poetry
- Poetry
- Politics
- Popular science
- Novel
- Historical novel
- Prose
- Adventure
- Journalism, publicism
- Reportage novels
- Romans i literatura obyczajowa
- Sensational
- Thriller, Horror
- Interviews and memoirs
-
Natural sciences
-
Social sciences
-
School textbooks
-
Popular science and academic
- Archeology
- Bibliotekoznawstwo
- Cinema studies
- Philology
- Polish philology
- Philosophy
- Finanse i bankowość
- Geography
- Economy
- Trade. World economy
- History and archeology
- History of art and architecture
- Cultural studies
- Linguistics
- Literary studies
- Logistics
- Maths
- Medicine
- Humanities
- Pedagogy
- Educational aids
- Popular science
- Other
- Psychology
- Sociology
- Theatre studies
- Theology
- Economic theories and teachings
- Transport i spedycja
- Physical education
- Zarządzanie i marketing
-
Guides
-
Game guides
-
Professional and specialist guides
-
Law
- Health and Safety
- History
- Road Code. Driving license
- Law studies
- Healthcare
- General. Compendium of knowledge
- Academic textbooks
- Other
- Construction and local law
- Civil law
- Financial law
- Economic law
- Economic and trade law
- Criminal law
- Criminal law. Criminal offenses. Criminology
- International law
- International law
- Health care law
- Educational law
- Tax law
- Labor and social security law
- Public, constitutional and administrative law
- Family and Guardianship Code
- agricultural law
- Social law, labour law
- European Union law
- Industry
- Agricultural and environmental
- Dictionaries and encyclopedia
- Public procurement
- Management
-
Tourist guides and travel
- Africa
- Albums
- Southern America
- North and Central America
- Australia, New Zealand, Oceania
- Austria
- Asia
- Balkans
- Middle East
- Bulgary
- China
- Croatia
- The Czech Republic
- Denmark
- Egipt
- Estonia
- Europe
- France
- Mountains
- Greece
- Spain
- Holand
- Iceland
- Lithuania
- Latvia
- Mapy, Plany miast, Atlasy
- Mini travel guides
- Germany
- Norway
- Active travelling
- Poland
- Portugal
- Other
- Przewodniki po hotelach i restauracjach
- Russia
- Romania
- Slovakia
- Slovenia
- Switzerland
- Sweden
- World
- Turkey
- Ukraine
- Hungary
- Great Britain
- Italy
-
Psychology
- Philosophy of life
- Kompetencje psychospołeczne
- Interpersonal communication
- Mindfulness
- General
- Persuasion and NLP
- Academic psychology
- Psychology of soul and mind
- Work psychology
- Relacje i związki
- Parenting and children psychology
- Problem solving
- Intellectual growth
- Secret
- Sexapeal
- Seduction
- Appearance and image
- Philosophy of life
-
Religion
-
Sport, fitness, diets
-
Technology and mechanics
Audiobooks
-
Business and economy
- Bitcoin
- Businesswoman
- Coaching
- Controlling
- E-business
- Economy
- Finances
- Stocks and investments
- Personal competence
- Communication and negotiation
- Small company
- Marketing
- Motivation
- Real estate
- Persuasion and NLP
- Taxes
- Guides
- Presentations
- Leadership
- Public Relation
- Secret
- Social Media
- Sales
- Start-up
- Your career
- Management
- Project management
- Human Resources
-
For children
-
For youth
-
Education
-
Encyclopedias, dictionaries
-
History
-
Computer science
-
Other
-
Foreign languages
-
Culture and art
-
School reading books
-
Literature
- Antology
- Ballade
- Biographies and autobiographies
- For adults
- Dramas
- Diaries, memoirs, letters
- Epic, epopee
- Essay
- Fantasy and science fiction
- Feuilletons
- Work of fiction
- Humour and satire
- Other
- Classical
- Crime fiction
- Non-fiction
- Fiction
- Mity i legendy
- Nobelists
- Novellas
- Moral
- Okultyzm i magia
- Short stories
- Memoirs
- Travelling
- Poetry
- Politics
- Popular science
- Novel
- Historical novel
- Prose
- Adventure
- Journalism, publicism
- Reportage novels
- Romans i literatura obyczajowa
- Sensational
- Thriller, Horror
- Interviews and memoirs
-
Natural sciences
-
Social sciences
-
Popular science and academic
-
Guides
-
Professional and specialist guides
-
Law
-
Tourist guides and travel
-
Psychology
- Philosophy of life
- Interpersonal communication
- Mindfulness
- General
- Persuasion and NLP
- Academic psychology
- Psychology of soul and mind
- Work psychology
- Relacje i związki
- Parenting and children psychology
- Problem solving
- Intellectual growth
- Secret
- Sexapeal
- Seduction
- Appearance and image
- Philosophy of life
-
Religion
-
Sport, fitness, diets
-
Technology and mechanics
Videocourses
-
Data bases
-
Big Data
-
Biznes, ekonomia i marketing
-
Cybersecurity
-
Data Science
-
DevOps
-
For children
-
Electronics
-
Graphics/Video/CAX
-
Games
-
Microsoft Office
-
Development tools
-
Programming
-
Personal growth
-
Computer networks
-
Operational systems
-
Software testing
-
Mobile devices
-
UX/UI
-
Web development
-
Management
Podcasts
- Ebooks
- Programming
- Programming techniques
- Adaptywny kod. Zwinne programowanie, wzorce projektowe i SOLID-ne zasady. Wydanie II
E-book details
![Adaptywny kod. Zwinne programowanie, wzorce projektowe i SOLID-ne zasady. Wydanie II](https://static01.helion.com.pl/global/okladki/326x466/adakod.jpg)
Adaptywny kod. Zwinne programowanie, wzorce projektowe i SOLID-ne zasady. Wydanie II
Tworzenie oprogramowania nie może być procesem powolnym. Dziś zespoły projektowe muszą cechować się elastycznością i dynamiką działania, aby odnieść sukces. Wymagania stawiane kodowi mogą wielokrotnie się zmieniać podczas projektu. Oznacza to, że wprowadzanie zmian do kodu powinno być proste i możliwie mało pracochłonne. Deweloperzy, którzy wdrożą zasady programowania zwinnego i będą przestrzegać związanych z nimi dobrych praktyk, będą w stanie sprostać tym wymaganiom.
Niniejsza książka jest przeznaczona dla średnio zaawansowanych programistów, którzy dobrze opanowali tworzenie kodu zorientowanego obiektowo i chcą przyswoić sobie najlepsze praktyki programistyczne. Książka stanowi pomost między teorią a praktyką, ułatwiający wdrożenie w codziennej pracy wzorców projektowych, zasad SOLID, testów jednostkowych czy refaktoringu. Wyjaśniono tu stosowanie zawiłych reguł, takich jak „otwarte – zamknięte”, zasad podstawienia Liskova, metod wstrzykiwania zależności czy zwiększania adaptywności kodu za pomocą interfejsów. Przedstawiono również pewne antywzorce projektowe wraz ze wskazówkami, w jaki sposób można ich uniknąć i zapewnić potrzebną funkcjonalność bez utraty elastyczności kodu.
Najważniejsze zagadnienia:
- metodologie Scrum i kanban,
- zależności i warstwy architektury kodu,
- testy i refaktoring,
- odwracanie zależności,
- wiązanie i spójność kodu.
Gary McLean Hall jest programistą i architektem oprogramowania. Jest cenionym konsultantem, który specjalizuje się w dobrych wzorcach i praktykach programistycznych. Pracował w wielu zespołach ukierunkowanych na tworzenie adaptywnego kodu w takich firmach, jak Eidos, Xerox, Nephila Capital czy The LateRooms Group. W swojej pracy zawsze szukał złotego środka pomiędzy tworzeniem funkcjonalnego produktu i wysokiej jakości jego kodu źródłowego. Kod adaptywny: solidny, elastyczny i łatwy w utrzymaniu!
Wprowadzenie (11)
CZĘŚĆ I. FRAMEWORKI ZWINNE
Rozdział 1. Wprowadzenie do metodologii Scrum (21)
- Scrum kontra model kaskadowy (24)
- Role i obowiązki (26)
- Właściciel produktu (26)
- Scrum master (27)
- Zespół deweloperski (28)
- Artefakty (29)
- Tablica Scruma (29)
- Wykresy i wskaźniki (41)
- Rejestry (45)
- Sprint (47)
- Planowanie wydania (47)
- Planowanie sprintu (48)
- Codzienne spotkania Scruma (50)
- Demo sprintu (51)
- Retrospektywa sprintu (52)
- Kalendarz Scruma (54)
- Zwinność w prawdziwym świecie (55)
- Sztywność (55)
- Brak testowalności (56)
- Wskaźniki (57)
- Podsumowanie (59)
Rozdział 2. Wprowadzenie do metodologii kanban (61)
- Kanban - szybki początek (62)
- Radiator informacyjny (62)
- Ograniczanie pracy w trakcie (66)
- Ochrona przed zmianą (66)
- Definiowanie "ukończenia" (67)
- Ceremonie sterowane zdarzeniami (68)
- Klasy usług (69)
- Umowy o gwarantowanym poziomie świadczenia usług (69)
- Limity WIP dla klas usług (71)
- Ludzie jako klasy usług (71)
- Analiza (72)
- Czas dostarczenia i czas cyklu (72)
- Kumulatywne diagramy przepływu (73)
- Podsumowanie (81)
CZĘŚĆ II. PODSTAWY TWORZENIA ADAPTYWNEGO KODU
Rozdział 3. Zależności i warstwy (85)
- Zależności (86)
- Prosty przykład (87)
- Zależności platformowe (90)
- Zależności zewnętrzne (92)
- Modelowanie zależności za pomocą grafu skierowanego (93)
- Zarządzanie zależnościami (97)
- Implementacje i interfejsy (97)
- Zapach instrukcji new (98)
- Alternatywne sposoby tworzenia obiektów (101)
- Rozwiązywanie zależności (103)
- Zarządzanie zależnościami za pomocą projektów NuGet (112)
- Warstwy (117)
- Popularne wzorce warstwowania (118)
- Zagadnienia przecinające (123)
- Warstwowanie asymetryczne (124)
- Podsumowanie (126)
Rozdział 4. Interfejsy i wzorce projektowe (127)
- Czym jest interfejs? (127)
- Składnia (128)
- Jawna implementacja (130)
- Polimorfizm (134)
- Wzorce tworzenia adaptywnego kodu (135)
- Wzorzec Zerowy Obiekt (135)
- Wzorzec Adapter (140)
- Wzorzec Strategia (143)
- Dodatkowe funkcjonalności (145)
- Kacze typowanie (145)
- Domieszki (149)
- Płynne interfejsy (153)
- Podsumowanie (155)
Rozdział 5. Testy (157)
- Testy jednostkowe (158)
- Przygotuj, wykonaj, zweryfikuj (158)
- Programowanie sterowane testami (162)
- Bardziej zaawansowane testy (166)
- Wzorce testów jednostkowych (180)
- Tworzenie elastycznych testów (180)
- Wzorzec Budowniczy testów jednostkowych (182)
- Wzorzec Budowniczy (182)
- Uwidacznianie przeznaczenia testu jednostkowego (183)
- Przede wszystkim testy (185)
- Co to jest TDD? (185)
- Wzorzec TDD (186)
- Wzorzec TFD (187)
- Inne testy (187)
- Piramida testów (188)
- Przeciwieństwa piramidy testów (189)
- Diagram testowy (190)
- Testy profilaktyczne i lecznicze (192)
- Jak zmniejszyć wskaźnik MTTR? (193)
- Podsumowanie (194)
Rozdział 6. Refaktoryzacja (195)
- Wprowadzenie do refaktoryzacji (195)
- Zmiana istniejącego kodu (196)
- Nowy typ konta (204)
- Agresywna refaktoryzacja (208)
- Czerwone - zielone - refaktoryzacja... Przeprojektowanie (209)
- Adaptacja zastanego kodu (209)
- Technika złotego wzorca (210)
- Podsumowanie (216)
CZĘŚĆ III. SOLID-NY KOD
Rozdział 7. Zasada pojedynczej odpowiedzialności (219)
- Opis problemu (219)
- Refaktoryzacja poprawiająca czytelność kodu (222)
- Refaktoryzacja zwiększająca abstrakcyjność kodu (226)
- Zasada pojedynczej odpowiedzialności i wzorzec Dekorator (233)
- Wzorzec Kompozyt (234)
- Dekoratory predykatu (237)
- Dekoratory warunkowe (240)
- Leniwe dekoratory (241)
- Dekoratory logujące (242)
- Dekoratory profilujące (243)
- Dekorowanie właściwości i zdarzeń (246)
- Podsumowanie (247)
Rozdział 8. Zasada "otwarty/zamknięty" (249)
- Wprowadzenie do zasady "otwarty/zamknięty" (249)
- Definicja Meyera (249)
- Definicja Martina (250)
- Usuwanie błędów (250)
- "Świadomość" kodu klienckiego (251)
- Punkty rozszerzeń (251)
- Kod bez punktów rozszerzeń (251)
- Metody wirtualne (252)
- Metody abstrakcyjne (253)
- Dziedziczenie interfejsu (254)
- "Projektuj pod kątem dziedziczenia albo blokuj dziedziczenie" (254)
- Chroniona zmienność (255)
- Przewidywana zmienność (255)
- Stabilny interfejs (255)
- Właściwa adaptywność (256)
- Przewidywana zmienność a spekulatywne uogólnienie (256)
- Potrzebujesz aż tylu interfejsów? (257)
- Podsumowanie (258)
Rozdział 9. Zasada podstawienia Liskov (259)
- Wprowadzenie do zasady podstawienia Liskov (259)
- Oficjalna definicja zasady LSP (259)
- Reguły tworzące zasadę LSP (260)
- Kontrakty (261)
- Warunki początkowe (262)
- Warunki końcowe (263)
- Inwarianty (264)
- Reguły kontraktowe w zasadzie LSP (266)
- Kontrakty kodu (272)
- Kowariancja i kontrawariancja (278)
- Definicje (278)
- Reguły systemu typów w zasadzie LSP (284)
- Podsumowanie (287)
Rozdział 10. Segregacja interfejsów (289)
- Przykład segregacji interfejsów (289)
- Prosty interfejs CRUD (290)
- Zapamiętywanie danych (295)
- Dekorowanie wielu interfejsów (298)
- Tworzenie kodu klienckiego (300)
- Wiele implementacji, wiele instancji (301)
- Jedna implementacja, jedna instancja (303)
- Antywzorzec "interfejsowa mieszanka" (304)
- Dzielenie interfejsów (304)
- Wymagania kodu klienckiego (304)
- Wymagania architektury aplikacji (310)
- Interfejsy z pojedynczymi metodami (314)
- Podsumowanie (315)
Rozdział 11. Odwracanie zależności (317)
- Planowanie zależności (317)
- Antywzorzec Świta (318)
- Wzorzec Schody (320)
- Przykład abstrakcyjnego projektu (321)
- Abstrakcje (322)
- Konkretne polecenia (322)
- Wyodrębnianie funkcjonalności (325)
- Ulepszony kod kliencki (329)
- Abstrakcje obsługujące zapytania (332)
- Dalsze abstrakcje (333)
- Podsumowanie (334)
CZĘŚĆ IV. STOSOWANIE ADAPTYWNYCH TECHNIK
Rozdział 12. Wstrzykiwanie zależności (337)
- Skromne początki (337)
- Aplikacja Lista zadań (340)
- Tworzenie grafu obiektów (342)
- Nie tylko proste wstrzykiwanie (358)
- Antywzorzec Lokalizator Usług (358)
- Wzorzec Nielegalne Wstrzykiwanie (361)
- Korzeń kompozycji (363)
- Konwencje zamiast konfiguracji (368)
- Podsumowanie (371)
Rozdział 13. Sprzężenie, spójność, współzależność (373)
- Sprzężenie i spójność kodu (373)
- Sprzężenie (373)
- Spójność (374)
- Współzależność (375)
- Nazwa (376)
- Typ (377)
- Znaczenie (377)
- Algorytm (378)
- Pozycja (379)
- Kolejność wykonania (379)
- Czas (379)
- Wartość (379)
- Tożsamość (380)
- Określanie stopnia współzależności (380)
- Lokalność (380)
- Nieoficjalna współzależność (380)
- Współzależność statyczna i dynamiczna (381)
- Podsumowanie (381)
DODATKI
Dodatek. Adaptywne narzędzia (385)
- Kontrola kodu źródłowego w systemie Git (385)
- Tworzenie kopii repozytorium (387)
- Przełączenie na inną gałąź (388)
- Ciągła integracja (388)
Skorowidz (391)
- Title: Adaptywny kod. Zwinne programowanie, wzorce projektowe i SOLID-ne zasady. Wydanie II
- Author: Gary McLean Hall
- Original title: Adaptive Code: Agile coding with design patterns and SOLID principles (2nd Edition) (Developer Best Practices)
- Translation: Jakub Hubisz, Andrzej Watrak
- ISBN: 978-83-283-3871-5, 9788328338715
- Date of issue: 2017-12-08
- Format: Ebook
- Item ID: adakod
- Publisher: Helion