Peliohjelmointi Pythonissa - kurssi 18 000 hieroa. Coddy School of Programming for Children, koulutus 3 moduulia (kk)
Miscellanea / / December 02, 2023
Kesto: alkaen 3 moduulia (kk), alkaen 24 tuntia*.
Muoto: yksilö- ja ryhmätunnit, offline ja online (reaaliaikainen).
Lasten määrä: 1-8.
alkaen 750 hieroa/tunti verkkoryhmässä,
alkaen 850 hieroa/tunti offline-ryhmässä,
alkaen 1050 ruplaa/tunti erikseen verkossa,
alkaen 1980 hieroa/tunti erikseen offline-tilassa.
GameDev ei ole vain muodikas tunniste, joka on luotu kuvaamaan ohjelmointikielten käyttöä. Pelikehitys on syvä ja rikas maailma, jossa teini-ikäiset vasta alkavat oppia koodaamista ja luovat ensimmäiset pelinsä sekä alan titaanit, ansaitsevat miljoonia liiketoiminnassa, joka tuo tulojen lisäksi myös esteettistä ilo. Monien suurten pelialoitusyritysten alkuperä on juuri amatööripelien ohjelmointi ja grafiikka.
Yksi kätevimmistä ja suosituimmista kehityskielistä on Python. Ohjelmien luomisen nopeus ja helppous sillä on ansainnut sille vahvan maineen useilla aloilla. Python tarjoaa YouTuben videonjakopalvelun sekä tallennusasiakas- ja palvelinohjelmiston Dropboxille, Intelille, Hewlett-Packardille ja IBM: lle käyttää Pythonia laitteiston testaukseen, Industrial Light & Magic, Pixar ja muut yritykset käyttävät Pythonia animaatioelokuvien tuotannossa. Pythonin rooli Netflixin ja Yelpin ohjelmistoinfrastruktuureissa on korkea, NASA käyttää Pythonia tieteellisten ongelmien ratkaisemiseen ohjelmointi, ja jopa National Security Agency käyttää Pythonia salaamaan ja analysoimaan tiedustelutietoja. Yhdysvaltain turvallisuus.
Python-kielen standarditoteutus on kirjoitettu C-kielellä, kääntää ja toimii lähes kaikilla tällä hetkellä käytetyillä alustoilla: alkaen tietokoneista ja pelikonsoleista digitaalisiin avustajiin ja suurimpiin supertietokoneisiin, mikä tekee Pythonista yhden merkityksellisimmistä alustojen välisistä kielistä ohjelmointi.
Peliohjelmointi ja multimediasisällön luominen ovat Pythonin vahvoja puolia. Monien itsenäisten kehittäjien projektien lisäksi kulttipelejä kirjoitettiin myös Pythonilla. Näin ollen islantilaisen CCP Gamesin suurenmoinen avaruussimulaattori EVE Online, joka on massiivisesti moninpeli online-roolipeli, hyödyntää laajasti Pythonia. Yhtä legendaarisessa Civilization IV: ssä mukautetut skenaariotapahtumat on kirjoitettu kokonaan Pythonilla.
Paras aika aloittaa ohjelmointi Pythonissa 11-vuotiaasta alkaen. Pelikehitys on oppimisvälineenä kätevin muoto kielen oppimiseen. Tuntien aikana kurssin osallistujat:
- oppia suositun Python-kielen perusteet;
- oppia piirtämään ja animoimaan piirrettyä koodilla;
- kirjoittaa omia pelejään.
Koulutus:
Moskovan ammattikorkeakoulu, erikoisuus "Informatiikka ja tietojenkäsittelytiede".
Kokea:
Hallitset sujuvasti C\C++, Java, Python, PHP, JavaScript, SQL. Olin mukana luomassa Android-sovelluksia Java-kielellä, cross-platform-sovelluksia C\C++-kielellä, botteja erilaisille pikaviestinnille Pythonissa sekä erilaisissa verkkopalveluissa HTML/CSS/JS/PHP: llä.
Kiinnostuksen kohteet:
Varhaisesta iästä lähtien hän on ohjelmoinut erilaisia sovelluksia CLI: stä MVP/MVVC-projekteihin. Osallistunut mobiilihackathoneihin. Osallistunut tapauksiin, jotka koskivat integraatiota kolmannen osapuolen suljettujen sovellusliittymien kanssa. Työskennellyt myös 3d: n kanssa, erityisesti Autodesk Maya, Inventor, 3ds Max, Fusion360 (joitakin pieniä kehityskohteita on tehty objektien näyttämisessä mobiililaitteissa). Ohjelmoinnin lisäksi hän on kiinnostunut moottoriurheilusta, erityisesti driftistä. Huomaamaton, osaa herättää kiinnostuksen työhön, vastuullinen ja tehokas.
Kurssin opettaja:
"Ohjelmointi JavaScriptillä", "Pelien ohjelmointi Pythonilla", "Web-ohjelmointi", "Pythonin robotit", "Ohjelmointi Python3:ssa", "Verkkosovellusten kehittäminen yrityksille"
Kurssin opettaja:
"Peliohjelmointi Pythonissa", "Ohjelmointi JavaScriptissä", "Eettinen hakkeri", "Olympiadien ohjelmointi", "Ohjelmointi Python3:ssa", "Kyberturvallisuus"
1. moduuli
Ensimmäinen päivä
Johdatus Pythoniin
− Mikä on muuttuja?
− Tulo- ja lähtötoiminnot
− Tietotyypit Pythonissa
− Tehtävän ratkaiseminen tutkittavasta aiheesta
Oppitunnin tulos: Opiskelija oppii mitä muuttuja on, print()- ja input()-funktiot, tutustuu Pythonin tietotyyppeihin ja oppii ratkaisemaan käsitellyn aiheen ongelmia.
Kotitehtävät: opiskella teoreettista materiaalia, ratkaista käytännön ongelmia aiheesta "Syöte- ja lähtöfunktiot. Tietotyypit".
Toinen päivä
Operaattorit Pythonissa
− Pythonin aritmeettiset operaattorit
− Vertailuoperaattorit
− Loogiset operaattorit
− Ongelmanratkaisu
Oppitunnin tulos: Opiskelijat opiskelevat aritmeettisia, loogisia operaattoreita sekä vertailuoperaattoreita ja oppivat ratkaisemaan tehtäviä aiheesta "Operaattorit Pythonissa".
Kotitehtävät: opiskella teoreettista materiaalia, ratkaista useita käytännön ongelmia aiheesta "Operaattorit Pythonissa".
Kolmas päivä
Ehdollinen operaattori
− Mikä on ehdollinen operaattori?
− Yksinkertainen haarautuminen
− Useita haaroja
− Tehtävän ratkaiseminen aiheesta "Ehdollinen operaattori"
Oppitunnin tulos: Aihe "Ehdollinen lause" on käyty läpi, ehdollisen lauseen, haarautumisen, koodilohkon määritelmiä on tutkittu, ongelmia on ratkaistu.
Kotitehtävät: toista opiskelumateriaali, valmistaudu kokeeseen, suorita käytännön tehtäviä käsitellystä aiheesta.
Päivä neljä
kun silmukka
− Suullinen kysely tutkitusta materiaalista aiheesta ”Ehdollinen operaattori”
− Johdanto while-silmukkaan
− Konsolipelin "Guess the Number" luominen
− Ensimmäisen moduulin yhteenveto
Oppitunnin tulos: Saatiin käytännön taidot while-silmukan kanssa työskentelyyn, suoritettiin tiedon testaus käsitellyistä aiheista.
Kotitehtävät: toista opiskelumateriaali, opiskele teoreettista materiaalia, suorita käytännön tehtäviä aiheesta "While Loop".
2. moduuli
Ensimmäinen päivä
For-silmukka ja iterointi sekvenssien yli
− Tietojen testaaminen ensimmäisen moduulin materiaalista
− Mikä on for-silmukka?
− Alue()-funktio ja numeeristen sekvenssien numerointi
− Tehtävän ratkaiseminen tutkittavasta aiheesta
Oppitunnin tulos: Oppilaat oppivat, mikä sekvenssi on, range()-funktion, len()-funktion, ja oppivat ratkaisemaan ongelmia aiheesta "Sequence Enumeration".
Kotitehtävät: opiskella teoreettista materiaalia aiheesta "For Loop", ratkaisemaan käytännön ongelmia tutkitusta aiheesta.
Toinen päivä
Listat Pythonissa
− "Lista"-käsitteen määritelmä
− Listan indeksointi
− Iteroi luetteloita indeksien ja arvojen mukaan
− Tehtävän ratkaiseminen aiheesta "Listat Pythonissa"
Oppitunnin tulos: Opiskelijat tutustuvat uuteen tietotyyppiin, sekvenssi-indeksointiin ja opettelevat työskentelemään listojen kanssa.
Kotitehtävät: opiskella teoreettista materiaalia, suorittaa käytännön tehtäviä aiheesta "Listat Pythonissa".
Kolmas päivä
Listaa menetelmät Pythonissa
− Toista edellisen oppitunnin materiaalia
− Perusluettelomenetelmien esittely
− Tehtävän ratkaiseminen aiheesta "Listamenetelmät Pythonissa"
Oppitunnin tulos: Opiskelijat oppivat listausmenetelmiä ja oppivat työskentelemään tietosekvenssien kanssa Pythonissa.
Kotitehtävät: toista opiskelumateriaali, valmistaudu kokeeseen, suorita käytännön tehtäviä käsitellystä aiheesta.
Päivä neljä
Toiminnot Pythonissa
− Funktioilmoitus, def-avainsana, funktion runko
− Omien funktioiden kirjoittaminen ongelmien ratkaisemiseksi
− Toisen moduulin yhteenveto
− Ongelmallisten tehtävien analysointi opiskeluista aiheista
Oppitunnin tulos: Opiskelija oppii luomaan omia funktioita, jakamaan ohjelman loogisiin lohkoihin sekä kirjoittamaan puhdasta ja tehokasta koodia.
Kotitehtävät: toista opiskelumateriaali, valmistaudu kokeeseen, opiskele teoreettista materiaalia, suorita käytännön tehtäviä aiheesta ”Pythonin funktiot”
3. moduuli
Ensimmäinen päivä
Esittelyssä Pygame-kirjasto
− Tiedon testaus toisen moduulin materiaalista
− Pygamen käytön aloittaminen
− Luo malli tulevia pelejä varten
− Graafisten primitiivien piirtäminen
Oppitunnin tulos: Opiskelijat tutustuvat Python-pelien luomiskirjastoon, luovat pelipohjan ja oppivat työskentelemään graafisten primitiivien kanssa Pythonissa.
Kotitehtävät: opiskella teoreettista materiaalia aiheesta "Johdatus Pygame-kirjastoon", harjoitellaan graafisten primitiivien luomista.
Toinen päivä
Animaatio ja näppäinpainallusten käsittely
− "Snake Game" -projektin työn aloittaminen
− Näppäinpainallusten käsittely Pygamessa
− Animaatioiden luominen kohteen liikkeestä
− Törmäyskäärmeen teleportaatio ikkunan reunalla
Oppitunnin tulos: Opiskelijat luovat liikkuvan esineen, josta tulee tulevaisuudessa käärme, oppivat luomaan animaatioita Pygamessa ja oppivat käsittelemään näppäinpainalluksia objektien siirtämiseksi pelin kohtauksessa.
Kotitehtävät: opiskele teoreettista materiaalia, selvitä kuinka toteuttaa omenoiden esiintyminen pelilavalla, suorita käytännön tehtävä.
Kolmas päivä
Omenoiden ja tuloslaskurin luominen
− Kuvien yhdistäminen Pygamessa
− Napakymppiobjektin luominen
− Objektien törmäys Pygamessa
− Tekstin renderöinti ja pelin sisäinen tuloslaskuri
Oppitunnin tulos: Opiskelijat tutustuvat Pygamen törmäyksiin, oppivat työskentelemään tekstin kanssa ja sisällyttämään peliin kuvia.
Kotitehtävät: toista aiheet ”Pythonin funktiot”, ”Pythonin listat”, valmistaudu kokeeseen, suorita käytännön tehtäviä käsitellystä aiheesta.
Päivä neljä
Pelin "Snake" jalostus
− Käärmeen osien määrän lisääminen
− Virheenkorjauksia ja pelien parannuksia
− Musiikin lisääminen peliin
Oppitunnin tulos: Oppilaat oppivat yhdistämään ääniraitoja peliin.
Kotitehtävät: käy läpi kaikki opitut aiheet, valmistaudu kurssin suureen kokeeseen.
4. moduuli
Ensimmäinen päivä
Arkanoid-projektin työt alkavat
− Testaa opiskelun materiaalin tietämystä
− Johdatus luokkiin
− Lyhyt johdatus olio-ohjelmointiin
− Pelimallin uusiminen OOP-tyyliin
Oppitunnin tulos: Opiskelija tutustuu olio-ohjelmoinnin käsitteisiin pelien luomiseen Pythonissa.
Kotitehtävät: opiskella teoreettista materiaalia aiheesta "OOP Pythonissa", suorittaa käytännön tehtäviä käsitellystä aiheesta.
Toinen päivä
"Platform"-luokan luominen
− Toista edellisen oppitunnin materiaalia
− Tulevaisuuden luokan ominaisuuksien ja menetelmien analyysi
− Hiiren ohjaus Pygamessa
− Työn aloitus "Ball"-luokassa
Oppitunnin tulos: Opiskelijat luovat liikkuvan alustan, vahvistavat OOP-tietoutta, oppivat luomaan omia luokkiaan ja ajattelemaan logiikkaansa.
Kotitehtävät: opiskele teoreettista materiaalia, mieti, miten "Block"-luokka toteutetaan, mitä kenttiä ja menetelmiä tällä luokalla on.
Kolmas päivä
Luodaan "Ball"-luokka
− Tulevaisuuden luokan analyysi
− Pallon liikkeen fysiikka ja sen heijastus pinnoilta
− Pelien testaus ja virheenkorjaukset
Oppitunnin tulos: Opiskelijat tutustuvat Pygamen törmäyksiin, jatkavat OOP: n opiskelua ja luovat ”Pallo”-luokan.
Kotitehtävät: viimeistele tunnilla kirjoitettu koodi, valmistaudu testaukseen OOP-aiheesta.
Päivä neljä
Pelin "Arkanoid" työn valmistuminen
− Pelilohkojen luominen ja sijoittaminen
− Pistelaskurin lisääminen
− Pelien testaus ja virheenkorjaukset
− Musiikin lisääminen peliin
Oppitunnin tulos: loi pelin "Arkanoid".
Kotitehtävät: mieti mitä muita pelejä voit toteuttaa ideoita ja kokeilla ideoitasi elämässä.