Myśl w języku Java!

Book description

Myśl w języku Java! Nauka programowania
Zacznij myśleć jak programista! Naucz się łączyć umiejętności płynące z różnych dziedzin: matematyki, inżynierii i nauk przyrodniczych. Różnorodna wiedza ułatwi Ci pokonywanie przeszkód w pracy programisty — dzięki niej zdefiniujesz problem i sformułujesz jasne i precyzyjne rozwiązanie. Jak się okazuje, te wszystkie trudne umiejętności można sobie przyswoić, ucząc się programowania. Znajomość języka Java stanie się dodatkową korzyścią — jest to język o ugruntowanej pozycji, lubiany, dojrzały i najzwyczajniej bardzo przydatny.

Trzymasz w ręku zwięzły podręcznik programowania napisany z myślą o osobach mających niewielkie lub zerowe doświadczenie w tej materii. Przedstawiono w nim najbardziej podstawowe zagadnienia, a poszczególne koncepcje zaprezentowano w logicznej kolejności. Sam język Java nie został może wyczerpująco opisany, jednak ważniejsze konstrukcje, strategie i techniki programistyczne zostały pokazane w bardzo zrozumiały i przystępny sposób. Poszczególne koncepcje zilustrowano praktycznymi przykładami kodu. Ten starannie przemyślany układ treści sprawi, że „myślenie jak informatyk” bardzo szybko przestanie być Twoim problemem!
Poznawaj po jednym zagadnieniu naraz: opanuj skomplikowane tematy, rozbijając je na szereg drobnych kroków popartych przykładami.
Zrozum sposób formułowania problemów, myśl kreatywnie o rozwiązaniach i pisz programy klarownie i precyzyjnie.
Wybierz techniki programowania, które najlepiej sprawdzą się w Twojej sytuacji i przećwicz ważną umiejętność debugowania kodu.
Odkryj relacje pomiędzy danymi wejściowymi i wyjściowymi oraz poznaj instrukcje decyzyjne i pętle, klasy i metody, łańcuchy znakowe i tablice.
Wykonaj ćwiczenia związane z grami słownymi, grafiką komputerową, zagadkami i grami karcianymi.
Java — już wkrótce zaczniesz myśleć jak informatyk!

Table of contents

  1. Wstęp
    1. Filozofia stojąca za tą książką
    2. Programowanie zorientowane obiektowo
    3. Dodatki
    4. Używanie przykładowych kodów
    5. Konwencje zastosowane w książce
    6. Podziękowania
  2. Rozdział 1. Droga programu
    1. Czym jest programowanie?
    2. Czym jest informatyka?
    3. Języki programowania
    4. Program „Witaj, świecie!”
    5. Wyświetlanie łańcuchów znakowych
    6. Sekwencje ucieczki
    7. Formatowanie kodu
    8. Debugowanie kodu
    9. Słownictwo
    10. Ćwiczenia
  3. Rozdział 2. Zmienne i operatory
    1. Deklarowanie zmiennych
    2. Przypisanie
    3. Diagramy stanu
    4. Wyświetlanie zmiennych
    5. Operatory arytmetyczne
    6. Liczby zmiennoprzecinkowe
    7. Błędy zaokrągleń
    8. Operatory działające na łańcuchach znakowych
    9. Kompozycja
    10. Typy błędów
    11. Słownictwo
    12. Ćwiczenia
  4. Rozdział 3. Wejście i wyjście
    1. Klasa System
    2. Klasa Scanner
    3. Struktura programu
    4. Cale na centymetry
    5. Literały i stałe
    6. Formatowanie danych wyjściowych
    7. Centymetry na cale
    8. Operator modulo
    9. Łączenie wszystkiego w całość
    10. „Bug” w klasie Scanner
    11. Słownictwo
    12. Ćwiczenia
  5. Rozdział 4. Metody niezwracające wartości
    1. Metody matematyczne
    2. Kompozycja raz jeszcze
    3. Dodawanie nowych metod
    4. Przepływ wykonania
    5. Parametry i argumenty
    6. Wiele parametrów
    7. Diagramy stosu
    8. Czytanie dokumentacji
    9. Pisanie dokumentacji
    10. Słownictwo
    11. Ćwiczenia
  6. Rozdział 5. Warunki i operacje logiczne
    1. Operatory relacyjne
    2. Operatory logiczne
    3. Instrukcje warunkowe
    4. Tworzenie łańcuchów i zagnieżdżanie
    5. Zmienne flagi
    6. Instrukcja return
    7. Sprawdzanie danych wejściowych
    8. Metody rekurencyjne
    9. Rekurencyjne diagramy stosu
    10. Liczby binarne
    11. Słownictwo
    12. Ćwiczenia
  7. Rozdział 6. Metody zwracające wartość
    1. Wartości zwracane
    2. Pisanie metod
    3. Kompozycja metody
    4. Przeciążanie
    5. Metody typu boolean
    6. Znaczniki Javadoc
    7. Więcej rekurencji
    8. Akt wiary
    9. Jeszcze jeden przykład
    10. Słownictwo
    11. Ćwiczenia
  8. Rozdział 7. Pętle
    1. Instrukcja while
    2. Generowanie tablic
    3. Hermetyzacja i uogólnianie
    4. Więcej uogólniania
    5. Instrukcja for
    6. Pętla do-while
    7. Instrukcje break i continue
    8. Słownictwo
    9. Ćwiczenia
  9. Rozdział 8. Tablice
    1. Tworzenie tablic
    2. Dostęp do tablic
    3. Wyświetlanie tablic
    4. Kopiowanie tablic
    5. Długość tablic
    6. Przechodzenie przez tablice
    7. Liczby losowe
    8. Przechodzenie i zliczanie
    9. Budowanie histogramu
    10. Rozszerzona pętla for
    11. Słownictwo
    12. Ćwiczenia
  10. Rozdział 9. Łańcuchy znakowe i spółka
    1. Znaki
    2. Niezmienność łańcuchów znakowych
    3. Przechodzenie przez łańcuchy znakowe
    4. Podłańcuchy znakowe
    5. Metoda indexOf
    6. Porównywanie łańcuchów znakowych
    7. Formatowanie łańcuchów znakowych
    8. Klasy opakowujące
    9. Argumenty wiersza poleceń
    10. Słownictwo
    11. Ćwiczenia
  11. Rozdział 10. Obiekty
    1. Obiekty klasy Point
    2. Atrybuty
    3. Obiekty jako parametry
    4. Obiekty jako wartości zwracane
    5. Obiekty zmienne
    6. Korzystanie z aliasów
    7. Słowo kluczowe null
    8. Oczyszczanie pamięci
    9. Diagramy klas
    10. Źródła biblioteki języka Java
    11. Słownictwo
    12. Ćwiczenia
  12. Rozdział 11. Klasy
    1. Klasa Time
    2. Konstruktory
    3. Więcej konstruktorów
    4. Gettery i settery
    5. Wyświetlanie obiektów
    6. Metoda toString
    7. Metoda equals
    8. Dodawanie obiektów klasy Time
    9. Czyste metody i modyfikatory
    10. Słownictwo
    11. Ćwiczenia
  13. Rozdział 12. Tablice obiektów
    1. Obiekty klasy Card
    2. Metoda toString klasy Card
    3. Zmienne klasy
    4. Metoda compareTo
    5. Niezmienność obiektów klasy Card
    6. Tablica obiektów klasy Card
    7. Wyszukiwanie sekwencyjne
    8. Wyszukiwanie binarne
    9. Śledzenie wykonania kodu
    10. Wersja rekurencyjna
    11. Słownictwo
    12. Ćwiczenia
  14. Rozdział 13. Obiekty zawierające tablice
    1. Klasa Deck
    2. Tasowanie talii kart
    3. Sortowanie przez wybieranie
    4. Sortowanie przez scalanie
    5. Podtalie
    6. Scalanie talii
    7. Dodanie rekurencji
    8. Słownictwo
    9. Ćwiczenia
  15. Rozdział 14. Obiekty zawierające inne obiekty
    1. Talie i układy
    2. Klasa CardCollection
    3. Dziedziczenie
    4. Rozdawanie kart
    5. Klasa Player
    6. Klasa Eights
    7. Relacje pomiędzy klasami
    8. Słownictwo
    9. Ćwiczenia
  16. Dodatek A Narzędzia programistyczne
    1. Instalacja programu DrJava
    2. Panel Interactions programu DrJava
    3. Interfejs wiersza poleceń
    4. Testowanie w wierszu poleceń
    5. Uruchamianie narzędzia Checkstyle
    6. Śledzenie wykonania za pomocą debuggera
    7. Testowanie przy użyciu narzędzia JUnit
    8. Słownictwo
  17. Dodatek B Grafika 2D w Javie
    1. Tworzenie grafiki
    2. Metody graficzne
    3. Przykładowy rysunek
    4. Słownictwo
    5. Ćwiczenia
  18. Dodatek C Debugowanie
    1. Błędy czasu kompilacji
      1. Kompilator rzuca komunikatami błędów jak szalony
      2. Kompilator zgłasza dziwny komunikat błędu, który nie przestaje się pojawiać
      3. Niezależnie od wszystkiego nie da się skompilować programu
      4. Mimo zastosowania się do sugestii kompilatora kodu nadal nie da się skompilować
    2. Błędy czasu wykonania
      1. Program się zawiesza
        1. Nieskończona pętla
        2. Nieskończona rekurencja
        3. Przepływ wykonania
      2. Program po uruchomieniu zgłasza wyjątek
      3. Instrukcji wyświetlania jest tak wiele, że program zalewa ekran danymi
    3. Błędy logiczne
      1. Program nie działa
      2. Wielkie, złożone wyrażenie nie działa tak, jak powinno
      3. Metoda nie zwraca spodziewanego wyniku
      4. Instrukcja wyświetlania nie działa tak, jak powinna
      5. Brak pomysłów na rozwiązanie: potrzebna jest pomoc
      6. Naprawdę potrzebna jest pomoc
      7. Bug został znaleziony!
      8. O autorach
      9. Kolofon

Product information

  • Title: Myśl w języku Java!
  • Author(s): Allen B. Downey, Chris Mayfield
  • Release date: February 2017
  • Publisher(s): Helion
  • ISBN: 9781098125363