Myślenie obiektowe w programowaniu
Book information
Description
Obiektowe podejście do programowania pojawiło się w latach 60. ubiegłego wieku. Simula 67 był pierwszym językiem, w którym je zastosowano. Dzięki temu życie programistów stało się zdecydowanie prostsze, a odwzorowanie świata rzeczywistego — możliwe. Jednak żeby skorzystać z zalet podejścia obiektowego, należy najpierw opanować nowy sposób myślenia. Kolejne wydanie tej docenionej przez profesjonalistów książki szybko Ci w tym pomoże! W trakcie lektury poznasz podstawowe pojęcia oraz założenia programowania obiektowego. Dowiesz się, co to hermetyzacja, polimorfizm oraz dziedziczenie. Zobaczysz, jak obiekty powoływane są do życia oraz jak komunikują się między sobą. Ponadto nauczysz się korzystać z interfejsów, modelować klasy z wykorzystaniem diagramów UML oraz utrwalać stan obiektów. To wydanie zostało uzupełnione o mnóstwo nowych informacji, dotyczących między innymi wykorzystania obiektów w usługach sieciowych oraz aplikacjach mobilnych. Książka ta jest obowiązkową lekturą dla każdego programisty chcącego w 100% wykorzystać potencjał programowania obiektowego. Sięgnij po tę książkę i: modeluj klasy przy użyciu UML swobodnie poruszaj się w świecie klas, interfejsów i obiektów utrwalaj stan swoich obiektów poprzez serializację korzystaj z obiektów w komunikacji sieciowej zostań ekspertem w zakresie programowania obiektowego Twoje kompendium wiedzy o programowaniu obiektowym! Spis treści O autorze Wstęp Tematyka książki Nowości w czwartym wydaniu Adresaci książki Metodyka Konwencje Kod źródłowy Rozdział 1. Podstawowe pojęcia obiektowości Podstawowe pojęcia Obiekty a stare systemy Programowanie obiektowe a proceduralne Zamiana podejścia proceduralnego na obiektowe Programowanie proceduralne Programowanie obiektowe Definicja obiektu Dane obiektu Zachowania obiektu Definicja klasy Tworzenie obiektów Atrybuty Metody Komunikaty Modelowanie klas przy użyciu diagramów UML Hermetyzacja i ukrywanie danych Interfejsy Implementacje Realistyczna ilustracja paradygmatu interfejsu i implementacji Model paradygmatu interfejs – implementacja Dziedziczenie Nadklasy i podklasy Abstrakcja Związek typu „jest” Polimorfizm Kompozycja Abstrakcja Związek typu „ma” Podsumowanie Listingi TestPerson TestShape Rozdział 2. Myślenie w kategoriach obiektowych Różnica między interfejsem a implementacją Interfejs Implementacja Przykład implementacji i interfejsu Zastosowanie myślenia abstrakcyjnego w projektowaniu interfejsów Minimalizowanie interfejsu Określanie grupy docelowej Zachowania obiektu Ograniczenia środowiska Identyfikowanie publicznych interfejsów Identyfikowanie implementacji Podsumowanie Źródła Rozdział 3. Zaawansowane pojęcia z zakresu obiektowości Konstruktory Kiedy wywoływany jest konstruktor Zawartość konstruktora Konstruktor domyślny Zastosowanie wielu konstruktorów Projektowanie konstruktorów Obsługa błędów Ignorowanie problemu Szukanie błędów i kończenie działania programu Szukanie błędów i próba ich naprawienia Zgłaszanie wyjątków Pojęcie zakresu Atrybuty lokalne Atrybuty obiektowe Atrybuty klasowe Przeciążanie operatorów Wielokrotne dziedziczenie Operacje obiektów Podsumowanie Źródła Listingi TestNumber Rozdział 4. Anatomia klasy Nazwa klasy Komentarze Atrybuty Konstruktory Metody dostępowe Metody interfejsu publicznego Prywatne metody implementacyjne Podsumowanie Źródła Listingi TestCab Rozdział 5. Wytyczne dotyczące projektowania klas Modelowanie systemów świata rzeczywistego Identyfikowanie interfejsów publicznych Minimalizacja interfejsu publicznego Ukrywanie implementacji Projektowanie niezawodnych konstruktorów i destruktorów Projektowanie mechanizmu obsługi błędów w klasie Pisanie dokumentacji i stosowanie komentarzy Tworzenie obiektów nadających się do kooperacji Wielokrotne użycie kodu Rozszerzalność Tworzenie opisowych nazw Wyodrębnianie nieprzenośnego kodu Umożliwianie kopiowania i porównywania obiektów Ograniczanie zakresu Klasa powinna odpowiadać sama za siebie Konserwacja kodu Iteracja Testowanie interfejsu Wykorzystanie trwałości obiektów Serializacja i szeregowanie obiektów Podsumowanie Źródła Listingi TestMath Rozdział 6. Projektowanie z wykorzystaniem obiektów Wytyczne dotyczące projektowania Wykonanie odpowiedniej analizy Określanie zakresu planowanych prac Gromadzenie wymagań Opracowywanie prototypu interfejsu użytkownika Identyfikowanie klas Definiowanie wymagań wobec każdej z klas Określenie warunków współpracy między klasami Tworzenie modelu klas opisującego system Tworzenie prototypu interfejsu użytkownika Obiekty opakowujące Kod strukturalny Opakowywanie kodu strukturalnego Opakowywanie nieprzenośnego kodu Opakowywanie istniejących klas Podsumowanie Źródła Rozdział 7. Dziedziczenie i kompozycja Wielokrotne wykorzystywanie obiektów Dziedziczenie Generalizacja i specjalizacja Decyzje projektowe Kompozycja Reprezentowanie kompozycji na diagramach UML Czemu hermetyzacja jest podstawą technologii obiektowej Jak dziedziczenie osłabia hermetyzację Szczegółowy przykład wykorzystania polimorfizmu Odpowiedzialność obiektów Klasy abstrakcyjne, metody wirtualne i protokoły Podsumowanie Źródła Listingi TestShape Rozdział 8. Wielokrotne wykorzystanie kodu — interfejsy i klasy abstrakcyjne Wielokrotne wykorzystanie kodu Infrastruktura programistyczna Co to jest kontrakt Klasy abstrakcyjne Interfejsy Wnioski Dowód kompilatora Zawieranie kontraktu Punkty dostępowe do systemu Przykład biznesu elektronicznego Biznes elektroniczny Podejście niezakładające wielokrotnego wykorzystania kodu Rozwiązanie dla aplikacji biznesu elektronicznego Model obiektowy UML Podsumowanie Źródła Listingi TestShop Rozdział 9. Tworzenie obiektów Relacje kompozycji Podział procesu budowy na etapy Rodzaje kompozycji Agregacja Asocjacja Łączne wykorzystanie asocjacji i agregacji Unikanie zależności Liczność Kilka asocjacji Asocjacje opcjonalne Praktyczny przykład Podsumowanie Źródła Rozdział 10. Tworzenie modeli obiektowych Co to jest UML Struktura diagramu klasy Atrybuty i metody Atrybuty Metody Określanie dostępności Dziedziczenie Interfejsy Kompozycja Agregacja Asocjacja Liczność Podsumowanie Źródła Rozdział 11. Obiekty i dane przenośne — XML Przenośność danych Rozszerzalny język znaczników — XML XML a HTML XML a języki obiektowe Wymiana danych między firmami Sprawdzanie poprawności dokumentu względem DTD Integrowanie DTD z dokumentem XML Kaskadowe arkusze stylów Notacja obiektowa języka JavaScript (JSON) Podsumowanie Źródła Rozdział 12. Obiekty trwałe — serializacja i relacyjne bazy danych Podstawy trwałości obiektów Zapisywanie obiektu w pliku płaskim Serializacja pliku Jeszcze raz o implementacji i interfejsach Serializacja metod Serializacja przy użyciu języka XML Zapisywanie danych w relacyjnej bazie danych Dostęp do relacyjnej bazy danych Podsumowanie Źródła Listingi Klasa Person Rozdział 13. Obiekty w usługach sieciowych, aplikacjach mobilnych i aplikacjach hybrydowych Ewolucja technik przetwarzania rozproszonego Obiektowe skryptowe języki programowania Weryfikacja danych za pomocą języka JavaScript Obiekty na stronach internetowych Obiekty JavaScript Kontrolki na stronach internetowych Odtwarzacze dźwięku Odtwarzacze filmów Animacje Flash Obiekty rozproszone i systemy przedsiębiorstw CORBA Definicja usługi sieciowej Kod usług sieciowych Representational State Transfer (ReST) Podsumowanie Źródła Rozdział 14. Obiekty w aplikacjach typu klient-serwer Model klient-serwer Rozwiązanie własnościowe Kod obiektu do serializacji Kod klienta Kod serwera Uruchamianie aplikacji Technika z wykorzystaniem XML Definicja obiektu Kod klienta Kod serwera Uruchamianie programu Podsumowanie Źródła Listingi Rozdział 15. Wzorce projektowe Historia wzorców projektowych Wzorzec MVC języka Smalltalk Rodzaje wzorców projektowych Wzorce konstrukcyjne Wzorce strukturalne Wzorce czynnościowe Antywzorce Podsumowanie Źródła Listingi Counter.cs Singleton.cs MailTool.cs MailInterface.cs MyMailTool.cs Adapter.cs Iterator.cs Skorowidz
Similar books
Myślenie obiektowe w programowaniu. Wydanie IV
2014 · EPUB
Myślenie obiektowe w programowaniu. Wydanie IV
2014 · PDF
The Object-Oriented Thought Process
2019 · PDF
The Object-Oriented Thought Process
2019 · EPUB
The Object-Oriented Thought Process
2013 · PDF
The Object-Oriented Thought Process (4th Edition)
2013 · EPUB
Object-Oriented Thought Process, 3rd Edition
2008 · PDF
The Object-Oriented Thought Process
2009 · PDF