Darmowa dostawa od 150,00 zł
Python zorientowany obiektowo. Programowanie gier i graficznych interfejsów użytkownika
Promocja Okazja

Python zorientowany obiektowo. Programowanie gier i graficznych interfejsów użytkownika

  • Rok wydania: 2022 Oprawa: miękka ISBN: 9788328394063 Ilość stron: 432 Format: 16,5 x 23,5 cm
Rozmiar

80,10 zł

brutto / 1szt.
Najniższa cena z 30 dni przed obniżką: 89,00 zł / szt.-10%
Cena regularna: 89,00 zł / szt.-10%
Cena katalogowa:
Możesz kupić za pkt.
z
Produkt dostępny w bardzo dużej ilości
Skontaktuj się z obsługą sklepu, aby oszacować czas przygotowania tego produktu do wysyłki.
Produkt dostępny w bardzo dużej ilości
Wysyłka
14 dni na łatwy zwrot
Sprawdź, w którym sklepie obejrzysz i kupisz od ręki
Python zorientowany obiektowo. Programowanie gier i graficznych interfejsów użytkownika
Python zorientowany obiektowo. Programowanie gier i graficznych interfejsów użytkownika
Bezpieczne zakupy
Odroczone płatności. Kup teraz, zapłać później, jeżeli nie zwrócisz
Kup teraz, zapłać później - 4 kroki
Przy wyborze formy płatności, wybierz PayPo.PayPo - kup teraz, zapłać za 30 dni
PayPo opłaci twój rachunek w sklepie.
Na stronie PayPo sprawdź swoje dane i podaj pesel.
Po otrzymaniu zakupów decydujesz co ci pasuje, a co nie. Możesz zwrócić część albo całość zamówienia - wtedy zmniejszy się też kwota do zapłaty PayPo.
W ciągu 30 dni od zakupu płacisz PayPo za swoje zakupy bez żadnych dodatkowych kosztów. Jeśli chcesz, rozkładasz swoją płatność na raty.
Po zakupie otrzymasz pkt.

Python jest jednym z najczęściej używanych języków programowania. Może służyć do wielu celów, a jego możliwości są nieustannie poszerzane przez wciąż powstające biblioteki i narzędzia. Równocześnie niejeden programista poprzestaje na tworzeniu kodu w sposób proceduralny. Tymczasem w Pythonie jak najbardziej możliwe jest programowanie zorientowane obiektowo, pozwalające organizować kod w poręczne jednostki, których później można wielokrotnie używać. Taki kod jest czytelny, łatwy w rozbudowie i dużo efektywniejszy w działaniu.

Oto intuicyjny przewodnik dla średnio zaawansowanych programistów Pythona, pomyślany tak, by przyswajać zasady programowania zorientowanego obiektowo podczas praktycznych ćwiczeń. Dowiesz się, jakie problemy wiążą się z zastosowaniem podejścia proceduralnego i jak dzięki podejściu obiektowemu pisać kod łatwy w utrzymaniu i rozbudowie. Nauczysz się tworzyć klasy i obiekty w Pythonie i skorzystasz z tych umiejętności, by budować atrakcyjne elementy GUI. Niejako przy okazji poznasz framework pygame i płynnie przejdziesz do pisania interaktywnych gier i aplikacji zawierających widżety GUI, animacje i wiele różnych scen. Opanujesz ponadto takie koncepcje jak maszyna stanów, modalne okna dialogowe czy wzorce projektowe — a w praktyce zastosujesz wzorzec model-widok-kontroler.

W książce między innymi:

  • gruntowne podstawy programowania zorientowanego obiektowo
  • tworzenie obiektów i zarządzanie nimi
  • praktyczne stosowanie hermetyzacji w kodzie
  • zastosowanie polimorfizmu podczas tworzenia interfejsów
  • mechanizm dziedziczenia w praktyce

Python: zorientuj swój kod na obiekty!

O autorze

Irv Kalb jest nauczycielem akademickim. Od ponad trzech dekad stosuje programowanie zorientowane obiektowo w różnych językach programowania. Od lat tworzy oprogramowanie służące celom edukacyjnym, jest również autorem książki Learn to Program with Python 3: A Step-by-Step Guide to Programming, wydanej przez Apress.

Spis treści:

Wprowadzenie

  • Dla kogo jest przeznaczona ta książka?
  • Wersje Pythona i jego instalacja
  • Jak zamierzam wyjaśnić podejście programowania zorientowanego obiektowo?
  • Co znajduje się w książce?
  • Środowisko programistyczne
  • Widżety i przykładowe gry

Część I. Wprowadzenie do programowania zorientowanego obiektowo

1. Proceduralny styl programowania w Pythonie

  • Gra karciana
    • Przedstawienie danych
    • Implementacja
    • Kod wielokrotnego użycia
  • Symulacja konta bankowego
    • Zawsze wymagane operacje i dane
    • Implementacja 1. - pojedyncze konto bez funkcji
    • Implementacja 2. - pojedyncze konto z funkcjami
    • Implementacja 3. - dwa konta
    • Implementacja 4. - wiele kont z użyciem listy
    • Implementacja 5. - lista słowników kont
  • Najczęstsze problemy z implementacją proceduralną
  • Rozwiązanie w stylu programowania zorientowanego obiektowo - pierwszy rzut oka na klasę
  • Podsumowanie

2. Modelowanie obiektów fizycznych za pomocą programowania zorientowanego obiektowo

  • Tworzenie programowych modeli obiektów fizycznych
    • Stan i zachowanie - przykład wyłącznika światła
  • Wprowadzenie do klas i obiektów
  • Klasy, obiekty i tworzenie obiektów
    • Tworzenie klasy w Pythonie
    • Zmienne zakresu i egzemplarza
    • Różnice między funkcją i metodą
    • Tworzenie obiektu na podstawie klasy
    • Wywoływanie metod obiektu
    • Tworzenie wielu egzemplarzy na podstawie tej samej klasy
    • Typy danych Pythona są implementowane jako klasy
    • Definicja obiektu
  • Tworzenie nieco bardziej złożonej klasy
  • Przedstawianie w postaci klas bardziej skomplikowanych obiektów fizycznych
    • Przekazywanie argumentów metodzie
    • Wiele egzemplarzy
    • Inicjalizacja parametrów
  • Klasy w użyciu
  • Programowanie zorientowane obiektowo jako rozwiązanie
  • Podsumowanie

3. Modele obiektów i znaczenie "self"

  • Nowe spojrzenie na klasę DimmerSwitch
  • Pierwszy model wysokiego poziomu
  • Drugi model - znacznie dokładniejszy
  • Co oznacza "self"?
  • Podsumowanie

4. Zarządzanie wieloma obiektami

  • Klasa przedstawiająca konto bankowe
  • Importowanie kodu klasy
  • Tworzenie kodu testowego
    • Tworzenie wielu kont bankowych
    • Lista zawierająca wiele obiektów kont bankowych
    • Wiele obiektów z unikatowymi identyfikatorami
    • Tworzenie interaktywnego menu
  • Tworzenie obiektu zarządzającego obiektami
    • Tworzenie obiektu zarządzającego obiektami
    • Kod główny, który tworzy obiekt zarządzający obiektami
  • Lepsza obsługa błędów za pomocą wyjątków
    • try i except
    • Polecenie raise i wyjątki niestandardowe
  • Używanie wyjątków w programie modelującym bank
    • Klasa Account z obsługą wyjątków
    • Optymalizacja klasy Bank
    • Kod główny zapewniający obsługę wyjątków
  • Wywołanie tej samej metody w liście obiektów
  • Interfejs kontra implementacja
  • Podsumowanie

Część II. Tworzenie graficznego interfejsu użytkownika za pomocą pygame

5. Wprowadzenie do pygame

  • Instalowanie pygame
  • Praca z oknem
    • System współrzędnych okna
    • Kolor piksela
  • Programy sterowane zdarzeniami
  • Używanie pygame
    • Wyświetlenie pustego okna
    • Wyświetlenie obrazu
    • Wykrycie kliknięcia myszą
    • Obsługa klawiatury
    • Tworzenie animacji na podstawie położenia
    • Używanie prostokątów pygame
  • Odtwarzanie dźwięku
    • Odtwarzanie efektów dźwiękowych
    • Odtwarzanie muzyki w tle
  • Rysowanie figur
    • Odwoływanie do figur prostych
  • Podsumowanie

6. Zorientowany obiektowo framework pygame

  • Tworzenie wygaszacza ekranu w postaci piłki za pomocą zorientowanego obiektowo pygame
    • Tworzenie klasy Ball
    • Używanie klasy Ball
    • Tworzenie wielu obiektów typu Ball
    • Tworzenie wielu, wielu obiektów Ball
  • Tworzenie zorientowanego obiektowo przycisku wielokrotnego użycia
    • Tworzenie klasy przycisku
    • Kod główny używający klasy SimpleButton
    • Tworzenie programu z wieloma przyciskami
  • Tworzenie zorientowanego obiektowo komponentu tekstowego wielokrotnego użycia
    • Procedura wyświetlenia tekstu
    • Tworzenie klasy SimpleText
  • Przykładowy program wykorzystujący klasy SimpleText i SimpleButton
  • Interfejs kontra implementacja
  • Wywołanie zwrotne
    • Tworzenie wywołania zwrotnego
    • Używanie wywołania zwrotnego razem z klasą SimpleButton
  • Podsumowanie

7. Widżety GUI frameworka pygame

  • Przekazywanie argumentów funkcji lub metodzie
    • Parametry pozycyjne i w postaci słów kluczowych
    • Informacje dodatkowe o parametrach w postaci słów kluczowych
    • Używanie None jako wartości domyślnej
    • Wybór słowa kluczowego i wartości domyślnej
    • Wartość domyślna w widżecie GUI
  • Pakiet pygwidgets
    • Przygotowania
    • Ogólne podejście projektowe
    • Dodawanie obrazu
    • Dodawanie przycisków, pól wyboru i pól opcji
    • Tekstowe dane wejściowe i wyjściowe
    • Inne klasy pygwidgets
    • Przykładowy program pygwidgets
  • Waga spójnego API
  • Podsumowanie

Część III. Hermetyzacja, polimorfizm i dziedziczenie

8. Hermetyzacja

  • Hermetyzacja i funkcje
  • Hermetyzacja za pomocą obiektów
    • Obiekt jest właścicielem danych
  • Interpretacje hermetyzacji
    • Dostęp bezpośredni i dlaczego należy go unikać
    • Ścisła interpretacja z użyciem metod typu getter i setter
    • Bezpieczny dostęp bezpośredni
  • Bardziej prywatne zmienne egzemplarza
    • Niejawnie prywatna zmienna egzemplarza
    • Nieco bardziej jawnie prywatna zmienna egzemplarza
  • Dekoratory i @property
  • Hermetyzacja w klasach pygwidgets
  • Prawdziwa historia
  • Abstrakcja
  • Podsumowanie

9. Polimorfizm

  • Wysyłanie wiadomości do rzeczywistych obiektów
  • Klasyczny przykład polimorfizmu w programowaniu
  • Przykład z wykorzystaniem kształtów we frameworku pygame
    • Klasa prostokąta
    • Klasy Circle i Triangle
    • Program główny do rysowania figur
    • Rozszerzenie wzorca
  • Pakiet pygwidgets ujawnia polimorfizm
  • Polimorfizm operatorów
    • Metody magiczne
    • Metody magiczne operatora porównywania
    • Klasa Rectangle z metodami magicznymi
    • Program główny używający metod magicznych
    • Metody magiczne operatora matematycznego
    • Przykład wektora
  • Tworzenie ciągu tekstowego przedstawiającego wartości obiektu
  • Klasa Fraction i metody magiczne
  • Podsumowanie

10. Dziedziczenie

  • Dziedziczenie w programowaniu zorientowanym obiektowo
  • Implementacja dziedziczenia
  • Przykład menedżera i pracownika
    • Klasa bazowa - Employee
    • Podklasa - Manager
    • Kod testujący obie klasy
  • Podklasa z perspektywy klienta
  • Rzeczywiste przykłady dziedziczenia
    • Klasa InputNumber
    • Klasa DisplayMoney
    • Przykład użycia
  • Wiele klas dziedziczących po tej samej klasie bazowej
  • Klasy abstrakcyjne i metody
  • Jak moduł pygwidgets używa dziedziczenia?
  • Hierarchia klas
  • Trudności z użyciem dziedziczenia
  • Podsumowanie

11. Zarządzanie pamięcią używaną przez obiekty

  • Cykl życiowy obiektu
    • Licznik odwołań
    • Mechanizm usuwania nieużytków
  • Zmienne klasy
    • Stała zmiennej klasy
    • Zmienne klasy do zliczania
  • Połączenie wszystkiego w całość - prosta gra z balonami
    • Moduł stałych
    • Kod programu głównego
    • Menedżer balonów
    • Klasy Balloon i ich obiekty
  • Zarządzanie pamięcią - sloty
  • Podsumowanie

Część IV. Programowanie zorientowane obiektowo podczas tworzenia gier

12. Gry karciane

  • Klasa Card
  • Klasa Deck
  • Gra Większa czy mniejsza
    • Program główny
    • Obiekt Game
  • Testowanie z użyciem zmiennej __name__
  • Inne gry karciane
    • Talia do gry w blackjacka
    • Gry z wykorzystaniem nietypowych talii kart
  • Podsumowanie

13. Zegary

  • Program przedstawiający działanie zegara
  • Trzy podejścia w zakresie implementacji zegara
    • Zliczanie klatek
    • Zdarzenie zegara
    • Zdefiniowanie zegara przez sprawdzanie upływającego czasu
  • Instalowanie modułu pyghelpers
  • Klasa Timer
  • Wyświetlanie czasu
    • Klasa CountUpTimer
    • CountDownTimer
  • Podsumowanie

14. Animacja

  • Opracowywanie klas animacji
    • Klasa SimpleAnimation
    • Klasa SimpleSpriteSheetAnimation
    • Połączenie dwóch klas
  • Klasy animacji w pygwidgets
    • Klasa Animation
    • Klasa SpriteSheetAnimation
    • Wspólna klasa bazowa - PygAnimation
    • Przykładowy program pokazujący animację
  • Podsumowanie

15. Sceny

  • Podejście z użyciem maszyny stanów
  • Przykładowy program używający maszyny stanów
  • Menedżer scen zarządzający wieloma scenami
  • Przykładowy program używający menedżera scen
    • Program główny
    • Tworzenie scen
    • Typowa scena
  • Gra Kamień, papier, nożyce zbudowana z użyciem scen
  • Komunikacja między scenami
    • Żądanie informacji ze sceny docelowej
    • Przekazywanie informacji do sceny docelowej
    • Przekazywanie informacji na wszystkie sceny
    • Testowanie komunikacji między scenami
  • Implementacja menedżera scen
    • Metoda run()
    • Metody główne
    • Komunikacja między scenami
  • Podsumowanie

16. Pełna gra - Dodger

  • Modalne okna dialogowe
    • Okno dialogowe typu Tak/Nie
    • Okno dialogowe typu Odpowiedź
  • Tworzenie pełnej gry - Dodger
    • Ogólny opis gry
    • Implementacja
    • Rozbudowa gry
  • Podsumowanie

17. Wzorce projektowe i podsumowanie

  • Model-widok-kontroler
    • Przykład - sposób wyświetlania pliku
    • Przykład - wyświetlanie danych statystycznych
    • Zalety wzorca projektowego MVC
  • Podsumowanie
Marka
Autor
Irv Kalb
ISBN
9788328394063
Potrzebujesz pomocy? Masz pytania?Zadaj pytanie a my odpowiemy niezwłocznie, najciekawsze pytania i odpowiedzi publikując dla innych.
Zapytaj o produkt
Jeżeli powyższy opis jest dla Ciebie niewystarczający, prześlij nam swoje pytanie odnośnie tego produktu. Postaramy się odpowiedzieć tak szybko jak tylko będzie to możliwe. Dane są przetwarzane zgodnie z polityką prywatności. Przesyłając je, akceptujesz jej postanowienia.
Napisz swoją opinię
Twoja ocena:
5/5
Dodaj własne zdjęcie produktu:
pixel