struktury danych i techniki obiektowe na przykładzie javy 5.0 full, ebooki

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • windykator.xlx.pl
  • Podobne

     

    struktury danych i techniki obiektowe na przykładzie javy 5.0 full, ebooki

    [ Pobierz całość w formacie PDF ]
    IDZ DO
    PRZYK£ADOW
    Struktury danych i techniki
    obiektowe na przyk³adzie
    Javy 5.0
    SPIS TREŒCI
    KATALOG KSI¥¯EK
    Autorzy: Elliot Koffman, Paul Wolfgang
    T³umaczenie: Rafa³ Joñca, Tomasz ¯mijewski
    ISBN: 83-246-0089-2
    Tytu³ orygina³u:
    Format: B5, stron: 936
    KATALOG ONLINE
    ZAMÓW DRUKOWANY KATALOG
    TWÓJ KOSZYK
    Przy tworzeniu systemów informatycznych najwa¿niejsze zadania wykonuje siê,
    zanim powstanie pierwszy fragment kodu Ÿród³owego. Wymogi stawiane wspó³czesnym
    aplikacjom powoduj¹, ¿e in¿ynieria oprogramowania staje siê kwesti¹ kluczow¹.
    Opracowanie odpowiedniego projektu oraz w³aœciwy dobór technologii i metodologii
    zapewniaj¹ szybk¹ i efektywn¹ pracê nad systemem. Niezwykle wa¿ne jest poznanie
    dostêpnych w jêzyku Java struktur danych i umiejêtnoœæ ich wykorzystania.
    Prawid³owo dobrana struktura danych znacznie przyspiesza nie tylko implementacjê
    aplikacji, ale równie¿ dzia³anie gotowego systemu.
    Ksi¹¿ka „Struktury danych i techniki obiektowe na przyk³adzie Javy 5.0” przedstawia
    podstawowe struktury danych i sposoby ich wykorzystania podczas programowania
    obiektowego. Wszystkie wiadomoœci zosta³y zaprezentowane z uwzglêdnieniem regu³
    nowoczesnej in¿ynierii oprogramowania. Czytaj¹c kolejne rozdzia³y ksi¹¿ki, poznasz
    najlepsze zastosowania ró¿nych struktur danych oraz wady i zalety ich implementacji.
    Przede wszystkim jednak zrozumiesz potrzebê stosowania tak wielu struktur danych.
    Cykl ¿ycia oprogramowania
    Zastosowanie jêzyka UML w projektowaniu systemów
    Obs³uga b³êdów i wyj¹tków
    Testowanie oprogramowania
    Dziedziczenie i hierarchia klas
    Listy jedno- i dwukierunkowe
    Interfejs Collection
    Stosy i kolejki
    Algorytmy rekurencyjne
    Sortowanie danych
    Drzewa wyszukiwania
    Grafy
    DODAJ DO KOSZYKA
    CENNIK I INFORMACJE
    ZAMÓW INFORMACJE
    ONOWOŒCIACH
    ZAMÓW CENNIK
    CZYTELNIA
    FRAGMENTY KSI¥¯EK ONLINE
    Wydawnictwo Helion
    ul. Chopina 6
    44-100 Gliwice
    tel. (32)230-98-63
    e-mail: helion@helion.pl
    Po przeczytaniu tej ksi¹¿ki zrozumiesz zasadê:
    „Pomyœl, a dopiero potem pisz kod”
     Przedmowa ..................................................................................... 17
    Rozdział 1. Wprowadzenie do projektowania oprogramowania ............................ 29
    1.1.
    Cykl życia oprogramowania ..............................................................................30
    Modele cyklu życia oprogramowania ...................................................................31
    Działania związane z cyklem życia oprogramowania ..........................................33
    Specyfikacja wymagań .........................................................................................34
    Analiza ..................................................................................................................35
    Projektowanie .......................................................................................................36
    Ćwiczenia do podrozdziału 1.1 .............................................................................38
    1.2.
    Abstrakcja pomaga zarządzać złożonością ......................................................39
    Abstrakcja proceduralna .......................................................................................39
    Abstrakcja danych .................................................................................................40
    Ukrywanie informacji ...........................................................................................40
    Ćwiczenia do podrozdziału 1.2 .............................................................................41
    1.3.
    Abstrakcyjne typy danych, interfejsy, warunki wstępne i końcowe ..............42
    Interfejsy ...............................................................................................................43
    Klauzula implements ............................................................................................45
    Deklaracja zmiennej będącej typem interfejsu .....................................................45
    Interfejs dla klasy książki telefonicznej ................................................................46
    Komentarze Javadoc .............................................................................................46
    Kontrakty i interfejsy ............................................................................................47
    Warunki początkowe i końcowe ...........................................................................47
    Ćwiczenia do podrozdziału 1.3 .............................................................................48
    1.4.
    Analiza wymagań, przypadki użycia i diagramy sekwencji ...........................49
    ANALIZA PRZYPADKU — projektowanie programu książki telefonicznej ....50
    Ćwiczenia do podrozdziału 1.4 .............................................................................55
    1.5.
    Projektowanie książki telefonicznej bazującej na tablicy ...............................56
    ANALIZA PRZYPADKU — projektowanie programu książki telefonicznej
    (kontynuacja) ......................................................................................................56
    Ćwiczenia do podrozdziału 1.5 .............................................................................62
    1.6.
    Implementacja i testowanie książki telefonicznej bazującej na tablicy .........62
    ANALIZA PRZYPADKU — projektowanie programu książki telefonicznej
    (kontynuacja) ......................................................................................................62
    Ćwiczenia do podrozdziału 1.6 .............................................................................69
     4
    Struktury danych i techniki obiektowe na przykładzie Javy 5.0
    1.7. Dwie klasy implementujące interfejs PDUserInterface ...................................69
    ANALIZA PRZYPADKU — projektowanie programu książki telefonicznej
    (kontynuacja) ......................................................................................................69
    Ćwiczenia do podrozdziału 1.7 .............................................................................80
    Podsumowanie rozdziału ...............................................................................................80
    Rozdział 2. Poprawność i wydajność programów ............................................... 87
    2.1.
    Defekty i błędy w programach ...........................................................................88
    Błędy składniowe ..................................................................................................89
    Błędy czasu wykonania i wyjątki .........................................................................90
    Błędy logiczne ......................................................................................................94
    Ćwiczenia do podrozdziału 2.1 .............................................................................95
    2.2.
    Hierarchia klas wyjątków ..................................................................................95
    Klasa Throwable ...................................................................................................96
    Wyjątki weryfikowane i nieweryfikowane ...........................................................96
    Ćwiczenia do podrozdziału 2.2 .............................................................................97
    2.3.
    Wyłapywanie i obsługa wyjątków .....................................................................99
    Wyjątki niewyłapane ............................................................................................99
    Sekwencja try-catch-finally ..................................................................................99
    Ćwiczenia do podrozdziału 2.3 ...........................................................................106
    2.4.
    Zgłaszanie wyjątków .........................................................................................106
    Klauzula throws ..................................................................................................106
    Instrukcja throw ..................................................................................................108
    Wyłapywanie wyjątków w programie książki telefonicznej ..............................111
    Ćwiczenia do podrozdziału 2.4 ...........................................................................113
    2.5.
    Testowanie programów ....................................................................................114
    Strukturalne ścieżki przejścia .............................................................................115
    Poziomy i rodzaje testów ....................................................................................115
    Przygotowanie do testów ....................................................................................117
    Wskazówki dotyczące testowania programów ...................................................118
    Przygotowanie danych testowych .......................................................................119
    Testowanie warunków granicznych ....................................................................119
    Kto wykonuje testy? ...........................................................................................122
    Namiastki ............................................................................................................123
    Programy testujące ..............................................................................................124
    Testowanie klasy .................................................................................................124
    Wykorzystanie systemu testującego ...................................................................125
    Testy regresyjne ..................................................................................................127
    Testy integracyjne ...............................................................................................128
    Ćwiczenia do podrozdziału 2.5 ...........................................................................128
    2.6.
    Usuwanie błędów z programów .......................................................................129
    Wykorzystanie programu uruchomieniowego ....................................................130
    Ćwiczenia do podrozdziału 2.6 ...........................................................................134
    2.7.
    Rozważania na temat programów: asercje i niezmienniki pętli ...................134
    Asercje ................................................................................................................135
    Niezmienniki pętli ...............................................................................................135
    Rozszerzenie tematu — instrukcja assert języka Java ........................................137
    Ćwiczenia do podrozdziału 2.7 ...........................................................................138
    2.8.
    Wydajność algorytmów ....................................................................................138
    Notacja dużego O ................................................................................................141
    Porównanie wydajności ......................................................................................145
    Spis treści
    5
    Algorytmy o złożoności wykładniczej ................................................................146
    Ćwiczenia do podrozdziału 2.8 ...........................................................................147
    Podsumowanie rozdziału .............................................................................................148
    Rozdział 3. Dziedziczenie i hierarchie klas ....................................................... 157
    3.1.
    Wprowadzenie do dziedziczenia i hierarchii klas ..........................................158
    Związki „jest” i „zawiera” ..................................................................................160
    Klasa bazowa i podklasa .....................................................................................161
    Wykorzystanie słowa kluczowego this ...............................................................162
    Inicjalizacja pól danych podklasy .......................................................................163
    Konstruktor bezparametrowy ..............................................................................164
    Pola chronione klasy bazowej .............................................................................164
    Ćwiczenia do podrozdziału 3.1 ...........................................................................165
    3.2.
    Przeciążanie metod, przesłanianie metod i polimorfizm ...............................166
    Przesłanianie metod ............................................................................................166
    Przeciążanie metod .............................................................................................168
    Polimorfizm ........................................................................................................169
    Ćwiczenia do podrozdziału 3.2 ...........................................................................171
    3.3.
    Klasy abstrakcyjne, przypisanie i rzutowanie w hierarchii klas ..................172
    Referencje do obiektów rzeczywistych ..............................................................174
    Klasy abstrakcyjne i interfejsy ............................................................................174
    Klasa abstrakcyjna Number i klasy opakowujące typy podstawowe .................174
    Podsumowanie cech klas konkretnych, klas abstrakcyjnych i interfejsów .........175
    Ćwiczenia do podrozdziału 3.3 ...........................................................................175
    3.4.
    Klasa Object, rzutowanie i klonowanie ..........................................................177
    Metoda toString() ................................................................................................177
    Dopuszczalne operacje określa typ zmiennej referencyjnej ...............................177
    Rzutowanie w hierarchii klas ..............................................................................178
    Metoda Object.equals() .......................................................................................182
    Klonowanie .........................................................................................................183
    Klonowanie struktury danych .............................................................................187
    Ćwiczenia do podrozdziału 3.4 ...........................................................................188
    3.5.
    Dziedziczenie wielobazowe, stosowanie wielu interfejsów i delegacja .........189
    Wykorzystanie wielu interfejsów do emulacji dziedziczenia wielobazowego ...189
    Implementacja wielokrotnego użycia dzięki delegacji .......................................191
    Ćwiczenia do podrozdziału 3.5 ...........................................................................192
    3.6.
    Pakiety i widoczność .........................................................................................193
    Pakiety .................................................................................................................193
    Środowisko bez deklaracji nazwy pakietu ..........................................................193
    Widoczność w ramach pakietu ...........................................................................194
    Widoczność pozwala wspomóc hermetyzację ....................................................194
    Ćwiczenia do podrozdziału 3.6 ...........................................................................195
    3.7.
    Hierarchia klas kształtu ...................................................................................196
    ANALIZA PRZYPADKU — rysowanie figur geometrycznych .......................196
    Ćwiczenia do podrozdziału 3.7 ...........................................................................212
    3.8.
    Fabryki obiektów ..............................................................................................212
    ANALIZA PRZYPADKU — obliczanie pól i obwodów figur
    geometrycznych ................................................................................................213
    Ćwiczenia do podrozdziału 3.8 ...........................................................................215
    6
    Struktury danych i techniki obiektowe na przykładzie Javy 5.0
    Podsumowanie rozdziału .............................................................................................215
    Rozdział 4. Listy i interfejs Collection ............................................................. 223
    4.1.
    Interfejs List i klasa ArrayList ........................................................................224
    Klasa ArrayList ...................................................................................................225
    Kolekcje sparametryzowane ...............................................................................227
    Specyfikacja klasy ArrayList ..............................................................................229
    Ćwiczenia do podrozdziału 4.1 ...........................................................................230
    4.2.
    Zastosowania ArrayList ...................................................................................230
    Powrót do programu książki telefonicznej .........................................................231
    Ćwiczenia do podrozdziału 4.2 ...........................................................................232
    4.3.
    Implementacja klasy ArrayList .......................................................................233
    Konstruktor klasy KWArrayList<E> ..................................................................234
    Metoda add(E anEntry) .......................................................................................234
    Metoda add(int index, E anEntry) .......................................................................235
    Metody set() i get() .............................................................................................236
    Metoda remove() .................................................................................................237
    Metoda reallocate() .............................................................................................237
    Implementacja KWArrayList jako klasy bez parametryzacji .............................238
    Wydajność KWArrayList ...................................................................................238
    Klasa Vector ........................................................................................................238
    Ćwiczenia do podrozdziału 4.3 ...........................................................................239
    4.4.
    Listy jednokierunkowe i dwukierunkowe ......................................................239
    Węzeł listy ..........................................................................................................241
    Łączenie węzłów .................................................................................................243
    Klasa listy jednokierunkowej ..............................................................................243
    Wstawienie węzła ...............................................................................................244
    Usunięcie węzła ..................................................................................................244
    Przejście przez listę .............................................................................................245
    Listy dwukierunkowe ..........................................................................................246
    Klasa listy dwukierunkowej ................................................................................248
    Listy cykliczne ....................................................................................................249
    Ćwiczenia do podrozdziału 4.4 ...........................................................................250
    4.5.
    Klasa LinkedList oraz interfejsy Iterator, ListIterator i Iterable ................252
    Klasa LinkedList .................................................................................................252
    Iterator .................................................................................................................252
    Interfejs Iterator ..................................................................................................253
    Interfejs ListIterator ............................................................................................255
    Porównanie Iterator i ListIterator ........................................................................258
    Interfejs ListIterator i indeks ...............................................................................258
    Rozszerzona pętla for ..........................................................................................258
    Interfejs Iterable ..................................................................................................259
    Ćwiczenia do podrozdziału 4.5 ...........................................................................259
    4.6.
    Implementacja klasy listy dwukierunkowej ...................................................260
    Implementacja metod klasy KWLinkedList .......................................................261
    Klasa implementująca interfejs ListIterator ........................................................262
    Klasy wewnętrzne — statyczne i niestatyczne ...................................................268
    Ćwiczenia do podrozdziału 4.6 ...........................................................................269
    4.7.
    Zastosowania klasy LinkedList .......................................................................269
    ANALIZA PRZYPADKU — przechowywanie uporządkowanej listy .............270
    Ćwiczenia do podrozdziału 4.7 ...........................................................................276
    [ Pobierz całość w formacie PDF ]

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • mement.xlx.pl
  • Designed by Finerdesign.com