Spilprogrammering i Python - kursus 18.000 rub. fra Coddy School of Programming for Children, træning 3 moduler (måneder)
Miscellanea / / December 02, 2023
Varighed: fra 3 moduler (måneder), fra 24 timer*.
Format: individuelle og gruppelektioner, offline og online (realtid).
Antal børn: fra 1 til 8.
fra 750 rub./time i en online gruppe,
fra 850 rub./time i en offline gruppe,
fra 1050 rub./time individuelt online,
fra 1980 rub./time individuelt offline.
GameDev er ikke bare et moderigtigt tag skabt til at beskrive anvendelsen af programmeringssprog. Spiludvikling er en dyb og rig verden, hvor teenagere lige er begyndt at lære kodning og at skabe deres første spil, såvel som titaner i industrien, og tjene millioner i forretning, der ikke kun bringer indkomst, men også æstetisk fornøjelse. Oprindelsen til mange store spilstartups er netop i amatørspilprogrammering og grafik.
Et af de mest bekvemme og populære udviklingssprog er Python. Hurtigheden og letheden ved at oprette programmer med den har givet den et stærkt ry på en række forskellige områder. Python driver YouTubes videodelingstjeneste og lagerklient- og serversoftware til Dropbox, Intel, Hewlett-Packard og IBM bruge Python til hardwaretest, Industrial Light & Magic, Pixar og andre virksomheder bruger Python i produktionen af animationsfilm. Pythons rolle i Netflix og Yelps softwareinfrastrukturer er høj, NASA bruger Python til at løse videnskabelige problemer programmering, og selv National Security Agency bruger Python til at kryptere og analysere efterretningsoplysninger. amerikansk sikkerhed.
Standardimplementeringen af Python-sproget er skrevet i C, kompilerer og kører på næsten enhver platform, der bruges i øjeblikket: fra computere og spillekonsoller til digitale assistenter og de største supercomputere, hvilket gør Python til et af de mest relevante sprog på tværs af platforme programmering.
Spilprogrammering og skabelse af multimedieindhold er nogle af Pythons stærke sider. Udover mange projekter fra uafhængige udviklere, blev kultspil også skrevet i Python. Den storladne rumsimulator EVE Online fra det islandske firma CCP Games, som er et massivt multiplayer online rollespil, gør således i vid udstrækning brug af Python. I den lige så legendariske Civilization IV er brugerdefinerede scenariehændelser skrevet udelukkende i Python.
Ungdom fra 11 år er det bedste tidspunkt at begynde at programmere i Python. Spiludvikling, som et læringsværktøj, er det mest bekvemme format til sprogtilegnelse. Under undervisningen har kursister:
- Lær det grundlæggende i det populære Python-sprog;
- lære at tegne og animere det, der tegnes ved hjælp af kode;
- skrive deres egne spil.
Uddannelse:
Moscow Polytechnic University, speciale "Informatik og datalogi".
Erfaring:
Flydende i C\C++, Java, Python, PHP, JavaScript, SQL. Jeg var involveret i skabelsen af Android applikationer i Java, cross-platform applikationer i C\C++, bots til forskellige instant messengers i Python, samt diverse webtjenester ved hjælp af HTML/CSS/JS/PHP.
Interesser:
Fra en tidlig alder har han programmeret forskellige applikationer fra CLI til MVP/MVVC-projekter. Deltog i mobile hackathons. Deltog i sager, der involverede integration med tredjeparts lukkede API'er. Arbejdede også med 3d, især Autodesk Maya, Inventor, 3ds Max, Fusion360 (der er nogle små udviklinger med at vise objekter på mobile enheder). Udover programmering er han interesseret i motorsport, især drifting. Diskret, forstår at skabe interesse for arbejdet, ansvarlig og effektiv.
Kursuslærer:
"Programmering i JavaScript", "Programmering af spil i Python", "Webprogrammering", "Bots i Python", "Programmering i Python3", "Udvikling af webapplikationer til erhvervslivet"
Kursuslærer:
"Spilprogrammering i Python", "Programmering i JavaScript", "Etisk Hacker", "Olympiadeprogrammering", "Programmering i Python3", "Cybersikkerhed"
1. modul
Den første dag
Introduktion til Python
− Hvad er en variabel?
− Input og output funktioner
− Datatyper i Python
− Løsning af problemer om det undersøgte emne
Resultat af lektionen: eleverne vil lære, hvad en variabel er, print() og input() funktionerne, stifte bekendtskab med datatyper i Python og lære at løse problemer om det dækkede emne.
Lektier: studere teoretisk materiale, løse praktiske problemer om emnet ”Input- og outputfunktioner. Datatyper".
Anden dag
Operatører i Python
− Aritmetiske operatorer i Python
− Sammenligningsoperatører
− Logiske operatorer
− Problemløsning
Resultat af lektionen: studerende vil studere aritmetiske, logiske operatorer samt sammenligningsoperatorer og lære at løse problemer om emnet "Operatorer i Python."
Lektier: studere teoretisk materiale, løse flere praktiske problemer om emnet "Operatorer i Python".
Dag tre
Betinget operatør
− Hvad er en betinget operatør?
− Enkel forgrening
− Multiple forgrening
− Løsning af problemer om emnet "Betinget operatør"
Resultat af lektionen: Emnet "Betinget erklæring" er blevet dækket, definitionerne af betinget erklæring, forgrening, kodeblok er blevet undersøgt, problemer er løst.
Lektier: gentage det undersøgte materiale, forberede sig til testen, udføre praktiske opgaver om det dækkede emne.
Dag fire
mens loop
− Mundtlig undersøgelse af det undersøgte materiale om emnet "Betinget operatør"
− Introduktion til while-løkken
− Oprettelse af konsolspillet "Guess the Number"
− Opsummering af det første modul
Resultat af lektionen: Der blev opnået praktiske færdigheder i at arbejde med while-løkken, og der blev gennemført videntest om de dækkede emner.
Lektier: gentag det undersøgte materiale, læs teoretisk materiale, udfør praktiske opgaver om emnet "While Loop".
2. modul
Den første dag
For loop og iteration over sekvenser
− Test af viden om materialet i det første modul
− Hvad er en for loop?
− Range()-funktionen og opregning af numeriske sekvenser
− Løsning af problemer om det undersøgte emne
Resultat af lektionen: eleverne vil lære, hvad en sekvens er, range()-funktionen, len()-funktionen og lære at løse problemer om emnet "Sequence Enumeration."
Lektier: studere teoretisk materiale om emnet "For Loop", løse praktiske problemer om det undersøgte emne.
Anden dag
Lister i Python
− Definition af begrebet "Liste"
− Listeindeksering
− Gentag gennem lister efter indeks og værdier
− Løsning af problemer om emnet "Lister i Python"
Resultat af lektionen: studerende vil stifte bekendtskab med en ny datatype, lære om sekvensindeksering og lære at arbejde med lister.
Lektier: studere teoretisk materiale, gennemføre praktiske opgaver om emnet "Lister i Python".
Dag tre
Liste metoder i Python
− Gentagelse af materiale fra forrige lektion
− Introduktion til grundlæggende listemetoder
− Løsning af problemer om emnet "List metoder i Python"
Resultat af lektionen: Eleverne vil lære listemetoder og lære at arbejde med sekvenser af data i Python.
Lektier: gentage det undersøgte materiale, forberede sig til testen, udføre praktiske opgaver om det dækkede emne.
Dag fire
Funktioner i Python
− Funktionserklæring, def nøgleord, funktionstekst
− At skrive dine egne funktioner til at løse problemer
− Opsummering af det andet modul
− Analyse af problematiske opgaver fra de undersøgte emner
Resultat af lektionen: Eleverne lærer at lave deres egne funktioner, lære at opdele et program i logiske blokke og skrive ren og effektiv kode.
Lektier: gentag det studerede materiale, forbered dig til en test, læs teoretisk materiale, lav praktiske opgaver om emnet "Funktioner i Python"
3. modul
Den første dag
Introduktion til Pygame-biblioteket
− Test af viden om materialet i andet modul
− Kom godt i gang med pygame
− Opret en skabelon til fremtidige spil
− Tegning af grafiske primitiver
Resultat af lektionen: Eleverne vil stifte bekendtskab med biblioteket til at skabe spil i Python, lave en skabelon til spil og lære at arbejde med grafiske primitiver i Python.
Lektier: studere teoretisk materiale om emnet "Introduktion til Pygame-biblioteket", øv dig i at skabe grafiske primitiver.
Anden dag
Animation og håndtering af tastetryk
− Start af arbejdet med projektet "Snake Game"
− Håndtering af tastetryk i Pygame
− Oprettelse af animation af objektbevægelse
− Teleportering af en kollisionsslange med en vindueskant
Resultat af lektionen: Eleverne vil skabe et objekt i bevægelse, som vil blive en slange i fremtiden, lære at lave animationer i Pygame og lære at håndtere tastetryk for at flytte objekter i en spilscene.
Lektier: studere teoretisk materiale, finde ud af, hvordan man implementerer udseendet af æbler på spilscenen, fuldfør en praktisk opgave.
Dag tre
Oprettelse af æbler og scoretæller
− Forbinde billeder i Pygame
− Oprettelse af et bullseye-objekt
− Objektkollision i Pygame
− Tekstgengivelse og scoretæller i spillet
Resultat af lektionen: Eleverne vil blive fortrolige med kollisioner i Pygame, lære at arbejde med tekst og inkludere billeder i spillet.
Lektier: gentag emnerne "Funktioner i Python", "Lister i Python", forbered dig til testen, udfør praktiske opgaver om det emne, der er dækket.
Dag fire
Forfining af spillet "Snake"
− Forøgelse af antallet af slangesegmenter
− Fejlrettelser og spilforbedringer
− Tilføjelse af musik til spillet
Resultat af lektionen: Eleverne lærer, hvordan man forbinder lydspor til spillet.
Lektier: gennemgå alle de undersøgte emner, forbered dig på en stor test på kurset.
4. modul
Den første dag
Start på arbejdet med Arkanoid-projektet
− Test af viden om det undersøgte materiale
− Introduktion til klasser
− En kort introduktion til objektorienteret programmering
− Omarbejdning af spilskabelonen i OOP-stil
Resultat af lektionen: Eleverne vil blive introduceret til begreberne objektorienteret programmering til at skabe spil i Python.
Lektier: studere teoretisk materiale om emnet "OOP i Python", udfør praktiske opgaver om det dækkede emne.
Anden dag
Oprettelse af "Platform"-klassen
− Gentagelse af materiale fra forrige lektion
− Analyse af den fremtidige klasses egenskaber og metoder
− Musekontrol i Pygame
− Start af arbejdet på "Ball"-klassen
Resultat af lektionen: studerende vil skabe en bevægende platform, konsolidere viden om OOP, lære at skabe deres egne klasser og gennemtænke deres logik.
Lektier: studere teoretisk materiale, tænk over, hvordan du implementerer "Blok"-klassen, hvilke felter og metoder denne klasse vil have.
Dag tre
Oprettelse af "Ball"-klassen
− Analyse af fremtidens klasse
− Fysik af boldbevægelse og dens refleksion fra overflader
− Spiltest og fejlrettelser
Resultat af lektionen: studerende vil blive fortrolige med kollisioner i Pygame, fortsætte med at studere OOP og oprette en "Ball"-klasse.
Lektier: færdiggør koden skrevet i klassen, forbered dig til test om emnet OOP.
Dag fire
Afslutning af arbejdet med spillet "Arkanoid"
− Oprettelse og placering af spilblokke
− Tilføjelse af en scoretæller
− Spiltest og fejlrettelser
− Tilføjelse af musik til spillet
Resultat af lektionen: skabte spillet "Arkanoid".
Lektier: tænk over, hvilke andre spil du kan implementere ideer og prøve dine ideer i livet.