INNE EBOOKI AUTORA
Autor:
Wydawca:
Format:
epub, mobi, ibuk
Java to najpopularniejszy język programowania na świecie, lecz jest znany z tego, że z początku jest trudny do nauki. Książka Java, to takie proste uczy tego języka za pomocą praktycznych projektów, dzięki którym od razu zaczniesz tworzyć prawdziwe, działające aplikacje.
Rok wydania | 2018 |
---|---|
Liczba stron | 350 |
Kategoria | Programowanie |
Wydawca | Wydawnictwo Naukowe PWN |
ISBN-13 | 978-83-01-20067-1 |
Numer wydania | 1 |
Język publikacji | polski |
Informacja o sprzedawcy | ePWN sp. z o.o. |
INNE EBOOKI AUTORA
POLECAMY
Ciekawe propozycje
Spis treści
PODZIĘKOWANIA XVII | |
WPROWADZENIE XIX | |
Dlaczego warto nauczyć się programowania? XX | |
Dlaczego warto programować w języku Java? XX | |
Co można znaleźć w tej książce XXI | |
Jakie narzędzia będę potrzebne? XXI | |
Zasoby online XXII | |
Pora zacząć! XXII | |
Materiały pomocnicze XXII | |
1. PIERWSZE KROKI 1 | |
Java dla systemów Windows, macOS oraz Linux 2 | |
Instalowanie wersji Java 8 oraz 9 dla programistów 2 | |
Instalowanie programu Eclipse IDE for Java Developers 3 | |
Konfigurowanie środowiska Eclipse 5 | |
Instalowanie edytora WindowBuilder 6 | |
Dostosowywanie wyglądu i działania programu Eclipse 8 | |
Instalowanie Android Studio do tworzenia aplikacji mobilnych 9 | |
Poznawanie języka Java przy użyciu narzędzia JShell 10 | |
Uruchamianie JShell 11 | |
Korzystanie z wyrażeń Java w JShell 13 | |
Deklarowanie zmiennych Java w JShell 14 | |
Drukowanie danych wyjściowych w języku Java 17 | |
Polecenia JShell 17 | |
Co już umiesz 20 | |
2. BUDOWANIE APLIKACJI ZGADYWANKI! 21 | |
Planowanie gry krok po kroku 22 | |
Tworzenie nowego projektu 22 | |
Tworzenie klasy HiLo 23 | |
Generowanie liczby losowej 26 | |
Wczytywanie danych wpisanych na klawiaturze przez użytkownika 28 | |
Przygotowanie programu do drukowania danych wyjściowych 30 | |
Pętle: spytaj, sprawdź, powtórz 31 | |
Instrukcje if: sprawdzanie odpowiednich warunków 33 | |
Dodawanie pętli do ponownego grania 36 | |
Testowanie gry 40 | |
Co już umiesz 42 | |
Zadania programistyczne 44 | |
Zadanie 1: rozszerzanie zakresu 44 | |
Zadanie 2: zliczanie prób 45 | |
Zadanie 3: gra MadLibs 45 | |
3. TWORZENIE GUI DLA NASZEJ ZGADYWANKI 47 | |
Trenowanie umiejętności korzystania z narzędzia JShell 48 | |
Tworzenie interfejsu GUI w czterech wierszach kodu 48 | |
Tworzenie interaktywnego interfejsu GUI za pomocą 10 wierszy kodu! 49 | |
Przygotowywanie aplikacji GUI w programie Eclipse 52 | |
Projektowanie interfejsu GUI przy użyciu edytora WindowBuilder programu Eclipse 54 | |
Projektowanie interfejsu użytkownika 55 | |
Ustawianie właściwości GUI w panelu Properties 55 | |
Dostosowywanie komponentów GUI w panelu Palette 57 | |
Wyrównywanie elementów GUI 60 | |
Nadawanie nazw komponentom GUI do użycia w kodzie 61 | |
Łączenie GUI z kodem źródłowym 62 | |
Dodawanie metody sprawdzającej typowane liczby 64 | |
Pobieranie tekstu z JTextField 64 | |
Konwertowanie łańcuchów na liczby 66 | |
Rozpoczynanie nowej gry 67 | |
Odbieranie zdarzeń użytkownika: kliknij, aby zgadnąć! 68 | |
Przygotowywanie okna GUI 70 | |
Czas zacząć zabawę! 72 | |
Dodawanie funkcji ponownej gry 73 | |
Ulepszanie środowiska użytkownika 74 | |
Przesyłanie próby odgadnięcia po naciśnięciu klawisza enter 75 | |
Automatyczne usuwanie poprzednich prób odgadnięcia 75 | |
Obsługa nieprawidłowych danych wejściowych 77 | |
Co już umiesz 80 | |
Zadania programistyczne 80 | |
Zadanie 1: pokazywanie użytkownikowi liczby prób 81 | |
Zadanie 2: pokazywanie i ukrywanie przycisku Play Again 81 | |
Zadanie 3: tworzenie interfejsu GUI gry MadLibs 82 | |
4. TWORZENIE PIERWSZEJ APLIKACJI W SYSTEMIE ANDROID 83 | |
Rozpoczynanie nowego projektu aplikacji w Android Studio 84 | |
Budowanie układu GUI w widoku projektu 89 | |
Nazywanie komponentów GUI w Android Studio 92 | |
Łączenie interfejsu GUI z kodem Java w Android Studio 94 | |
Dodawanie metod sprawdzania liczby i rozpoczynania nowej gry 98 | |
Obsługiwanie zdarzeń w systemie Android 100 | |
Uruchamianie aplikacji na emulatorze Androida 104 | |
Uruchamianie aplikacji na prawdziwym urządzeniu z systemem Android 109 | |
Przygotowanie urządzenia 109 | |
Podłączanie własnego urządzenia 110 | |
Uruchamianie aplikacji na urządzeniu 111 | |
Ulepszanie środowiska użytkownika 112 | |
Wyśrodkowanie wpisywanej liczby w polu tekstowym 112 | |
Dodawanie interfejsu słuchacza dla klawisza enter 113 | |
Jeszcze jeden ostateczny szlif 114 | |
Co już umiesz 115 | |
Zadania programistyczne 115 | |
Zadanie 1: „Toast”-owanie liczby prób 116 | |
Zadanie 2: zwiększanie atrakcyjności wizualnej 117 | |
Zadanie 3: tworzenie aplikacji mobilnej MadLibs 117 | |
5. UDOSKONALANIE APLIKACJI POPRZEZ DODANIE MENU I PREFERENCJI 119 | |
Dodawanie menu opcji w systemie Android 119 | |
Dodawanie elementów do pliku XML menu 120 | |
Wyświetlanie menu opcji 121 | |
Reagowanie na wybory użytkownika 122 | |
Tworzenie wyskakującego okna dialogowego dla opcji About 123 | |
Modyfikowanie zakresu liczb do odgadnięcia 125 | |
Dodawanie zmiennej zakresu 125 | |
Wykorzystywanie zmiennej range 126 | |
Budowanie okna dialogowego, które umożliwia użytkownikowi wybranie zakresu 127 | |
Przechowywanie preferencji użytkownika i statystyk gry 128 | |
Zapisywanie i pobieranie preferowanego przez użytkownika zakresu 129 | |
Przechowywanie liczby wygranych gier 131 | |
Co już umiesz 133 | |
Zadania programistyczne 133 | |
Zadanie 1: raz wygrana, raz przegrana 133 | |
Zadanie 2: proporcja gier wygranych do przegranych 134 | |
6. ODSZYFROWYWANIE SEKRETNYCH WIADOMOŚCI 135 | |
Kod Cezara 135 | |
Przygotowywanie aplikacji Secret Messages 136 | |
Tworzenie projektu Secret Messages w programie Eclipse 137 | |
Rozpoczynanie kodowania w pliku SecretMessages.java 138 | |
Przetwarzanie ciągów znaków 138 | |
Znaki i wartości w języku Java 142 | |
Szyfrowanie samych liter 144 | |
Zamykanie skanera 146 | |
Dodawanie niestandardowej wartości klucza 148 | |
Szyfrowanie cyfr 149 | |
Uruchamianie aplikacji wiersza poleceń bez programu Eclipse 152 | |
Znajdowanie folderów przestrzeni roboczej 152 | |
Otwieranie okna wiersza poleceń 153 | |
Co już umiesz 155 | |
Zadania programistyczne 155 | |
Zadanie 1: zapętlanie pętli 156 | |
Zadanie 2: odwracanie i szyfrowanie 156 | |
Zadanie 3: bezpieczna obsługa kluczy za pomocą instrukcji try-catch 156 | |
7. TWORZENIE ZAAWANSOWANYCH INTERFEJSÓW GUI I UDOSTĘPNIANIE APLIKACJI 159 | |
Przygotowywanie projektu aplikacji Secret Messages z interfejsem GUI 160 | |
Projektowanie interfejsu GUI i nazywanie komponentów 160 | |
Pisanie kodu aplikacji Secret Messages z interfejsem GUI 164 | |
Tworzenie metody encode() 164 | |
Pisanie obsługi zdarzenia dla przycisku Encode/Decode 166 | |
Obsługa nieprawidłowych danych i błędów 168 | |
Budowanie metody main() i uruchamianie aplikacji 169 | |
Ulepszanie interfejsu GUI 171 | |
Ustawianie zawijania tekstu 174 | |
Obsługa nieprawidłowych danych i błędów: część 2 175 | |
Dodawanie suwaka do interfejsu GUI aplikacji Secret Messages 177 | |
Łamanie szyfru przy użyciu suwaka 179 | |
Bonus: Udostępnianie aplikacji w postaci uruchamialnego pliku JAR 183 | |
Co już umiesz 186 | |
Zadania programistyczne 186 | |
Zadanie 1: przenoszenie w górę! 187 | |
Zadanie 2: przewijanie! 187 | |
Zadanie 3: zmienianie suwaka pod wpływem zmiany tekstu 189 | |
8. PRZEKSZTAŁCANIE SECRET MESSAGES W APLIKACJĘ MOBILNĄ DO UDOSTĘPNIANIA ZNAJOMYM! 191 | |
Przygotowywanie mobilnego interfejsu GUI 192 | |
Projektowanie mobilnego interfejsu GUI 193 | |
Łączenie interfejsu GUI z kodem Javy 198 | |
Łączenie przycisku Encode z metodą encode() 198 | |
Testowanie aplikacji 201 | |
Praca z widżetem SeekBar 203 | |
Uruchamianie aplikacji na emulatorze i urządzeniu z systemem Android 205 | |
Bonus: Dostosowywanie przycisku FAB 207 | |
Odbieranie sekretnych wiadomości z innych aplikacji 210 | |
Co już umiesz 213 | |
Zadania programistyczne 213 | |
Zadanie 1: tworzenie przycisku Move Up 213 | |
Zadanie 2: zmienianie postępu na pasku postępu SeekBar 214 | |
9. RYSOWANIE KOLOROWYCH BĄBELKÓW PRZY UŻYCIU MYSZY! 215 | |
Tworzenie plików projektu BubbleDraw 217 | |
Budowanie okna BubbleDraw 217 | |
Tworzenie klasy Bubble 218 | |
Definiowanie klasy Bubble 218 | |
Projektowanie metod klasy Bubble 220 | |
Przechowywanie bąbelków w ArrayList 224 | |
Dodawanie konstruktora do klasy BubblePanel 225 | |
Dodawanie metody do rysowania na ekranie 226 | |
Testowanie klasy BubblePanel 228 | |
Obsługa zdarzeń myszy inicjowanych przez użytkownika 230 | |
Tworzenie interfejsu słuchacza zdarzeń do wielokrotnego użytku 230 | |
Obsługiwanie kliknięć i przeciągnięć 231 | |
Bonus: obsługa zdarzeń MouseWheel 236 | |
Co już umiesz 238 | |
Zadania programistyczne 239 | |
Zadanie 1: wyeliminowanie zbyt małych bąbelków 239 | |
Zadanie 2: pikselizacja! 239 | |
10. DODAWANIE ANIMACJI I WYKRYWANIE KOLIZJI PRZY UŻYCIU TIMERÓW 243 | |
Kopiowanie projektu Java BubbleDraw w celu utworzenia aplikacji BubbleDrawGUI 244 | |
Zmienianie nazw klasy z metodą main i pliku Java 244 | |
Dodawanie transparentności 246 | |
Dodawanie animacji: bąbelki w ruch! 247 | |
Dodawanie timera 248 | |
Ustawianie timera 248 | |
Przygotowywanie animacji 250 | |
Uruchamianie timera 251 | |
Rozdmuchiwanie bąbelków: dodawanie losowej prędkości i kierunku 251 | |
Budowanie interfejsu GUI dla naszej animowanej aplikacji do rysowania 255 | |
Przygotowywanie panelu oraz przycisków GUI 255 | |
Programowanie przycisków Clear oraz Pause/Start 257 | |
Odbijanie się od ścian dzięki wykrywaniu kolizji 259 | |
Miękkie odbicie 259 | |
Twarde odbicie 262 | |
Dodawanie suwaka do kontrolowania prędkości animacji 263 | |
Dostosowywanie suwaka 264 | |
Implementowanie obsługi zdarzeń suwaka 265 | |
Co już umiesz 267 | |
Zadania programistyczne 268 | |
Zadanie 1: bez nieruchomych bąbelków 268 | |
Zadanie 2: rysowanie elastycznych kształtów 269 | |
Zadanie 3: PixelDraw 2.0 270 | |
11. PRZEKSZTAŁCANIE BUBBLEDRAW W WIELODOTYKOWĄ APLIKACJĘ SYSTEMU ANDROID 273 | |
Przygotowywanie projektu BubbleDraw 274 | |
Tworzenie konstruktora BubbleView 276 | |
Dodawanie zmiennych animacji 276 | |
Tworzenie konstruktora BubbleView() 278 | |
Przygotowywanie układu do użycia widoku BubbleView 279 | |
Modyfikowanie klasy Bubble 280 | |
Rysowanie w systemie Android przy użyciu metody onDraw() 282 | |
Testowanie aplikacji BubbleDraw przy użyciu stu bąbelków 283 | |
Dodawanie metody testBubbles() 283 | |
Naprawianie błędu OnTouchListener 284 | |
Uruchamianie aplikacji BubbleDraw 285 | |
Wykorzystywanie wątkowej animacji i wielozadaniowości w języku Java 287 | |
Wykorzystywanie dotyku do rysowania palcem 289 | |
Wykorzystywanie wielodotykowości do rysowania dziesięcioma palcami naraz! 291 | |
Testowanie zdarzeń wielodotykowości na urządzeniu Android 292 | |
Zmienianie ikony aplikacji 293 | |
Tworzenie niestandardowej ikony aplikacji 293 | |
Dodawanie niestandardowej ikony aplikacji 294 | |
Wyświetlanie nowej ikony 295 | |
Zmienianie nazwy aplikacji 295 | |
Co już umiesz 296 | |
Zadania programistyczne 297 | |
Zadanie 1: łączenie zdarzeń dotknięcia jednym i wieloma palcami, v1.0 297 | |
Zadanie 2: łączenie zdarzeń dotknięcia jednym i wieloma palcami, v2.0 297 | |
DODATEK | |
DEBUGOWANIE I UNIKANIE TYPOWYCH BŁĘDÓW W JĘZYKU JAVA 299 | |
Pisownia i wielkość liter 300 | |
Poprawianie literówek w programie Eclipse 300 | |
Poprawianie literówek w programie Android Studio 301 | |
Unikanie innych typowych literówek 302 | |
Problemy z porównaniami 302 | |
Symbole grupujące 303 | |
Szybkie rozwiązania w programie Eclipse 303 | |
Uzupełnianie kodu w Android Studio 304 | |
Podsumowanie 305 | |
INDEKS RZECZOWY 307 | |