Архитектура систем управления предприятием
- Артикул:
- 16169785212
- Страна: Польша
- Доставка: от 990 ₽
- Срок доставки: 12-20 дней
- В наличии: 2
- Оценка: 5
- Отзывов: 7
Характеристики
- Identyfikator produktu
- 16169785212
- Stan
- Nowy
- Język publikacji
- polski
- Tytuł
- Architektura systemów zarządzania przedsiębiorstwem Wzorce projektowe
- Autor
- Edward Hieatt
- Nośnik
- książka papierowa
- Okładka
- miękka
- Rok wydania
- 2005
- Waga produktu z opakowaniem jednostkowym
- 0.82 kg
- Wydawnictwo
- Helion
- Liczba stron
- 496
- Szerokość produktu
- 16.5 cm
- Wysokość produktu
- 23.5 cm
Описание
Stron:496
Format: 16,5 x 23,4 cm
Rok wydania: 2005
Oprawa: miękka
Architektura systemów zarządzania przedsiębiorstwem. Wzorce projektowe
Edward Hieatt, Martin Fowler, Matthew Foemmel
Wykorzystaj wzorce projektowe w pracy nad oprogramowaniem
- Zaprojektuj aplikacje o architekturze trójwarstwowej
- Dobierz odpowiednią technologię
- Stwórz moduły aplikacji
Systemy informatyczne służące do zarządzania przedsiębiorstwem to zwykle ogromne aplikacje. Operują na milionach rekordów, przesyłają gigabajty danych i są obsługiwane przez dziesiątki użytkowników. Sprawne działanie takiej aplikacji jest niezwykle istotne dla funkcjonowania przedsiębiorstwa, dlatego musi ona być stabilna, a przed wdrożeniem -- gruntownie przetestowana. Przy tworzeniu aplikacji tego typu wykorzystuje się opracowane już rozwiązania, zwane wzorcami projektowymi. Wzorce projektowe to modele poszczególnych komponentów aplikacji -- należy jedynie zaimplementować je w wybranym języku programowania.
Książka "Architektura systemów zarządzania przedsiębiorstwem. Wzorce projektowe" to przegląd wzorców wykorzystywanych przy projektowaniu aplikacji korporacyjnych. Opisuje zasady podziału aplikacji na warstwy i zasady współpracy pomiędzy warstwami; przedstawia także modele komponentów wchodzących w skład każdej z nich.
- Warstwy w aplikacjach biznesowych
- Wzorce logiki aplikacji
- Wzorce architektury źródła danych
- Wzorce mapowania obiektowo-relacyjnego
- Wzorce prezentacji
- Wzorce dystrybucji
- Wzorce stanu sesji
- Wzorce podstawowe
Korzystając z zawartych w książce wzorców,
stworzysz stabilne i wydajne aplikacje korporacyjne.
O autorze
Martin Fowler to niezależny konsultant, od ponad dziesięciu lat stosujący obiekty do rozwiązania ważnych problemów biznesowych. Wśród jego klientów można wymienić Chryslera, Citibank, brytyjską Narodową Służbę Zdrowia, Andersen Consulting i Netscape Communications. Ponadto Fowler regularnie wypowiada się na temat obiektów, języka UML oraz wzorców projektowych. Jest autorem nagradzanych książek, na przykład takich, jak Analysis Patterns, UML w kropelce, Architektura systemów zarządzania przedsiębiorstwem. Wzorce projektowe.
Spis treści
Przedmowa (13)
Wstęp (19)
- Architektura (19)
- Aplikacje korporacyjne (20)
- Rodzaje aplikacji dla przedsiębiorstw (22)
- Wydajność (23)
- Wzorce (25)
Struktura opisu wzorców (27)
Ograniczenia wzorców projektowych (28)
Część I Wprowadzenie (29)
Rozdział 1. Warstwy aplikacji (31)
- Podział warstwowy w aplikacjach dla przedsiębiorstw (32)
- Trzy główne warstwy (33)
- Układ warstw (35)
Rozdział 2. Porządkowanie logiki dziedziny (37)
- Wybór wzorca (40)
- Warstwa usług (42)
Rozdział 3. Mapowanie do relacyjnych baz danych (43)
- Wzorce architektury (43)
- Problem zachowań (47)
- Odczyt danych (48)
- Wzorce mapowania struktury (49)
Mapowanie relacji (49)
Dziedziczenie (52)
- Proces budowy mapowania (54)
Podwójne mapowanie (55)
- Metadane (55)
- Połączenie z bazą danych (56)
- Inne problemy mapowania (58)
- Warto przeczytać (58)
Rozdział 4. Prezentacja w sieci WWW (59)
- Wzorce widoku (62)
- Wzorce kontrolera danych wejściowych (64)
- Warto przeczytać (64)
Rozdział 5. Przetwarzanie współbieżne (65)
- Problemy przetwarzania współbieżnego (66)
- Konteksty przetwarzania (67)
- Izolacja i niezmienność (68)
- Optymistyczne i pesymistyczne sterowanie współbieżnością (68)
Zapobieganie niespójnym odczytom (69)
Zakleszczenia (70)
- Transakcje (71)
ACID (72)
Zasoby transakcyjne (72)
Zwiększanie żywotności przez ograniczanie izolacji (73)
Transakcje biznesowe i systemowe (74)
- Wzorce sterowania współbieżnością w trybie offline (76)
- Serwery aplikacji (77)
- Warto przeczytać (78)
Rozdział 6. Stan sesji (79)
- Zalety sesji bezstanowej (79)
- Stan sesji (80)
Metody przechowywania danych stanu sesji (81)
Rozdział 7. Obiekty rozproszone (85)
- Zwodnicze obiekty rozproszone (85)
- Interfejsy lokalne i interfejsy zdalne (86)
- Kiedy stosować architekturę rozproszoną (87)
- Granice dystrybucji (88)
- Interfejsy dystrybucji (89)
Rozdział 8. Podsumowanie (91)
- Warstwa dziedziny, czyli początek (92)
- Warstwa źródła danych, czyli krok drugi (93)
Źródło danych dla schematu Transaction Script (110) (93)
Źródło danych dla schematu Table Module (125) (93)
Źródło danych dla schematu Domain Model (116) (94)
- Warstwa prezentacji (94)
- Wzorce a technologia (95)
Java i J2EE (95)
.NET (96)
Procedury przechowywane (97)
Usługi WWW (97)
- Inne systemy warstw aplikacji (98)
Część II Wzorce (101)
Rozdział 9. Wzorce logiki dziedziny (103)
- Transaction Script (Skrypt transakcji) (103)
Na czym polega (103)
Kiedy używamy (105)
Problem obliczania przychodu (105)
- Domain Model (Model dziedziny) (109)
Na czym polega (109)
Kiedy używamy (111)
Warto przeczytać (112)
Przykład: uznanie przychodu (Java) (112)
- Table Module (Moduł tabeli) (117)
Na czym polega (118)
Kiedy używamy (120)
Przykład: uznanie przychodu (C#) (120)
- Service Layer (Warstwa usług) (124)
Na czym polega (125)
Kiedy używamy (127)
Warto przeczytać (127)
Przykład: uznanie przychodu (Java) (127)
Rozdział 10. Wzorce architektury źródła danych (133)
- Table Data Gateway (Brama danych tabeli) (133)
Na czym polega (133)
Kiedy używamy (134)
Warto przeczytać (135)
Przykład: brama tabeli osób (C#) (135)
Przykład: brama oparta na zbiorach danych ADO.NET (C#) (137)
- Row Data Gateway (Brama danych wiersza) (140)
Na czym polega (140)
Kiedy używamy (142)
Przykład: brama rekordu osoby (Java) (142)
Przykład: uchwyt danych dla obiektu dziedziny (Java) (146)
- Active Record (Rekord aktywny) (147)
Na czym polega (147)
Kiedy używamy (148)
Przykład: prosta tabela osób (Java) (148)
- Data Mapper (Odwzorowanie danych) (152)
Na czym polega (152)
Kiedy używamy (156)
Przykład: proste odwzorowanie obiektowo-relacyjne (Java) (157)
Przykład: wyłączanie metod wyszukujących (Java) (162)
Przykład: tworzenie obiektu pustego (Java) (165)
Rozdział 11. Wzorce zachowań dla mapowania obiektowo-relacyjnego (169)
- Unit of Work (Jednostka pracy) (169)
Na czym polega (170)
Kiedy używamy (173)
Przykład: rejestracja przez obiekt (Java) (174)
- Identity Map (Mapa tożsamości) (178)
Na czym polega (178)
Kiedy używamy (180)
Przykład: metody mapy tożsamości (Java) (181)
- Lazy Load (Opóźnione ładowanie) (182)
Na czym polega (182)
Kiedy używamy (184)
Przykład: opóźniona inicjalizacja (Java) (185)
Przykład: wirtualny pośrednik (Java) (185)
Przykład: uchwyt wartości (Java) (187)
Przykład: widmo (C#) (188)
Rozdział 12. Wzorce struktury dla mapowania obiektowo-relacyjnego (197)
- Identity Field (Pole tożsamości) (197)
Na czym polega (197)
Kiedy używamy (201)
Warto przeczytać (201)
Przykład: liczba całkowita jako klucz (C#) (201)
Przykład: tabela kluczy (Java) (203)
Przykład: klucz złożony (Java) (205)
- Foreign Key Mapping (Odwzorowanie do klucza obcego) (216)
Na czym polega (216)
Kiedy używamy (218)
Przykład: odwołanie jednowartościowe (Java) (219)
Przykład: wyszukiwanie w wielu tabelach (Java) (222)
Przykład: kolekcja odwołań (C#) (223)
- Association Table Mapping (Odwzorowanie do tabeli asocjacji) (226)
Na czym polega (226)
Kiedy używamy (227)
Przykład: pracownicy i umiejętności (C#) (227)
Przykład: odwzorowanie z kodem SQL (Java) (230)
Przykład: jedno zapytanie do obsługi wielu pracowników (Java) (234)
- Dependent Mapping (Odwzorowanie składowych) (239)
Na czym polega (239)
Kiedy używamy (240)
Przykład: albumy i ścieżki (Java) (241)
- Embedded Value (Wartość osadzona) (244)
Na czym polega (244)
Kiedy używamy (244)
Warto przeczytać (245)
Przykład: prosty obiekt wartości (Java) (245)
- Serialized LOB (Duży obiekt serializowany) (247)
Na czym polega (247)
Kiedy używamy (248)
Przykład: serializowanie hierarchii działów firmy do postaci XML (Java) (249)
- Single Table Inheritance (Odwzorowanie dziedziczenia do pojedynczej tabeli) (252)
Na czym polega (252)
Kiedy używamy (253)
Przykład: tabela zawodników (C#) (253)
- Class Table Inheritance (Odwzorowanie dziedziczenia do tabel klas) (259)
Na czym polega (259)
Kiedy używamy (260)
Warto przeczytać (260)
Przykład: zawodnicy (C#) (260)
- Concrete Table Inheritance (Odwzorowanie dziedziczenia do tabel konkretnych) (266)
Na czym polega (266)
Kiedy używamy (268)
Przykład: zawodnicy (C#) (268)
- Inheritance Mappers (Klasy odwzorowania dziedziczenia) (274)
Na czym polega (275)
Kiedy używamy (276)
Rozdział 13. Wzorce odwzorowań obiektów i relacyjnych metadanych (277)
- Metadata Mapping (Odwzorowanie metadanych) (277)
Na czym polega (277)
Kiedy używamy (279)
Przykład: użycie metadanych i odzwierciedlania (Java) (280)
- Query Object (Obiekt zapytania) (287)
Na czym polega (287)
Kiedy używamy (288)
Warto przeczytać (289)
Przykład: prosty wzorzec Obiekt zapytania (Java) (289)
- Repository (Magazyn) (293)
Na czym polega (294)
Kiedy używamy (295)
Warto przeczytać (296)
Przykład: odnajdywanie osób utrzymywanych przez podaną osobę (Java) (296)
Przykład: zamiana strategii wzorca Repository (Java) (297)
Rozdział 14. Wzorce prezentacji internetowych (299)
- Model View Controller (Model kontrolera widoku) (299)
Na czym polega (299)
Kiedy używamy (301)
- Page Controller (Kontroler strony) (302)
Na czym polega (302)
Kiedy używamy (303)
Przykład: prosta prezentacja z serwletem pełniącym funkcję kontrolera oraz stroną JSP pełniącą rolę widoku (Java) (304)
Przykład: zastosowanie strony JSP do obsługi żądania (Java) (306)
Przykład: mechanizm obsługi stron wykorzystujący kod schowany (C#) (309)
- Front Controller (Kontroler fasady) (313)
Na czym polega (313)
Kiedy używamy (315)
Warto przeczytać (315)
Przykład: prosta prezentacja (Java) (315)
- Template View (Szablon widoku) (318)
Na czym polega (318)
Kiedy używamy (322)
Przykład: wykorzystanie JSP jako widoku wraz z osobnym kontrolerem (Java) (322)
Przykład: strona ASP.NET (C#) (325)
- Transform View (Widok przekształcający) (328)
Na czym polega (328)
Kiedy używamy (329)
Przykład: proste przekształcenie (Java) (330)
- Two Step View (Widok dwuetapowy) (332)
Na czym polega (332)
Kiedy używamy (333)
Przykład: dwuetapowe przekształcenie XSLT (XSLT) (338)
Przykład: JSP i znaczniki niestandardowe (Java) (340)
- Application Controller (Kontroler aplikacji) (345)
Na czym polega (345)
Kiedy używamy (347)
Warto przeczytać (347)
Przykład: kontroler aplikacji obsługujący model stanu (Java) (347)
Rozdział 15. Wzorce dystrybucji (353)
- Remote Facade (Zdalna fasada) (353)
Na czym polega (354)
Kiedy używamy (357)
Przykład: zastosowanie komponentu session bean i zdalnej fasady (Java) (357)
Przykład: usługa WWW (C#) (360)
- Data Transfer Object (Obiekt transferu danych) (366)
Na czym polega (366)
Kiedy używamy (370)
Warto przeczytać (371)
Przykład: przekazywanie informacji o albumach (Java) (371)
Przykład: serializacja danych do postaci XML (Java) (375)
Rozdział 16. Wzorce współbieżności autonomicznej (379)
- Optimistic Offline Lock (Optymistyczna blokada autonomiczna) (379)
Na czym polega (380)
Kiedy używamy (383)
Przykład: warstwa dziedziny i wzorzec Data Mappers (165) (Java) (384)
- Pessimistic Offline Lock (Pesymistyczna blokada autonomiczna) (389)
Na czym polega (390)
Kiedy używamy (393)
Przykład: prosty menedżer blokad (Java) (394)
- Coarse-Grained Lock (Blokada gruboziarnista) (400)
Na czym polega (400)
Kiedy używamy (402)
Przykład: wspólna blokada Optimistic Offline Lock (416) (Java) (403)
Przykład: wspólna blokada Pessimistic Offline Lock (426) (Java) (408)
Przykład: blokowanie korzenia przy użyciu blokady Pessimistic Offline Lock (416) (Java) (409)
- Implicit Lock (Blokada domyślna) (410)
Na czym polega (411)
Kiedy używamy (412)
Przykład: niejawna blokada Pessimistic Offline Lock (426) (Java) (412)
Rozdział 17. Wzorce stanu sesji (415)
- Client Session State (Stan sesji klienta) (415)
Na czym polega (415)
Kiedy używamy (416)
- Server Session State (Stan sesji serwera) (418)
Na czym polega (418)
Kiedy używamy (420)
- Database Session State (Stan sesji bazy danych) (421)
Na czym polega (421)
Kiedy używamy (423)
Rozdział 18. Wzorce podstawowe (425)
- Gateway (Brama) (425)
Na czym polega (426)
Kiedy używamy (426)
Przykład: brama pośrednicząca w korzystaniu z usługi rozsyłania komunikatów (Java) (427)
- Mapper (Odwzorowanie) (432)
Na czym polega (432)
Kiedy używamy (433)
- Layer Supertype (Typ bazowy warstwy) (434)
Na czym polega (434)
Kiedy używamy (434)
Przykład: obiekt domeny (Java) (434)
- Separated Interface (Interfejs oddzielony) (435)
Na czym polega (435)
Kiedy używamy (437)
- Registry (Rejestr) (438)
Na czym polega (438)
Kiedy używamy (440)
Przykład: rejestr bazujący na wzorcu Singleton (Java) (440)
Przykład: rejestr nadający się do zastosowania w środowiskach wielowątkowych (Java) (442)
- Value Object (Obiekt wartości) (444)
Na czym polega (444)
Kiedy używamy (445)
- Money (Pieniądze) (446)
Na czym polega (446)
Kiedy używamy (448)
Przykład: klasa Money (Java) (449)
- Special Case (Przypadek szczególny) (453)
Na czym polega (453)
Kiedy używamy (454)
Warto przeczytać (454)
Przykład: prosta implementacja pustego obiektu (C#) (454)
- Plugin (456)
Na czym polega (456)
Kiedy używamy (457)
Przykład: generator identyfikatorów (Java) (457)
- Service Stub (Usługa zastępcza) (461)
Na czym polega (461)
Kiedy używamy (462)
Przykład: usługa podatkowa (Java) (462)
- Record set (Zbiór rekordów) (465)
Na czym polega (465)
Kiedy używamy (467)
Dodatki (469)
Bibliografia (471)
Skorowidz (477)
Стоимость доставки приблизительная. Точная стоимость доставки указывается после обработки заказа менеджером.