reklama - zainteresowany?

Programowanie w języku Delphi - Helion

Programowanie w języku Delphi
ebook
Autor: Nick Hodges
Tytuł oryginału: Coding in Delphi
TÅ‚umaczenie: Andrzej Watrak
ISBN: 978-83-283-0800-8
stron: 192, Format: ebook
Data wydania: 2015-11-06
Księgarnia: Helion

Cena książki: 36,75 zł (poprzednio: 49,00 zł)
Oszczędzasz: 25% (-12,25 zł)

Dodaj do koszyka Programowanie w języku Delphi

Tagi: Delphi - Programowanie

Poznaj najlepsze techniki pisania kodu w Delphi!

  • Klasy generyczne, metody anonimowe i atrybuty — nowe funkcjonalnoÅ›ci jÄ™zyka Delphi
  • Testy jednostkowe, poprawianie jakoÅ›ci kodu i wykorzystanie platformy izolacyjnej
  • Wstrzykiwanie zależnoÅ›ci a tworzenie czytelnego, luźno sprzężonego i Å‚atwego do testowania kodu


Wbrew pozorom na świecie pracuje bardzo wielu programistów posługujących się językiem Delphi. Sęk w tym, że większość z nich nie ma pojęcia o niezwykłych i użytecznych funkcjonalnościach dostępnych w nowszych wersjach tego języka oraz nie umie zastosować tych narzędzi we własnej pracy. Jeśli czujesz, że i Ty zaliczasz się do tego grona, a brak umiejętności sprawia, że nie możesz rozwinąć skrzydeł, ta książka jest dla Ciebie. Są w niej opisane niezwykle przydatne narzędzia oraz sytuacje, w których te narzędzia sprawdzają się szczególnie dobrze, a także kilka ogólnie dostępnych platform.

W gruncie rzeczy ta książka jest poświęcona wyłącznie tworzeniu nowego, dobrego kodu w języku Delphi. Nie znajdziesz w niej nic o projektowaniu okienek, języku VCL ani platformie FMX, ale jeśli chcesz się dowiedzieć więcej o kodowaniu interfejsów zamiast implementacji, o właściwych sposobach korzystania z wyjątków i o ich obsłudze, o testowaniu i poprawianiu kodu, o zastosowaniu platformy Spring for Delphi do lepszego zarządzania kolekcjami danych albo o uzyskiwaniu wglądu w kod podczas jego wykonywania za pomocą nowego, potężnego narzędzia RTTI, z pewnością niniejsza publikacja Cię zachwyci.

  • WyjÄ…tki i ich obsÅ‚uga
  • Interfejsy i typy generyczne
  • Metody anonimowe
  • Kolekcje i enumeratory w Delphi
  • Interfejs IEnumerable
  • Informacje RTTI i atrybuty
  • Klasa TVirtualInterface
  • Wstrzykiwanie zależnoÅ›ci
  • Testy jednostkowe
  • Testy z użyciem platformy izolacyjnej

Wykorzystaj w pełni moc i elegancję Delphi!



Nick Hodges — programista zaangażowany w projekt Delphi od poczÄ…tku jego istnienia. ByÅ‚ testerem pierwszej wersji jÄ™zyka i czÅ‚onkiem zespoÅ‚u TeamB, a także menedżerem produktu i kierownikiem dziaÅ‚u badawczo-rozwojowego jÄ™zyka Delphi. Jest czÅ‚onkiem Advisory Board na corocznej konferencji firmy Borland, aktywnym prelegentem, blogerem i autorem artykułów poÅ›wiÄ™conych różnym zagadnieniom jÄ™zyka Delphi.

Dodaj do koszyka Programowanie w języku Delphi

 

Osoby które kupowały "Programowanie w języku Delphi", wybierały także:

  • Aplikacje w Delphi. PrzykÅ‚ady. Wydanie III
  • Delphi 2007 dla WIN32 i bazy danych
  • Fearless Cross-Platform Development with Delphi
  • Delphi GUI Programming with FireMonkey
  • Mastering Delphi Programming: A Complete Reference Guide

Dodaj do koszyka Programowanie w języku Delphi

Spis treści

Programowanie w języku Delphi eBook -- spis treści

Przedmowa (9)

Wprowadzenie (11)

Podziękowania (13)

Platformy wykorzystane w książce (15)

Rozdział 1. Wyjątki i ich obsługa (17)

  • 1.1. Wprowadzenie (17)
  • 1.2. Strukturalna obsÅ‚uga wyjÄ…tków (17)
  • 1.3. Jak nie korzystać z wyjÄ…tków (18)
    • Nie "poÅ‚ykaj" wyjÄ…tków (18)
    • Nie przechwytuj wyjÄ…tków bezkrytycznie (18)
    • Nie nadużywaj wyjÄ…tków (19)
    • Nie używaj wyjÄ…tków jako podstawowego sposobu sygnalizacyjnego (19)
  • 1.4. Jak prawidÅ‚owo korzystać z wyjÄ…tków (20)
    • Używaj wyjÄ…tków tak, aby kod ich obsÅ‚ugi nie zakÅ‚ócaÅ‚ realizacji programu (20)
    • Twórcy aplikacji powinni tylko przechwytywać wyjÄ…tki (20)
    • Przechwytuj tylko wybrane wyjÄ…tki (20)
    • WyjÄ…tki mogÄ… zgÅ‚aszać twórcy komponentów i bibliotek (22)
    • ZgÅ‚aszaj wÅ‚asne niestandardowe wyjÄ…tki (22)
    • Niech inni programiÅ›ci widzÄ… komunikaty o wyjÄ…tkach (22)
    • ÅšmiaÅ‚o podawaj dokÅ‚adne komunikaty o wyjÄ…tkach (23)
    • W bibliotece twórz dwie wersje każdej metody (23)
  • 1.5. Wnioski (24)

Rozdział 2. Interfejsy (25)

  • 2.1. Wprowadzenie (25)
  • 2.2. RozprzÄ™ganie kodu (25)
  • 2.3. Czym jest interfejs? (26)
  • 2.4. Interfejsy sÄ… wszÄ™dzie (26)
  • 2.5. Prosty przykÅ‚ad (28)
  • 2.6. Implementacja interfejsu (29)
  • 2.7. Kilka dodatkowych uwag (30)
  • 2.8. Dziedziczenie interfejsów (30)
  • 2.9. Inne uwagi warte zapamiÄ™tania (31)
  • 2.10. Klasa TInterfacedObject (31)
  • 2.11. Jak poprawnie używać interfejsów (33)
  • 2.12. Dlaczego należy używać interfejsów? (34)
    • Kodowanie abstrakcyjne (34)
    • Implementacje podÅ‚Ä…czane (35)
    • Komunikacja miÄ™dzy moduÅ‚ami (35)
    • Testowalny kod (36)
    • Wzorce kodu (36)

Rozdział 3. Typy generyczne (37)

  • 3.1. Z pomocÄ… przybywa typ generyczny (38)
  • 3.2. Ograniczenia (39)
    • Ograniczenie constructor (40)
    • Ograniczenie class (40)
    • Ograniczenie record (41)
    • Ograniczenie interface (42)
    • Przekazywanie rekordów jako typów parametrycznych (42)
  • 3.3. Interfejsy generyczne (43)
  • 3.4. Metody generyczne (43)
  • 3.5. Kolekcje generyczne (44)
  • 3.6. MyÅ›lenie generyczne (45)
  • 3.7. Wystudiowany, prosty przykÅ‚ad (45)
  • 3.8. Praktyczny przykÅ‚ad (46)
    • Typ TWylicz (46)
    • Problemy z typami generycznymi (48)
  • 3.9. Wnioski (49)
  • 3.10. Wywiad z typem generycznym (49)

Rozdział 4. Metody anonimowe (51)

  • 4.1. Wprowadzenie (51)
  • 4.2. Definicja (51)
  • 4.3. Po co to wszystko? (52)
    • Prosty przykÅ‚ad (53)
    • Metody anonimowe jako zmienne (55)
  • 4.4. DomkniÄ™cia (55)
  • 4.5. Deklaracje standardowe (56)
  • 4.6. Praktyczny przykÅ‚ad (57)
  • 4.7. Inny, jeszcze ciekawszy przykÅ‚ad (58)
    • Metody anonimowe sÄ… bardzo elastyczne (59)
  • 4.8. Metody anonimowe w bibliotece RTL (61)
    • Klasa TThread i metody anonimowe (61)
  • 4.9. Predykaty (61)
    • I co z tego? (61)
  • 4.10. Wnioski (63)
  • 4.11. Wywiad z metodÄ… anonimowÄ… (63)

Rozdział 5. Kolekcje (65)

  • 5.1. Wprowadzenie (65)
  • 5.2. Ogólne uwagi dotyczÄ…ce kolekcji (65)
  • 5.3. Kolekcje w jÄ™zyku Delphi (66)
    • Kolekcja TList (66)
    • Kolekcja TStack (68)
    • Kolekcja TQueue (69)
    • Kolekcja TDictionary (70)
    • Kolekcje obiektów (72)
  • 5.4. Kolekcje w platformie Delphi Spring Framework (72)
    • Ogólne informacje (72)
    • Dwa nieopisane dotychczas typy kolekcji (73)
  • 5.5. Dlaczego należy używać kolekcji Spring4D? (73)
  • 5.6. Wnioski (74)

Rozdział 6. Enumeratory w Delphi (75)

  • 6.1. Wprowadzenie (75)
  • 6.2. Interfejs IEnumerator (77)
  • 6.3. Specjalistyczne enumeratory (78)
  • 6.4. Klasa TEnumerable w module Generics.Collections (80)
  • 6.5. Wnioski (80)

Rozdział 7. Interfejs IEnumerable (81)

  • 7.1. Interfejs IEnumerable (82)
  • 7.2. Predykaty (83)
  • 7.3. Wywiad z interfejsem IEnumerable (IEoT) (87)

Rozdział 8. Informacje RTTI (89)

  • 8.1. Wprowadzenie (89)
  • 8.2. Typ TValue (90)
  • 8.3. RTTI i klasy (92)
    • Klasa TRttiType (94)
  • 8.4. RTTI i instancje klas (96)
    • Odczytywanie i nadawanie wartoÅ›ci (96)
    • WywoÅ‚ywanie metod (97)
  • 8.5. Uwagi ogólne (98)
  • 8.6. RTTI i inne typy danych (98)
    • RTTI i typy porzÄ…dkowe (99)
    • RTTI i rekordy (99)
    • RTTI i tabele (99)
  • 8.7. Inne metody RTTI (100)
  • 8.8. Dyrektywy kompilatora zwiÄ…zane z RTTI (100)
    • Silna konsolidacja typów (102)
  • 8.9. Wnioski (102)

Rozdział 9. Atrybuty (103)

  • 9.1. Wprowadzenie (103)
  • 9.2. Czym sÄ… atrybuty? (103)
  • 9.3. Prosty przykÅ‚ad (107)
  • 9.4. Wnioski (109)
  • 9.5. Wywiad z atrybutem (109)

Rozdział 10. Klasa TVirtualInterface (111)

  • 10.1. TrochÄ™ lepsza klasa TVirtualInterface (115)
  • 10.2. NaprawdÄ™ użyteczny przykÅ‚ad (116)
  • 10.3. Interfejs IProstaAtrapa (116)
  • 10.4. Klasa TProstaImitacja (118)
  • 10.5. Wnioski (120)

Rozdział 11. Wstęp do wstrzykiwania zależności (121)

  • 11.1. Wprowadzenie (121)
  • 11.2. Czym jest zależność? (121)
  • 11.3. Prawo Demeter (122)
  • 11.4. PrzykÅ‚ad projektu (122)
  • 11.5. Prawo Demeter w jÄ™zyku Delphi (123)
  • 11.6. PrzykÅ‚adowy kod krok po kroku (124)
  • 11.7. Kontener wstrzykiwania zależnoÅ›ci (131)
  • 11.8. Wnioski (134)

Rozdział 12. Więcej o wstrzykiwaniu zależności (135)

  • 12.1. ZależnoÅ›ci opcjonalne (136)
  • 12.2. Wstrzykiwanie metod przypisujÄ…cych (136)
  • 12.3. Wstrzykiwanie metod (137)
  • 12.4. Kontener Spring Container i klasa ServiceLocator (138)
    • Rejestrowanie interfejsów (139)
    • ZarzÄ…dzanie czasem życia obiektów (140)
    • Niestandardowe tworzenie obiektów (141)
    • OkreÅ›lenie domyÅ›lnego obiektu (142)
    • Rejestrowanie tych samych klas dla dwóch interfejsów (142)
    • Wstrzykiwanie pól i wÅ‚aÅ›ciwoÅ›ci podczas rejestracji (142)
    • Wykorzystanie rejestracji do wstrzykiwania konstruktorów i metod (144)
  • 12.5. Rejestrowanie elementów za pomocÄ… atrybutów (145)
  • 12.6. Klasa ServiceLocator jako antywzorzec (147)
  • 12.7. Podsumowanie wstrzykiwania zależnoÅ›ci (151)

Rozdział 13. Testy jednostkowe (153)

  • 13.1. Co to sÄ… testy jednostkowe? (153)
    • Co to jest "jednostka"? (154)
    • Czy rzeczywiÅ›cie wykonujÄ™ testy jednostkowe? (154)
    • Czym jest platforma izolacyjna? (154)
  • 13.2. Po co wykonywać testy jednostkowe? (157)
    • DziÄ™ki testom jednostkowym wyszukasz bÅ‚Ä™dy (157)
    • DziÄ™ki testom jednostkowym unikniesz bÅ‚Ä™dów (157)
    • DziÄ™ki testom jednostkowym oszczÄ™dzisz czas (157)
    • Testy jednostkowe zapewniajÄ… spokój (157)
    • Testy jednostkowe dokumentujÄ… wÅ‚aÅ›ciwe użycie klas (158)
  • 13.3. Testy jednostkowe w Delphi (158)
    • Platforma DUnit (158)
    • Platforma DUnitX (158)
  • 13.4. Ogólne zasady testów jednostkowych (159)
    • Testuj jednÄ… klasÄ™ w izolacji (159)
    • Przestrzegaj zasady AAA (159)
    • Najpierw twórz proste testy, "krótkie i na temat" (159)
    • Twórz testy sprawdzajÄ…ce zakresy (159)
    • Testuj granice (160)
    • Jeżeli to możliwe, sprawdź caÅ‚e spektrum możliwych wartoÅ›ci (160)
    • Jeżeli to możliwe, sprawdź każdy przebieg kodu (160)
    • Twórz testy wyszukujÄ…ce bÅ‚Ä™dy i poprawiaj je (160)
    • Każdy test musi być niezależny od innych testów (160)
    • Stosuj w teÅ›cie tylko jednÄ… asercjÄ™ (161)
    • Nadawaj testom czytelne nazwy i nie przejmuj siÄ™, że sÄ… dÅ‚ugie (161)
    • Sprawdzaj, czy każdy wyjÄ…tek jest rzeczywiÅ›cie zgÅ‚aszany (161)
    • Unikaj stosowania metod CheckTrue i Assert.IsTrue (161)
    • Regularnie wykonuj testy (161)
    • Wykonuj testy przy każdorazowej kompilacji kodu (161)
  • 13.5. Programowanie uwzglÄ™dniajÄ…ce testy (162)
  • 13.6. Prosty przykÅ‚ad (162)

Rozdział 14. Testy z użyciem platformy izolacyjnej (169)

  • 14.1. Krótkie przypomnienie (169)
  • 14.2. Platformy izolacyjne w Delphi (170)
  • 14.3. Jak zacząć (170)
    • Do akcji wkracza platforma izolacyjna (170)
    • Prosta atrapa (170)
    • Testowanie dziennika (172)
    • Atrapy, które wykonujÄ… operacje (173)
    • ZależnoÅ›ci wykonujÄ…ce oczekiwane operacje (176)
    • ZależnoÅ›ci zgÅ‚aszajÄ…ce wyjÄ…tki (178)
    • W teÅ›cie stosuj tylko jednÄ… imitacjÄ™ (179)
    • Oczekiwane parametry muszÄ… być zgodne z rzeczywistymi (180)
  • 14.4. Wnioski (180)

Dodatek A. Materiały (181)

  • Wstrzykiwanie zależnoÅ›ci (181)
  • Testy jednostkowe (181)
  • Systemy kontroli kodu źródÅ‚owego (182)
    • Subversion (182)
    • Git (182)
    • Mercurial (182)
  • Projekty (182)
  • Inne ciekawe materiaÅ‚y (183)

Dodatek B. Moja przygoda z Delphi (185)

Skorowidz (189)

Dodaj do koszyka Programowanie w języku Delphi

Code, Publish & WebDesing by CATALIST.com.pl



(c) 2005-2024 CATALIST agencja interaktywna, znaki firmowe należą do wydawnictwa Helion S.A.