Facebook - konwersja
Pobierz fragment

Java. Rusz głową! Wydanie II - ebook

Wydawnictwo:
Tłumacz:
Data wydania:
14 września 2012
Format ebooka:
PDF
Format PDF
czytaj
na laptopie
czytaj
na tablecie
Format e-booków, który możesz odczytywać na tablecie oraz laptopie. Pliki PDF są odczytywane również przez czytniki i smartfony, jednakze względu na komfort czytania i brak możliwości skalowania czcionki, czytanie plików PDF na tych urządzeniach może być męczące dla oczu. Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na laptopie
Pliki PDF zabezpieczone watermarkiem możesz odczytać na dowolnym laptopie po zainstalowaniu czytnika dokumentów PDF. Najpowszechniejszym programem, który umożliwi odczytanie pliku PDF na laptopie, jest Adobe Reader. W zależności od potrzeb, możesz zainstalować również inny program - e-booki PDF pod względem sposobu odczytywania nie różnią niczym od powszechnie stosowanych dokumentów PDF, które odczytujemy każdego dnia.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na tablecie
Aby odczytywać e-booki na swoim tablecie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. Bluefire dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
Pobierz fragment
97,00

Java. Rusz głową! Wydanie II - ebook

Jeśli chcesz poznać Javę, nie szukaj dalej -
oto pierwsza książka techniczna z graficznym interfejsem użytkownika!

  • Obejmuje Javę 5.0

Technologie oparte na Javie są wszędzie - jeśli piszesz oprogramowanie i jeszcze nie poznałeś Javy, nadszedł czas, by ruszyć głową!

Otwórz się na Javę i projektowanie obiektowe. Przystąp do nauki unikalną metodą, wykraczającą poza suche opisy składni oraz sposobów omijania codziennie spotykanych raf programistycznych. To doskonały podręcznik dla osób, które lubią uczyć się nowych języków programowania i nie mają wykształcenia informatycznego lub programistycznego. Zostań fantastycznym programistą i zdobądź wiedzę kompletną: od tworzenia obiektów, po graficzny interfejs użytkownika (GUI), obsługę wyjątków (błędów) oraz komunikację sieciową (gniazda) i wielowątkowość, a nawet pakowanie grupy plików klasowych w jeden plik instalacyjny.

Naprzód, głowo! Nikt ci tego nie potrafił wytłumaczyć? Wydaje Ci się, że to problem nie na Twoją głowę? Nie potrzebujesz elektrowstrząsów, żeby pobudzić swój mózg do aktywnego działania. Tylko żadnych gwałtownych gestów! Usiądź wygodnie, otwórz książkę, dopiero teraz się zacznie. Na początek - rusz głową!

Precz z nudnymi wykładami i zakuwaniem bez zrozumienia! Nauka to znacznie więcej niż tylko czytanie suchego tekstu. Twój mózg jest niczym głodny rekin, cały czas prący naprzód w poszukiwaniu nowej, apetycznej przekąski. Jak karmimy Twój wygłodniały umysł?

Używamy rysunków, bo obraz wart jest 1024 słów. Stosujemy powtórzenia, by zakodować na stałe dane w Twojej chłonnej głowie. Oddziałujemy na emocje, jesteśmy nieprzewidywalni, zaskakujący i zabawni. Stawiamy przed Tobą wyzwania i zadajemy pytania, które angażują Cię w proces studiowania przedstawianych zagadnień. Cały czas pobudzamy Twój umysł do aktywnego działania, zmuszamy go do posłuszeństwa... a za ciężką pracę nagrodzimy go smakowitym ciasteczkiem w postaci wiedzy - wisienka gratis!

Rozgryź to sam!

  • Klasy i obiekty
  • Typy danych
  • Pierwszy program w Javie
  • Java API
  • Programowanie obiektowe - dziedziczenie, polimorfizm, interfejsy i klasy abstrakcyjne
  • Metody
  • Obsługa wyjątków
  • Graficzny interfejs użytkownika
  • Operacje wejścia-wyjścia
  • Programowanie sieciowe i RMI

Spis treści

Wprowadzenie

  • Dla kogo jest przeznaczona ta książka? (22)
  • Wiemy, co sobie myślisz (23)
  • Metapoznanie - myślenie o myśleniu (25)
  • Oto co możesz zrobić, aby zmusić swój mózg do posłuszeństwa (27)
  • Czego potrzebujesz, aby skorzystać z tej książki? (28)
  • Redaktorzy techniczni (30)
  • Inne osoby, które można pochwalić (31)

1. Przełamując zalew początkowych trudności

  • Jak działa Java? (34)
  • Struktura kodu w Javie (39)
  • Anatomia klasy (40)
  • Tworzenie klasy z metodą main (41)
  • Pętle i pętle i... (43)
  • Przykłady pętli while (44)
  • Rozgałęzienia warunkowe (45)
  • Tworzenie poważnej aplikacji biznesowej (46)
  • Program krasomówczy (49)

2. Wycieczka do Obiektowa

  • Wojna o fotel (albo Jak Obiekty Mogą Zmienić Twoje Życie) (60)
  • Na plaży na laptopie Jurka (61)
  • O tym beztrosko zapomniano napisać w specyfikacji (62)
  • A co z metodą obroc() dla "ameby"? (64)
  • Ta niepewność mnie zabije! Kto wygra Superfotel? (65)
  • Tworzenie pierwszego obiektu (68)
  • Tworzenie i testowanie obiektów Film (69)
  • Szybko! Opuszczamy metodę main! (70)

3. Poznaj swoje zmienne

  • Deklarowanie zmiennej (82)
  • "Proszę podwójną. Albo nie - całkowitą!" (83)
  • Naprawdę nie chcesz niczego rozsypywać (84)
  • Tabela słów zarezerwowanych (85)
  • Odwołanie do obiektu to jedynie inna wartość zmiennej (87)
  • Życie na odśmiecanej stercie (89)
  • Tablice także są obiektami (91)
  • Tworzymy tablicę obiektów Pies (92)
  • Przykładowy obiekt Pies (94)

4. Jak działają obiekty?

  • Wielkość ma wpływ na sposób szczekania (105)
  • Do metod można przekazywać informacje (106)
  • Metoda może coś zwrócić (107)
  • Java przekazuje argumenty przez wartość (109)
  • Ciekawe rozwiązania wykorzystujące parametry i wartości wynikowe (111)
  • Hermetyzacja (112)
  • Ukryj dane (113)
  • Jak zachowują się obiekty w tablicy? (115)
  • Deklarowanie i inicjalizacja składowych (116)
  • Różnica pomiędzy składowymi a zmiennymi lokalnymi (117)
  • Porównywanie zmiennych (typów podstawowych oraz odwołań) (118)

5. Supermocne metody

  • Napiszmy grę przypominającą "statki", o nazwie "Zatopić portal" (128)
  • Łagodne wprowadzenie do prostszej wersji gry (130)
  • Pisanie implementacji metod (133)
  • Pisanie kodu testowego dla klasy ProstyPortal (134)
  • Kod testowy dla klasy ProstyPortal (135)
  • Ostateczny kod klas ProstyPortal oraz ProstyPortalTester (138)
  • Kod przygotowawczy klasy ProstyPortalGra (140)
  • Trochę więcej o pętlach for (146)
  • Różnica pomiędzy pętlami for i while (147)
  • Rozszerzone pętle (148)
  • Rzutowanie wartości typów podstawowych (149)

6. Korzystanie z biblioteki Javy

  • Ostatni rozdział zakończył się w dramatycznych okolicznościach - w programie znaleźliśmy błąd (156)
  • Oryginalny kod przygotowawczy fragmentu metody sprawdz() (160)
  • Niektóre możliwości klasy ArrayList (163)
  • ArrayList (164)
  • Porównanie klasy ArrayList ze zwyczajną tablicą (167)
  • Napiszmy właściwą wersję gry "Zatopić portal" (170)
  • Co (i kiedy) robią poszczególne obiekty w grze? (172)
  • Kod przygotowawczy właściwej klasy PortalGraMax (174)
  • Wyrażenia logiczne o bardzo dużych możliwościach (181)
  • Stosowanie biblioteki (Java API) (184)
  • Jak poznać API? (188)

7. Wygodniejsze życie w Obiektowie

  • Zrozumienie dziedziczenia (196)
  • Przykład dziedziczenia (197)
  • Jakie metody należy przesłonić? (200)
  • Jaka metoda jest wywoływana? (203)
  • Projektowanie drzewa dziedziczenia (204)
  • Ale poczekaj! To jeszcze nie wszystko! (206)
  • Jak możesz określić, czy dobrze zaprojektowałeś hierarchię dziedziczenia? (207)
  • Czy korzystanie z dziedziczenia przy projektowaniu klas jest "używaniem", czy "nadużywaniem"? (209)
  • Co w rzeczywistości daje nam dziedziczenie? (210)
  • Jak dotrzymać kontraktu - reguły przesłaniania (218)
  • Przeciążanie metody (219)

8. Poważny polimorfizm

  • Abstrakcyjne kontra konkretne (230)
  • Metody abstrakcyjne (231)
  • Polimorfizm w działaniu (234)
  • Czym jest "superultramegaklasa" Object? (237)
  • Stosowanie polimorficznych odwołań typu Object ma swoją cenę... (239)
  • Kiedy Pies nie zachowuje się jak Pies (240)
  • Object nie szczeka (241)
  • Połącz się ze swoim wewnętrznym Object-em (242)
  • A co, jeśli musimy zmienić kontrakt? (246)
  • Na pomoc spieszą interfejsy! (252)

9. Życie i śmierć obiektu

  • Stos i sterta. Gdzie są przechowywane informacje? (264)
  • Metody są zapisywane na stosie (265)
  • A co ze zmiennymi lokalnymi, które są obiektami? (266)
  • Jeśli zmienne lokalne są przechowywane na stosie, to gdzie są przechowywane składowe? (267)
  • Cud utworzenia obiektu (268)
  • Tworzenie obiektu Kaczka (270)
  • Inicjalizacja stanu nowego obiektu Kaczka (271)
  • Nanoprzegląd. Cztery rzeczy o konstruktorach, które należy zapamiętać (277)
  • Znaczenie konstruktorów klasy bazowej w życiu obiektu (279)
  • Konstruktory klas bazowych pobierające argumenty (283)
  • Wywoływanie jednego przeciążonego konstruktora z poziomu innego (284)

10. Liczby mają znaczenie

  • Metody klasy Math - najlepsze z możliwych odpowiedników metod globalnych (302)
  • Różnice pomiędzy metodami zwyczajnymi a statycznymi (303)
  • Co oznacza, że klasa ma statyczne metody (304)
  • Składowa statyczna - ta sama wartość we wszystkich obiektach danej klasy (307)
  • Inicjalizacja składowych statycznych (309)
  • Rolę stałych pełnią statyczne zmienne finalne (310)
  • Nie tylko zmienne statyczne mogą być finalne (311)
  • Formatowanie liczb (322)
  • Specyfikator formatu (326)
  • Operacje na datach (330)
  • Stosowanie obiektów Calendar (333)
  • Wybrane możliwości API klasy Calendar (334)

11. Ryzykowne działania

  • Stwórzmy program MuzMachina (344)
  • JavaSound API (345)
  • Wyjątek jest obiektem... klasy Exception (350)
  • Finally - blok kodu, który musi zostać wykonany niezależnie od wszystkiego (355)
  • Przechwytywanie wielu wyjątków (357)
  • Reguły związane ze stosowaniem wyjątków (366)
  • Generowanie dźwięków (368)
  • Twój pierwszy odtwarzacz muzyki (370)
  • Tworzenie obiektów MidiEvent (danych piosenki) (371)
  • Komunikat MIDI - serce zdarzenia MidiEvent (372)
  • Zmiana komunikatu (373)

12. Historia bardzo graficzna

  • Wszystko zaczyna się od okna (380)
  • Twój pierwszy interfejs graficzny - przycisk w ramce (381)
  • Przechwytywanie zdarzeń generowanych przez działania użytkownika (383)
  • Odbiorcy, źródła i zdarzenia (387)
  • Stwórz własny komponent umożliwiający rysowanie (390)
  • Odwołanie do porządnej klasy Graphics ukrywa obiekt Graphics2D (392)
  • Układy GUI - wyświetlanie w ramce więcej niż jednego komponentu (396)
  • Jak stworzyć obiekt klasy wewnętrznej? (404)
  • Wykorzystanie klas wewnętrznych do tworzenia animacji (408)
  • Odbieranie zdarzeń niezwiązanych z interfejsem użytkownika (413)

13. Popracuj nad Swingiem

  • Komponenty biblioteki Swing (426)
  • Komponenty można zagnieżdżać (426)
  • Menedżery układu (427)
  • W jaki sposób menedżery układu podejmują decyzje? (428)
  • Różne menedżery układu mają różne zasady rozmieszczania (428)
  • Wielka trójka menedżerów układu: BorderLayout, FlowLayout oraz BoxLayout (429)
  • Zabawy z komponentami biblioteki Swing (439)
  • Tworzenie aplikacji MuzMachina (445)

14. Zapisywanie obiektów

  • Odczytywanie taktów (454)
  • Zapisywanie stanu (455)
  • Zapisywanie serializowanego obiektu do pliku (456)
  • Deserializacja - odtwarzanie obiektów (465)
  • Zapisywanie łańcucha znaków w pliku tekstowym (471)
  • Klasa java.io.File (476)
  • Odczyt zawartości pliku tekstowego (478)
  • Przetwarzanie łańcuchów znaków przy użyciu metody split() (482)
  • Identyfikator wersji - wielki problem serializacji (484)
  • Stosowanie serialVersionUID (485)
  • Zapisywanie kompozycji (487)

15. Nawiąż połączenie

  • Muzyczne pogawędki w czasie rzeczywistym (496)
  • Nawiązywanie połączenia, wysyłanie i odbieranie danych (498)
  • Nawiązanie połączenia sieciowego (499)
  • Port TCP to tylko numer. 16-bitowa liczba identyfikująca konkretny program na serwerze (500)
  • Aby odczytywać dane z gniazda, należy użyć strumienia BufferedReader (502)
  • Aby zapisać dane w gnieździe, użyj strumienia PrintWriter (503)
  • Program CodziennePoradyKlient (504)
  • Kod programu CodziennePoradyKlient (505)
  • Tworzenie prostego serwera (507)
  • Kod aplikacji CodziennePoradySerwer (508)
  • Tworzenie klienta pogawędek (510)
  • Możliwość stosowania wielu wątków w Javie zapewnia jedna klasa - Thread (514)
  • Jakie są konsekwencje posiadania więcej niż jednego stosu wywołań? (515)
  • Aby stworzyć zadanie dla wątku, zaimplementuj interfejs Runnable (518)
  • Mechanizm zarządzający wątkami (521)
  • Usypianie wątku (525)
  • Usypianie wątków w celu zapewnienia bardziej przewidywalnego działania programu (526)
  • Tworzenie i uruchamianie dwóch wątków (527)
  • Cóż... Tak, możemy. JEST pewien problem związany ze stosowaniem wątków (528)
  • Problem Moniki i Roberta w formie kodu (530)
  • Przykład Moniki i Roberta (531)
  • Musimy wykonać metodę pobierzGotowke() jako operację atomową (534)
  • Stosowanie blokady obiektu (535)
  • Przerażający problem "utraconej modyfikacji" (536)
  • Wykonajmy ten przykładowy kod... (537)
  • Zadeklaruj metodę inkrementuj() jako metodę atomową. Synchronizuj ją! (538)
  • Mroczna strona synchronizacji (540)
  • Nowa i poprawiona wersja programu ProstyKlientPogawedek (542)
  • Naprawdę prosty serwer pogawędek (544)

16. Struktury danych

  • ArrayList nie jest jedyną dostępną kolekcją (557)
  • Deklaracja metody sort() (563)
  • Poznajemy typy ogólne (565)
  • Używanie KLAS uogólnionych (566)
  • Stosowanie METOD uogólnionych (568)
  • Ponownie odwiedzimy metodę sort() (571)
  • Stosowanie własnych komparatorów (576)
  • Potrzebujemy zbioru, a nie listy (581)
  • Biblioteka kolekcji (fragment) (582)
  • Stosowanie argumentów polimorficznych i typów ogólnych (593)
  • Znaki wieloznaczne śpieszą z pomocą (598)

17. Rozpowszechnij swój kod

  • Wdrażanie aplikacji (606)
  • Oddzielanie kodu źródłowego od plików klasowych (608)
  • Umieszczanie programów w archiwach JAR (609)
  • Uruchamianie (wykonywanie) archiwum JAR (610)
  • Umieść klasy w pakietach (611)
  • Zapobieganie konfliktom nazw pakietów (612)
  • Kompilacja i uruchamianie programu, w którym wykorzystywane są pakiety (614)
  • Flaga -d jest nawet lepsza, niż twierdziliśmy (615)
  • Tworzenie wykonywalnego archiwum JAR zawierającego pakiety (616)
  • Java Web Start (621)
  • Plik .jnlp (623)

18. Przetwarzanie rozproszone

  • RMI udostępnia obiekty pomocnicze klienta i serwera (636)
  • Bardzo prosty serwlet (649)
  • Tak dla zabawy przeróbmy nasz program krasomówczy na serwlet (651)
  • Enterprise JavaBeans - RMI na środkach dopingujących (653)
  • I na samym końcu przedstawiamy... małego dżina Jini (654)
  • Odkrywanie adaptacyjne w akcji (655)

A Ostatnie doprawianie kodu

  • Ostateczna wersja programu MuzMachina (672)
  • Ostateczna wersja serwera aplikacji MuzMachina (679)

B Dziesięć najważniejszych zagadnień, które niemal znalazły się w tej książce...

  • Lista dziesięciu zagadnień (682)

Skorowidz (699)

Kategoria: Programowanie
Zabezpieczenie: Watermark
Watermark
Watermarkowanie polega na znakowaniu plików wewnątrz treści, dzięki czemu możliwe jest rozpoznanie unikatowej licencji transakcyjnej Użytkownika. E-książki zabezpieczone watermarkiem można odczytywać na wszystkich urządzeniach odtwarzających wybrany format (czytniki, tablety, smartfony). Nie ma również ograniczeń liczby licencji oraz istnieje możliwość swobodnego przenoszenia plików między urządzeniami. Pliki z watermarkiem są kompatybilne z popularnymi programami do odczytywania ebooków, jak np. Calibre oraz aplikacjami na urządzenia mobilne na takie platformy jak iOS oraz Android.
ISBN: 978-83-246-6047-6
Rozmiar pliku: 16 MB

BESTSELLERY

Kategorie: