Facebook - konwersja
Pobierz fragment

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

Wydawnictwo:
Data wydania:
29 listopada 2022
Format ebooka:
PDF
Format PDF
czytaj
na laptopie
czytaj
na tablecie
Format e-booków, który możesz odczytywać na tablecie oraz laptopie. Pliki PDF są odczytywane również przez czytniki i smartfony, jednakze względu na komfort czytania i brak możliwości skalowania czcionki, czytanie plików PDF na tych urządzeniach może być męczące dla oczu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, EPUB
Format EPUB
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najpopularniejszych formatów e-booków na świecie. Niezwykle wygodny i przyjazny czytelnikom - w przeciwieństwie do formatu PDF umożliwia skalowanie czcionki, dzięki czemu możliwe jest dopasowanie jej wielkości do kroju i rozmiarów ekranu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, MOBI
Format MOBI
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najczęściej wybieranych formatów wśród czytelników e-booków. Możesz go odczytać na czytniku Kindle oraz na smartfonach i tabletach po zainstalowaniu specjalnej aplikacji. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
(3w1)
Multiformat
E-booki sprzedawane w księgarni Virtualo.pl dostępne są w opcji multiformatu - kupujesz treść, nie format. Po dodaniu e-booka do koszyka i dokonaniu płatności, e-book pojawi się na Twoim koncie w Mojej Bibliotece we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu przy okładce. Uwaga: audiobooki nie są objęte opcją multiformatu.
czytaj
na laptopie
Pliki PDF zabezpieczone watermarkiem możesz odczytać na dowolnym laptopie po zainstalowaniu czytnika dokumentów PDF. Najpowszechniejszym programem, który umożliwi odczytanie pliku PDF na laptopie, jest Adobe Reader. W zależności od potrzeb, możesz zainstalować również inny program - e-booki PDF pod względem sposobu odczytywania nie różnią niczym od powszechnie stosowanych dokumentów PDF, które odczytujemy każdego dnia.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na tablecie
Aby odczytywać e-booki na swoim tablecie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. Bluefire dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na czytniku
Czytanie na e-czytniku z ekranem e-ink jest bardzo wygodne i nie męczy wzroku. Pliki przystosowane do odczytywania na czytnikach to przede wszystkim EPUB (ten format możesz odczytać m.in. na czytnikach PocketBook) i MOBI (ten fromat możesz odczytać m.in. na czytnikach Kindle).
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na smartfonie
Aby odczytywać e-booki na swoim smartfonie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. iBooks dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
Pobierz fragment
89,00

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

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!

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
Kategoria: Programowanie
Zabezpieczenie: Watermark
Watermark
Watermarkowanie polega na znakowaniu plików wewnątrz treści, dzięki czemu możliwe jest rozpoznanie unikatowej licencji transakcyjnej Użytkownika. E-książki zabezpieczone watermarkiem można odczytywać na wszystkich urządzeniach odtwarzających wybrany format (czytniki, tablety, smartfony). Nie ma również ograniczeń liczby licencji oraz istnieje możliwość swobodnego przenoszenia plików między urządzeniami. Pliki z watermarkiem są kompatybilne z popularnymi programami do odczytywania ebooków, jak np. Calibre oraz aplikacjami na urządzenia mobilne na takie platformy jak iOS oraz Android.
ISBN: 978-83-283-9407-0
Rozmiar pliku: 14 MB

BESTSELLERY

Kategorie: