Programowanie strukturalne i obiektowe. Podręcznik do nauki zawodu technik informatyk. Wydanie II poprawione

Programowanie strukturalne i obiektowe. Podręcznik do nauki zawodu technik informatyk. Wydanie II poprawione

Tomasz Rudny
  • Liczba stron 392
  • Data wydania 2012-11-15
  • Oprawa miękka
  • ISBN 978-83-246-3385-2
  • Format 168x237
Cena książki: 49,00 zł
Zamówienie indywidualne: Kup na Helion.pl >
  • Opis książki
  • Materiały
  • Spis treści
  • Przykładowy rozdział
  • Technik informatyk nie jest zwykłym użytkownikiem komputerów. Jeśli uczeń wybiera szkołę o takim profilu, z czasem staje się prawdziwym komputerowym ekspertem.

    Programowanie komputerów osobistych stanowi esencję informatyki. Jest twórcze i wymiernie wpływa na działanie sprzętu, na którym pracujemy - w tym na jego użyteczność oraz efektywność. Bez odpowiedniego oprogramowania niemożliwe jest funkcjonowanie stron internetowych, programów biurowych i bankowych czy nawet sprzętu AGD. Umiejętność programowania w dzisiejszym świecie jest wręcz nieodzowna w zawodzie inżyniera, technika, webmastera czy naukowca.

    "Programowanie strukturalne i obiektowe. Podręcznik do nauki zawodu technik informatyk. Wydanie II" w przystępny sposób wyjaśnia wszystkie niezbędne terminy, tak aby nawet osoba, która nigdy nie miała styczności z programowaniem, mogła je bez przeszkód zrozumieć. Podręcznik został podzielony na części stanowiące trzy oddzielne kursy programowania: w językach Pascal, C++ oraz Java. W czasie realizacji materiału uczniowie poznają najważniejsze elementy tych języków. Każdą część zamyka rozbudowany i ciekawy przykład podsumowujący.

    Do książki została dołączona płyta CD zawierająca ważne i interesujące informacje dodatkowe, które ze względów praktycznych nie mogły ukazać się w wersji drukowanej. Znajduje się tam kurs wprowadzający do programowania w Windows za pomocą WinAPI, omówienie zagadnień pracy grupowej, projektowania oprogramowania i optymalizacji kodu, a także wybrane tematy uzupełniające, m.in. wiadomości dotyczące reprezentacji pozycyjnej liczb.

  • Materiały dostępne tylko dla zalogowanych użytkowników z wypełnioną deklaracją.

  • Wstęp (13)
     

    CZĘŚĆ I Wstęp do programowania
     

    Rozdział 1. Co to jest algorytm? (17)

    • 1.1. Wstęp (17)
    • 1.2. Definicja algorytmu (18)
    • 1.3. Algorytmy w szkole i w życiu (19)
    • 1.4. Algorytmy a programy komputerowe (22)
    • 1.5. Zapis algorytmów (22)

    Rozdział 2. Przykłady algorytmów (28)

    • 2.1. Sortowanie liczb (28)
    • 2.2. Wyszukiwanie (31)
    • 2.3. Schemat Hornera (32)
    • 2.4. Znajdowanie miejsc zerowych funkcji (34)

    Rozdział 3. Podstawowe pojęcia (36)

    • 3.1. Jak komputery wykonują obliczenia? (36)
    • 3.2. Język programowania (39)
    • 3.3. Kompilacja i konsolidacja (40)
    • 3.4. Biblioteki (42)

    Rozdział 4. Narzędzia programistyczne (44)

    • 4.1. Edytor (44)
    • 4.2. Debuger (46)
    • 4.3. Zintegrowane środowisko programistyczne (IDE) (47)

    CZĘŚĆ II Programowanie strukturalne w Pascalu
     

    Rozdział 5. Środowisko języka Pascal (51)

    • 5.1. Turbo Pascal (52)
    • 5.2. Dev-Pascal i Hugo - alternatywne IDE dla systemu Windows (53)
    • 5.3. Free Pascal Compiler (55)
    • 5.4. Programowanie w Pascalu w systemie Linux (56)

    Rozdział 6. Podstawy programowania w Pascalu (60)

    • 6.1. Najprostszy program w Pascalu (60)
    • 6.2. Struktura programu w Pascalu (62)
    • 6.3. Słowa kluczowe języka (64)
    • 6.4. Komunikaty o błędach (65)

    Rozdział 7. Typy danych i zmienne (68)

    • 7.1. Pojęcie typu danych (68)
    • 7.2. Podstawowe typy danych (69)
    • 7.3. Zmienne (73)
    • 7.4. Deklaracje zmiennych i przypisanie wartości (74)

    Rozdział 8. Operatory i wyrażenia (77)

    • 8.1. Operatory arytmetyczne (77)
    • 8.2. Operatory porównania i operatory logiczne (80)

    Rozdział 9. Instrukcje warunkowe i iteracyjne (84)

    • 9.1. Podstawowa instrukcja warunkowa (84)
    • 9.2. Instrukcja wyboru (89)
    • 9.3. Instrukcja iteracyjna for (91)
    • 9.4. Inne instrukcje iteracyjne (94)

    Rozdział 10. Procedury i funkcje (97)

    • 10.1. Procedury i funkcje standardowe (98)
    • 10.2. Procedury i funkcje (100)
      • 10.2.1. Definicja procedury (101)
      • 10.2.2. Definicja funkcji (104)
    • 10.3. Przekazywanie parametrów i odbieranie wyników (106)
    • 10.4. Wzorcowa struktura programu (108)

    Rozdział 11. Tablice (112)

    • 11.1. Definicja tablicy w Pascalu (112)
    • 11.2. Wykorzystanie tablic w programach (113)
    • 11.3. Tablice wielowymiarowe (118)

    Rozdział 12. Rekurencja (120)

    • 12.1. Co to jest rekurencja? (120)
    • 12.2. Kiedy korzystać z rekurencji? (123)
    • 12.3. Wady rekurencji (127)

    Rozdział 13. Typy strukturalne (130)

    • 13.1. Definiowanie nowych typów danych w Pascalu (130)
    • 13.2. Rekordy (131)
    • 13.3. Tablice jako parametry podprogramów (133)

    Rozdział 14. Operacje na plikach (135)

    • 14.1. Dostęp do plików (135)
    • 14.2. Swobodny dostęp do pliku (140)

    Rozdział 15. Elementy zaawansowanego programowania w Pascalu (144)

    • 15.1. Dyrektywy kompilatora (144)
    • 15.2. Wbudowany asembler (147)
    • 15.3. Optymalizacja programów (148)
    • 15.4. Grafika BGI w Pascalu (149)
    • 15.5. Dynamiczny przydział pamięci (152)

    Rozdział 16. Przykład podsumowujący: baza danych (157)

    • 16.1. Omówienie programu (157)
    • 16.2. Kod programu (158)

    CZĘŚĆ III Programowanie obiektowe w C++
     

    Rozdział 17. Środowisko języka C++ (167)

    • 17.1. Turbo C++ (167)
    • 17.2. Dev C++ (168)
    • 17.3. Microsoft Visual Studio (169)
    • 17.4. Tworzenie programów w C++ dla systemu Linux (171)

    Rozdział 18. Składnia języka C++ (173)

    • 18.1. Słowa kluczowe (173)
    • 18.2. Typy danych (174)
    • 18.3. Operatory i wyrażenia (175)
    • 18.4. Instrukcje (178)
    • 18.5. Funkcje (181)
    • 18.6. Struktura programu (182)

    Rozdział 19. Podobieństwa i różnice pomiędzy Pascalem i C++ (186)

    • 19.1. Struktura programu (186)
    • 19.2. Specyfika instrukcji warunkowych (187)
    • 19.3. Pułapki pętli w C++ (190)
    • 19.4. Znaki specjalne (193)

    Rozdział 20. Tablice i wskaźniki (195)

    • 20.1. Tablice w języku C++ (195)
    • 20.2. Tablice wielowymiarowe (200)
    • 20.3. Tablice znaków (char) jako typ napisowy w C++ (202)
    • 20.4. Wskaźniki w C++ (204)
    • 20.5. Równoważność pomiędzy wskaźnikiem a tablicą (207)

    Rozdział 21. Struktury i unie (210)

    • 21.1. Struktury (210)
    • 21.2. Unie (213)
    • 21.3. Funkcje wewnętrzne struktur (214)

    Rozdział 22. Operacje wejścia-wyjścia w C++ (217)

    • 22.1. Strumienie wejścia-wyjścia (217)
    • 22.2. Funkcje wejścia-wyjścia w stylu C (220)
    • 22.3. Funkcje operujące na plikach (223)

    Rozdział 23. Dynamiczne struktury danych (227)

    • 23.1. Tablice dynamiczne (227)
    • 23.2. Implementacja listy jednokierunkowej w C++ (229)
    • 23.3. Drzewa binarne (231)
    • 23.4. Inne struktury dynamiczne (235)

    Rozdział 24. Wprowadzenie do programowania obiektowego (237)

    • 24.1. Obiektowe postrzeganie świata (237)
    • 24.2. Klasy i obiekty (239)
    • 24.3. Przykłady modelowania obiektowego (240)
    • 24.4. Hermetyzacja danych (242)
    • 24.5. Konstruktory i destruktory (245)
    • 24.6. Klasy wewnętrzne (zagnieżdżone) (249)

    Rozdział 25. Przeciążanie funkcji i operatorów (252)

    • 25.1. Przeciążanie funkcji (252)
    • 25.2. Domyślne wartości parametrów (255)
    • 25.3. Przeciążanie operatorów (257)

    Rozdział 26. Funkcje i klasy zaprzyjaźnione (261)

    • 26.1. Jak definiować niektóre operatory? (261)
    • 26.2. Funkcje zaprzyjaźnione (262)
    • 26.3. Klasy zaprzyjaźnione (265)

    Rozdział 27. Dziedziczenie i polimorfizm (269)

    • 27.1. Dziedziczenie proste (269)
    • 27.2. Dziedziczenie wielobazowe (273)
    • 27.3. Polimorfizm (274)

    Rozdział 28. Przykład podsumowujący: sortowanie plików (279)

    • 28.1. Omówienie programu (279)
    • 28.2. Kod programu (281)

    CZĘŚĆ IV Programowanie w języku Java
     

    Rozdział 29. Podstawowe pojęcia (289)

    • 29.1. Koncepcja języka Java (289)
    • 29.2. Tworzenie i uruchamianie programów w Javie (291)
    • 29.3. Automatyczna obsługa pamięci w Javie (295)

    Rozdział 30. Java a C++ - podobieństwa i różnice (296)

    • 30.1. Java jako język obiektowy (296)
    • 30.2. Obiekty, referencje, porównywanie obiektów (298)
    • 30.3. Standardowe typy danych (301)
    • 30.4. Tablice (302)
    • 30.5. Strumienie wejścia-wyjścia (303)

    Rozdział 31. Definicja i wykorzystanie klas w Javie (306)

    • 31.1. Definicja klasy w Javie (306)
    • 31.2. Kolekcje i ich zastosowanie (308)
    • 31.3. Wybrane klasy z biblioteki standardowej (310)

    Rozdział 32. Dziedziczenie w Javie. Interfejsy (314)

    • 32.1. Dziedziczenie proste (314)
    • 32.2. Polimorfizm w Javie (317)
    • 32.3. Interfejsy (319)

    Rozdział 33. Mechanizm wyjątków (323)

    • 33.1. Tradycyjna obsługa błędów (323)
    • 33.2. Wyjątki i ich obsługa (326)
    • 33.3. Hierarchia wyjątków (329)

    Rozdział 34. Tworzenie graficznego interfejsu użytkownika (331)

    • 34.1. Podstawy tworzenia aplikacji okienkowych w Javie (331)
    • 34.2. Dostępne kontrolki (334)
    • 34.3. Układ elementów w oknie (336)
    • 34.4. Obsługa zdarzeń (340)
    • 34.5. Rysowanie w oknie (344)

    Rozdział 35. Komponenty lekkie i ciężkie (347)

    • 35.1. Tworzenie aplikacji okienkowych w Swingu (347)
    • 35.2. Modyfikacja wyglądu okien i kontrolek (350)

    Rozdział 36. Aplety (352)

    • 36.1. Co to jest aplet Javy? (352)
    • 36.2. Jak pisać aplety? (354)

    Rozdział 37. Wstęp do programowania współbieżnego (360)

    • 37.1. Równoległe wykonanie programu (361)
    • 37.2. Tworzenie wątków (362)
    • 37.3. Potencjalne zagrożenia (363)

    Rozdział 38. Synchronizacja wątków (366)

    • 38.1. Metody synchronizowane (366)
    • 38.2. Synchronizowane bloki kodu (367)
    • 38.3. Komunikacja pomiędzy wątkami (369)

    Rozdział 39. Komunikacja sieciowa (373)

    • 39.1. Podstawy programowania sieciowego (373)
    • 39.2. Prosty serwer (375)
    • 39.3. Prosty klient (378)

    Rozdział 40. Przykład podsumowujący: gra sieciowa (381)

    • 40.1. Omówienie programu (381)
    • 40.2. Kod programu (383)

    Bibliografia (389)

    Skorowidz (390)


     

    ROZDZIAŁY, KTÓRE ZNAJDUJĄ SIĘ NA PŁYCIE CD:
     

    CZĘŚĆ V Programowanie w środowisku graficznym
     

    Rozdział 41. Elementy składowe interfejsu użytkownika (395)

    • 41.1. Środowisko Dev-C++ (396)
    • 41.2. Dokumentacja MSDN (398)
    • 41.3. Okno i jego elementy składowe (399)
    • 41.4. Tworzenie nowego okna (402)

    Rozdział 42. Projektowanie aplikacji graficznej (406)

    • 42.1. Dodawanie kontrolek do okna aplikacji (406)
    • 42.2. Rodzaje kontrolek w WinAPI (409)
    • 42.3. Przykładowy projekt okna (412)

    Rozdział 43. Komunikaty i zdarzenia (416)

    • 43.1. Wstęp do programowania zdarzeniowego (416)
    • 43.2. Komunikaty i ich obsługa (417)
    • 43.3. Przykłady programów z obsługą komunikatów (419)

    Rozdział 44. Rysowanie na ekranie. Tworzenie animacji (422)

    • 44.1. Rysowanie na ekranie (422)
    • 44.2. Biblioteka graficzna WinAPI (428)
    • 44.3. Tworzenie animacji (430)

    Rozdział 45. Wykorzystanie fontów (434)

    • 45.1. Wypisywanie tekstów w oknie (434)
    • 45.2. Rodzaje fontów (436)
    • 45.3. Zmiana fontu tekstu (437)

    Rozdział 46. Tworzenie aplikacji SDI (441)

    • 46.1. Elementy składowe aplikacji SDI (441)
    • 46.2. Dodawanie menu użytkownika (442)
    • 46.3. Obsługa komunikatów menu (443)

    Rozdział 47. Tworzenie aplikacji MDI (449)

    • 47.1. Aplikacje MDI - podstawowe pojęcia (449)
    • 47.2. Zasady tworzenia aplikacji MDI (450)
    • 47.3. Przykładowa aplikacja MDI (451)

    Rozdział 48. Systemowe okna dialogowe (460)

    • 48.1. Okno wyboru pliku (460)
    • 48.2. Okno wyboru koloru (465)
    • 48.3. Okno wyboru fontu (466)

    Rozdział 49. Operacje na plikach (468)

    • 49.1. Zapis danych do pliku (468)
    • 49.2. Odczyt danych z pliku (472)

    Rozdział 50. Przykład podsumowujący: baza danych z interfejsem graficznym (474)

    • 50.1. Omówienie programu (475)
    • 50.2. Kod programu (476)

    CZĘŚĆ VI Profesjonalne tworzenie oprogramowania
     

    Rozdział 51. Projektowanie oprogramowania (487)

    • 51.1. Co to jest projekt informatyczny? (487)
    • 51.2. Zalecana zawartość dokumentacji projektowej (488)
    • 51.3. Modelowanie obiektowe (489)

    Rozdział 52. Optymalizacja kodu (492)

    • 52.1. Efektywne korzystanie z instrukcji iteracyjnych (492)
    • 52.2. Optymalny zapis instrukcji warunkowych (493)
    • 52.3. Obliczenia (494)

    Rozdział 53. Testowanie oprogramowania (496)

    • 53.1. Rola testowania (496)
    • 53.2. Zasady przeprowadzania testów (497)
    • 53.3. Testowanie w Eclipse za pomocą JUnit (498)

    Rozdział 54. Tworzenie dokumentacji programu (500)

    • 54.1. Treść dokumentacji technicznej (500)
    • 54.2. Narzędzia do automatycznego tworzenia dokumentacji (502)

    Rozdział 55. Narzędzia pracy grupowej (505)

    • 55.1. Systemy wersjonowania kodu (505)
    • 55.2. Instalacja wtyczki Subclipse (506)
    • 55.3. Podstawowa praca z repozytorium SVN (508)
    • 55.4. Rozwiązywanie konfliktów (510)

    Dodatek A Algorytmy i systemy liczbowe (513)

    • A.1. Eliminacja Gaussa (513)
    • A.2. Systemy pozycyjne (515)
    • A.3. Funkcja printf (517)

    Dodatek B Programowanie w języku Java (521)

    • B.1. Zastosowanie zarządcy rozkładu NullLayout (521)
    • B.2. Jak działa mechanizm prawidłowego zamykania okien w Swingu? (526)
    • B.3. Tworzenie wątków poprzez rozszerzanie klasy Thread (528)
    • B.4. Elementy pakietu Swing (529)
    • B.5. Czy Java jest wolniejsza niż języki kompilowane do kodu maszynowego? (533)

Tytuły powiązane