C#
Zacznij programować!
Pierwsze
kroki w programowaniu bywają frustrujące. Wszystko wydaje się jasne i
proste, ale tylko do pierwszych prób skompilowania kodu.
Półki księgarń uginają się pod ciężarem
podręczników programowania w różnych językach,
jednak większość nie ułatwia nauki podstaw, które są
absolutnie niezbędne każdemu koderowi. Spośród licznych
języków programowania C# jest wart szczególnej
uwagi. To dojrzały język, wyjątkowo wszechstronny i prosty w
stosowaniu, dzięki czemu jest ulubionym narzędziem
profesjonalistów. Ponadto z uwagi na inne właściwości
stanowi idealny wybór dla początkujących koderów,
gdyż ułatwia kształtowanie dobrych nawyków.
To
książka dla każdego, kto chce osiągnąć programistyczne oświecenie! Jest
napisana w innowacyjny sposób, przyjaznym i zrozumiałym
językiem, aby każdy adept programowania zdobył wiedzę i umiejętności
potrzebne do pisania dobrego, użytecznego kodu. Dzięki niej nauczysz
się myśleć jak zawodowy programista. Poza przydatnymi informacjami
znajdziesz tu szereg praktycznych ćwiczeń i przykładów kodu.
Nie zabrakło również bardzo istotnych wskazówek
dotyczących potencjalnych problemów i technik ich
rozwiązywania. Tam, gdzie to potrzebne, dokładnie opisano,
które elementy mogą zawieść i na co należy
zwrócić uwagę. Podręcznik został przygotowany tak, aby
programowanie było przyjemne, satysfakcjonujące i wyzwalało pełnię
kreatywności!
Dzięki tej książce:
- przygotujesz wygodne i
bezpłatne środowisko do pracy
- dowiesz się, na czym
dokładnie polega działanie kodu
- zdobędziesz solidne
podstawy programowania i nauczysz się patrzeć z perspektywy programisty
- zrozumiesz i przyswoisz
kluczowe pojęcia, takie jak klasy, interfejsy i metody
- będziesz tworzyć
nowoczesne i wciągające gry
- nauczysz się technik
testowania i debugowania kodu
Wprowadzenie
(xvi)
CZĘŚĆ I.
PODSTAWY PROGRAMOWANIA
1.
Zaczynamy
(2)
Przygotowywanie miejsca do pracy (4)
Pobieranie narzędzi i wersji demonstracyjnych (4)
Korzystanie z narzędzi (5)
Projekty i rozwiązania Visual Studio (6)
Uruchamianie programu za pomocą Visual Studio (7)
Zatrzymywanie programu uruchomionego w Visual Studio (10)
Aplikacja MyProgram (11)
Czego się nauczyłeś? (15)
2.
Co
to jest programowanie? (18)
Jakie cechy charakteryzują programistę? (20)
Programowanie i planowanie imprez (20)
Programowanie i problemy (21)
Programiści i ludzie (22)
Komputery jako procesory danych (23)
Maszyny, komputery i my (23)
Jak działają programy (26)
Programy jako procesory danych (27)
Dane i informacje (35)
Czego się nauczyłeś? (39)
3.
Pisanie
programów (42)
Struktura programu C# (44)
Identyfikacja zasobów (44)
Rozpoczynanie definicji klasy (45)
Deklarowanie metody StartProgram (46)
Ustawianie tytułu i wyświetlanie wiadomości (47)
Dodatkowe Snapy (50)
SpeakString (50)
Tworzenie nowych plików programu (52)
Dodatkowe Snapy (61)
Delay (61)
SetTextColor (61)
SetTitleColor (62)
SetBackgroundColor (63)
Tworzenie własnych kolorów (63)
Czego się nauczyłeś? (66)
4.
Praca z danymi w programie
(68)
Zaczynamy pracę ze zmiennymi (70)
Zmienne i pamięć komputera (71)
Deklarowanie zmiennej (71)
Proste instrukcje przypisania (73)
Używanie zmiennej w programie (74)
Przypisywanie wartości w deklaracji (76)
Dodawanie do siebie łańcuchów znaków (77)
Praca z liczbami (80)
Liczby całkowite i liczby rzeczywiste (80)
Wykonywanie obliczeń (83)
Praca z różnymi typami danych (85)
Konwertowanie liczb na tekst (86)
Liczby całkowite i liczby rzeczywiste w programach (89)
Typy zmiennych i wyrażenia (89)
Precyzja i dokładność (91)
Konwertowanie typów za pomocą rzutowania (92)
Używanie rzutowania na argumentach w wyrażeniu (93)
Typy i błędy (94)
Dodatkowe Snapy (95)
Snapy pogodowe (95)
ThrowDice (96)
Czego się nauczyłeś? (97)
5.
Podejmowanie
decyzji w programie (100)
Boolowski typ danych (102)
Deklaracja zmiennej boolowskiej (102)
Wyrażenia boolowskie (103)
Używanie konstrukcji if oraz operatorów (104)
Operatory relacyjne (106)
Operatory równości (107)
Porównywanie łańcuchów znaków (109)
Tworzenie bloków instrukcji (110)
Zmienne lokalne w blokach kodu (111)
Tworzenie złożonych warunków przy użyciu
operatorów logicznych (113)
Praca z logiką (116)
Dodawanie komentarzy, aby program był bardziej czytelny (117)
Park rozrywki i programy (119)
Odczytywanie liczb (122)
Budowanie logiki przy użyciu warunków if (124)
Kończenie programu (125)
Praca z zasobami programu (127)
Zarządzanie zasobami w Visual Studio (127)
Odtwarzanie dźwięków z zasobów (128)
Wyświetlanie obrazu (129)
Czego się nauczyłeś? (132)
6.
Powtarzanie akcji za pomocą pętli
(134)
Użycie pętli do napisania programu wyboru pizzy (136)
Liczenie wyborów (136)
Wyświetlanie podsumowania (139)
Pobieranie wyborów użytkowników (139)
Dodawanie pętli while (142)
Walidacja danych wejściowych za pomocą pętli while (149)
Korzystanie z programu Visual Studio do śledzenia wykonywania
programów (151)
Odliczanie w pętli w programie do nauki tabliczki mnożenia (157)
Używanie konstrukcji pętli for (160)
Wychodzenie z pętli (163)
Wracanie na początek pętli za pomocą słowa kluczowego continue (165)
Dodatkowe Snapy (168)
Głosowe wprowadzanie danych (168)
Tajne wprowadzanie danych (169)
Czego się nauczyłeś? (170)
7.
Korzystanie
z tablic (172)
Poczęstuj się lodami (174)
Przechowywanie danych w pojedynczych zmiennych (175)
Tworzenie tablicy (176)
Korzystanie z indeksu (177)
Praca z tablicami (179)
Wyświetlanie zawartości tablicy za pomocą pętli for (184)
Wyświetlanie menu użytkownika (186)
Sortowanie tablicy przy użyciu metody sortowania bąbelkowego (187)
Znajdowanie najwyższych i najniższych wartości sprzedaży (194)
Obliczanie całkowitej i średniej sprzedaży (196)
Dokończenie programu (198)
Wiele wymiarów w tablicach (199)
Użycie zagnieżdżonych pętli for do pracy z tablicami dwuwymiarowymi
(201)
Tworzenie testowych wersji programów (203)
Znajdowanie długości wymiaru tablicy (204)
Używanie tablic jako tabel wyszukiwania (206)
Czego się nauczyłeś? (208)
CZĘŚĆ II.
PROGRAMOWANIE ZAAWANSOWANE
8.
Używanie
metod do upraszczania programów (212)
Z czego składa się metoda? (214)
Dodanie metody do klasy (215)
Przekazywanie informacji do metod za pomocą parametrów (217)
Zwracanie wartości z wywołań metod (222)
Tworzenie niewielkiej aplikacji do kontaktów (224)
Wczytywanie danych kontaktowych (227)
Przechowywanie informacji kontaktowych (228)
Korzystanie z lokalnej pamięci systemu Windows (229)
Używanie parametrów referencyjnych do dostarczania
wyników z wywołania metody (231)
Wyświetlanie danych kontaktowych (237)
Dodawanie do metod komentarzy IntelliSense (241)
Czego się nauczyłeś? (243)
9.
Tworzenie
strukturalnych typów danych
(246)
Zapisywanie nut przy użyciu struktury (248)
Tworzenie i deklarowanie struktury (250)
Tworzenie tablic wartości struktury (252)
Struktury i metody (253)
Konstruowanie wartości struktury (256)
Tworzenie rejestratora muzyki (260)
Tworzenie predefiniowanych tablic (262)
Obiekty i obowiązki: niech wartość SongNote odgrywa się sama (263)
Ochrona wartości przechowywanych w strukturze (264)
Tworzenie programu do rysowania za pomocą biblioteki Snaps (267)
Rysowanie kropek na ekranie (268)
Używanie Snapa DrawDot do rysowania kropki na ekranie (269)
Struktura SnapsCoordinate (270)
Używanie Snapa GetDraggedCoordinate do wykrywania pozycji rysowania
(272)
Używanie Snapa SetDrawingColor do ustawiania koloru rysowania (274)
Używanie Snapa ClearGraphics do czyszczenia ekranu (276)
Struktura SnapsColor (277)
Tworzenie typów wyliczeniowych (278)
Podejmowanie decyzji za pomocą konstrukcji switch (280)
Dodatkowe Snapy (282)
GetTappedCoordinate (282)
DrawLine (283)
GetScreenSize (284)
PickImage (285)
Czego się nauczyłeś? (285)
10.
Klasy
i referencje (288)
Tworzenie programu Rejestr czasu pracy (290)
Tworzenie struktury do przechowywania informacji kontaktowych (290)
Używanie referencji this podczas pracy z obiektami (292)
Zarządzanie wieloma kontaktami (294)
Tworzenie danych testowych (296)
Projektowanie interfejsu użytkownika programu Rejestr czasu pracy (297)
Strukturyzacja programu Rejestr czasu pracy (298)
Tworzenie nowego kontaktu (299)
Znajdowanie danych klienta (300)
Dodawanie minut do kontaktu (302)
Wyświetlanie podsumowania (304)
Struktury i klasy (306)
Sortowanie i struktury (306)
Sortowanie i referencje (307)
Typy referencyjne i typy zawierające wartości (308)
Referencje i przypisania (311)
Klasy i konstruktory (316)
Tablice referencji do klas (317)
Od tablic do list (319)
Przechodzenie przez listy danych (321)
Listy i wartość indeksu (322)
Listy struktur (322)
Przechowywanie danych przy użyciu formatu JSON (323)
Biblioteka JSON firmy Newtonsoft (324)
Zapisywanie i pobieranie list (326)
Pobieranie danych przy użyciu formatu XML (329)
Czego się nauczyłeś? (334)
11.
Tworzenie
rozwiązań z wykorzystaniem obiektów
(336)
Tworzenie obiektów zapewniających integralność (338)
Ochrona danych przechowywanych w obiekcie (338)
Zapewnianie metod Get i Set dla danych prywatnych (341)
Zapewnianie metod odzwierciedlających użycie obiektu (343)
Używanie właściwości do zarządzania dostępem do danych (346)
Używanie właściwości do egzekwowania reguł biznesowych (349)
Zarządzanie procesem konstruowania obiektu (351)
Przechwytywanie i obsługa wyjątków (353)
Tworzenie aplikacji przyjaznych dla użytkownika (355)
Zapisywanie rysunków w plikach (356)
SaveGraphicsImageToFileAsPNG (357)
SaveGraphicsImageToLocalStoreAsPNG (358)
LoadGraphicsPNGImageFromLocalStore (358)
Struktura DateTime (359)
Pobieranie bieżącej daty i godziny (360)
Sposób wyświetlania daty i czasu (360)
Użycie daty i czasu do tworzenia nazwy pliku (361)
Tworzenie klasy Drawing (362)
Tworzenie listy rysunków (364)
Tworzenie metod dla obrazkowego dziennika (365)
Czego się nauczyłeś? (368)
CZĘŚĆ III.
TWORZENIE GIER
12.
Czym
jest gra? (374)
Tworzenie gry wideo (376)
Gry i silniki gier (376)
Gry i duszki (378)
Czego się nauczyłeś? (392)
13.
Tworzenie
rozgrywki (394)
Tworzenie paletki kontrolowanej przez gracza (396)
Dodawanie dźwięku do gier (401)
Wyświetlanie tekstu w grze (403)
Tworzenie kompletnej gry (408)
Czego się nauczyłeś? (414)
14.
Gry i hierarchie obiektów
(416)
Gry i obiekty: Space Rockets in Space (418)
Konstruowanie poruszającego się duszka gwiazdy (419)
Umożliwienie nadpisywania metod (427)
Tworzenie pola poruszających się gwiazd (428)
Tworzenie statku kosmicznego na bazie obiektu MovingSprite (430)
Dodawanie kosmitów (432)
Projektowanie hierarchii klas (440)
Czego się nauczyłeś? (443)
15.
Gry
i komponenty oprogramowania
(446)
Gry i obiekty (448)
Tworzenie współpracujących ze sobą obiektów (448)
Obiekty i stan (456)
Interfejsy i komponenty (465)
Czego się nauczyłeś? (471)
CZĘŚĆ IV.
TWORZENIE APLIKACJI (dodatek
na WWW)
16.
Tworzenie
interfejsu użytkownika z wykorzystaniem obiektów (dodatek
na WWW) (476)
17.
Aplikacje i obiekty (dodatek
na WWW) (510)
18.
Zaawansowane
zagadnienia aplikacji (dodatek
na WWW) (532)
472
strony, Format: 20.0x22.5cm, oprawa miękka