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



Podobne dokumenty
Java w 21 dni / Rogers Cadenhead. Gliwice, cop Spis treści. O autorze 11. Wprowadzenie 13 TYDZIEŃ I JĘZYK JAVA

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

Rok akademicki: 2012/2013 Kod: JFM s Punkty ECTS: 3. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne

Programowanie obiektowe Object programming. Elektrotechnika II stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny)

Jeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę.

Programowanie obiektowe 1 - opis przedmiotu

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

Informatyka I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny) stacjonarne (stacjonarne / niestacjonarne)

Język Java część 2 (przykładowa aplikacja)

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Platformy Programistyczne Zagadnienia sieciowe i wątki

Programowanie obiektowe - 1.

KARTA PRZEDMIOTU. Aplikacje sieciowe w języku Java. D1_5

Programowanie w języku Java 7 z biblioteką SWING

5-6. Struktura dokumentu html. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów

Język Java część 2 (przykładowa aplikacja)

Podczas dziedziczenia obiekt klasy pochodnej może być wskazywany przez wskaźnik typu klasy bazowej.

Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści

KARTA PRZEDMIOTU. Aplikacje sieciowe w języku Java. D1_4

Być może jesteś doświadczonym programistą, biegle programujesz w Javie,

Zakres treści Czas. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów

Obiekt klasy jest definiowany poprzez jej składniki. Składnikami są różne zmienne oraz funkcje. Składniki opisują rzeczywisty stan obiektu.

Programowanie w Javie nazwa przedmiotu SYLABUS A. Informacje ogólne

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),

Klient-Serwer Komunikacja przy pomocy gniazd

C# 6.0 : kompletny przewodnik dla praktyków / Mark Michaelis, Eric Lippert. Gliwice, cop Spis treści

Spis treści. Wprowadzenie 15

Spis treści. O autorze (11) O redaktorze technicznym (11) Wstęp (13) Rozdział 1. Podstawy Javy (19)

Programowanie obiektowe. Wprowadzenie

Obszar statyczny dane dostępne w dowolnym momencie podczas pracy programu (wprowadzone słowem kluczowym static),

Współbieżność i równoległość w środowiskach obiektowych. Krzysztof Banaś Obliczenia równoległe 1

Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego. Iwona Kochaoska

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych

Podstawy Programowania Obiektowego

Programowanie obiektowe

Programowanie obiektowe

Wątek - definicja. Wykorzystanie kilku rdzeni procesora jednocześnie Zrównoleglenie obliczeń Jednoczesna obsługa ekranu i procesu obliczeniowego

Programowanie współbieżne i rozproszone

Multimedia JAVA. Historia

Interfejsy i klasy wewnętrzne

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz

K_W04 K_W04 K_W04. Opis

Wykład Ćwiczenia Laboratorium Projekt Seminarium

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje w roku akademickim 2012/2013. Przedmioty kierunkowe

Programowanie obiektowe

Programowanie obiektowe zastosowanie języka Java SE

Programowanie w języku Swift : Big Nerd Ranch guide / Matthew Mathias, John Gallagher. Gliwice, cop Spis treści

Head First Java. Edycja polska

Informatyka, I stopień. Programowanie (PRO300.2)

Kurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016

SZYBKO ZROZUMIEĆ VISUAL BASIC 2012 Artur Niewiarowski -

Platformy programistyczne:.net i Java L ABORATORIUM 7,8: HACKATHON - JTTT

LABARATORIUM 9 TESTY JEDNOSTKOWE JUNIT 3.8

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2012/2013

1. Które składowe klasa posiada zawsze, niezależnie od tego czy je zdefiniujemy, czy nie?

Zadanie polega na stworzeniu bazy danych w pamięci zapewniającej efektywny dostęp do danych baza osób.

Zacznij Tu! Poznaj Microsoft Visual Basic. Michael Halvorson. Przekład: Joanna Zatorska

Krakowska Akademia im. Andrzeja Frycza Modrzewskiego. Karta przedmiotu. obowiązuje studentów, którzy rozpoczęli studia w roku akademickim 2012/2013

Wzorce projektowe. dr inż. Marcin Pietroo

Wykład 9: Polimorfizm i klasy wirtualne

Programowanie strukturalne i obiektowe : podręcznik do nauki zawodu technik informatyk / Adam Majczak. Gliwice, cop

Programowanie (C++) NI 5

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

Microsoft Visual C : praktyczne przykłady / Mariusz Owczarek. Gliwice, cop Spis treści

Program szkolenia PODSTAWY VBA (VISUAL BASIC FOR APPLICATIONS) I FORMULARZE.

PRYWATNA WYŻSZA SZKOŁA BUSINESSU, ADMINISTRACJI I TECHNIK KOMPUTEROWYCH S Y L A B U S

GUI - projektowanie interfejsów cz. II

JAVA W SUPER EXPRESOWEJ PIGUŁCE

Mariusz Trzaska Modelowanie i implementacja systemów informatycznych

Marcin Luckner Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych

Aplikacje RMI

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI EFEKTY KSZTAŁCENIA

Programowanie graficznego interfejsu użytkownika. Wykład 8. Maciej Wołoszyn 10 maja 2006

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

KOTLIN. Język programowania dla Androida

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017

Magia Ruby : programowanie na wesoło / Eric Weinstein. Warszawa, Spis treści

Myśl w języku Python! : nauka programowania / Allen B. Downey. Gliwice, cop Spis treści

Dokumentacja do API Javy.

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

Oracle11g: Programowanie w PL/SQL

A Zasady współpracy. Ocena rozwiązań punktów punktów punktów punktów punktów

Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni. Wykład 3. Karol Tarnowski A-1 p.

Java Język programowania

Programowanie Multimediów. Programowanie Multimediów JAVA. wprowadzenie do programowania (3/3) [1]

Java Podstawy. Michał Bereta

Program szkolenia VBA (VISUAL BASIC FOR APPLICATIONS) W EXCELU PODSTAWOWY.

o Instalacja środowiska programistycznego (18) o Blink (18) o Zasilanie (21) o Złącza zasilania (22) o Wejścia analogowe (22) o Złącza cyfrowe (22)

Spis treści WSTĘP CZĘŚĆ I. PASCAL WPROWADZENIE DO PROGRAMOWANIA STRUKTURALNEGO. Rozdział 1. Wybór i instalacja kompilatora języka Pascal

Wykład 8: klasy cz. 4

Wykład 2: Podstawy Języka

Programowanie obiektowe

Programowanie Obiektowe i C++

Diagramy klas. dr Jarosław Skaruz

PRYWATNA WYŻSZA SZKOŁA BUSINESSU, ADMINISTRACJI I TECHNIK KOMPUTEROWYCH S Y L A B U S

Bezpieczeństwo systemów komputerowych. Java i JavaScript. Java i JavaScript. Java - historia

Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1

Strumienie, pliki. Sortowanie. Wyjątki.

C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów

Cel: Przypisujemy przyciskom określone funkcje panel górny (Panel1)

Transkrypt:

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 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)