Programowanie gier w JavaScript

Relacja ze szkolenia
22-23 stycznia, Warszawa
Kolejne szkolenie za nami, tym razem w Warszawie. Dwa dni solidnego JavaScript’u, jeszcze więcej kodowania na żywo, zadań dla uczestników i ostrych dyskusji niż na poprzednim treningu, we Wrocławiu.
Przy okazji tego szkolenia nasunęła się refleksja: uczestnicy DevMeetingów są albo naprawdę pasjonatami, albo weekendy wolą spędzać poza domem :-) Dlaczego? W niedzielę, mimo wczesnego startu, o 8.05 rano dotarli wszyscy.
Dzień 1
Animacja i performance w JavaScript
Okazuje się, że materiał dotyczący animacji przy użyciu CSS3 trafia stuprocentowo w oczekiwania uczestników. Sporo programistów JavaScript implementuje animacje w oparciu o tworzenie loop’a za pomocą timer’ów JavaScript, na szkoleniu pokazalismy inne podejście: jak totalnie przerzucić tę karkołomną czynność w całości na engine renderujący przeglądarki. Niestety (stety!) rozwiązanie to działa tylko na przeglądarkach bazujących na silniku webkit. Zalety? Efektywne renderowanie animacji na urządzeniach mobilnych bazujących na iOS czy Android, w których WebView zbudowane jest właśnie na webkit’cie.
Sporo było o performance tuning’u JavaScript (niektórzy stwierdzili, że zbyt dużo), ale ze wzgledu na mocne użycie grafiki w grach, w szczególności na urządzenia mobilne, chcieliśmy wyczerpać temat. Dużo dyskusji na temat insertowania elementów DOM czy zmiany atrybutów elementu, szczególnie cross-platform.
Dzień 2
Komunikacja i architektura aplikacji JS
Do tematu komunikacji w środowisku web’owym / JS’owym podeszliśmy ambitnie: backend na Node.js, przechowujący i dystrybujący wewnętrzny stan systemu do aplikacji klienckich. Okazuje się, że te dość młode technologie są wykorzystywane w praktyce już teraz – niektórzy z uczestników treningu mieli okazję implementować backend na Node.js w komercyjnych projektach.
Na szkoleniu swój show-time miał Michał Budzyński, jeden z bardziej aktywnych polskich JavaScript game developerów. Przedstawił historię tworzenia gier w JS (od lat 90!), opisał w jaki sposób tworzył swoją grę na GameOn Mozilli (zaimplementowana w 5 dni… i 5 nocy!), wszedł w temat publikacji gier na różne platformy mobilne i opowiedział, jak zarabiać na tworzeniu gier w JavaScript. Przygotowujemy video z jego prezentacji i krótki wywiad. Stay tuned!
Co dalej?
Za tydzień startujemy z pokrewnym tematem szkoleń (JS na platformy mobilne) – zapraszamy zaawansowanych JavaScript Developerów do Wrocławia. Z kolei za 2 tygodnie zawitamy z Markiem do Poznania i cieszymy się na solidne dyskusje, ponieważ właśnie w stolicy Wielkopolski mamy 40 chętnych do wzięcia udziału w szkoleniu, z tego wielu naprawdę doświadczonych JS-programmerów.
@Warszawa: dziękujemy za serdeczne przyjęcie. Jeszcze wrócimy :-) Specjalne podziękowania dla MichałaBe za fajne, merytoryczne podgrzewanie atmosfery i ciekawa prezentację! Dzięki, Michał, życzymy setek tysięcy sprzedanych gier na AppStorze.
Dziękujemy i do zobaczenia na kolejnych szkoleniach – z JavaScript i innych technologii.
Piotr Zwoliński
Marek Pawłowski
Opinie uczestników
To były bardzo intensywne i treściwe dwa dni, profesjonalne szkolenie na bardzo wysokim poziomie. W ciągu 16 godzin nauczyłem się więcej, niż przez poprzedni miesiąc. Było sporo zadań, w których mogliśmy wykazać się swoimi umiejętnościami, a także poznać nowe, ciekawe rozwiązania. Wielkie dzięki kieruję do prowadzącego (Marek Pawłowski), organizatora (Piotr Zwoliński, Dev Meetings) oraz gościa specjalnego (Michał Budzyński), który świetnie uzupełniał prowadzone warsztaty. Życzę powodzenia w rozwijaniu idei darmowych, profesjonalnych szkoleń i szczerze zapraszam na kolejne edycje, bo warto!
Warsztaty, które się odbyły
Wrocław, 8-9 stycznia relacja
Warszawa, 22-23 stycznia relacja
Poznań, 5-6 lutego relacja
Kraków, 19-20 lutego relacja
Gdańsk, 5-6 marca relacja
Devmeetings @ facebook
Prowadzący

Frontend developer, współautor jednej z pierwszych polskich gier przeglądarkowych – Tanadu. Zafascynowany JavaScriptem, szczególnie w kontekście przeglądarek: od optymalizacji wydajności animacji, przez czystą architekturę dużych aplikacji webowych, po integrację z backendem (np. opartym o Node.js). Kiedy akurat nie pisze testów w QUnit, uczestniczy w budowie frameworka Unify (cross-platformowy JS).









Komentarze
1
Paweł Czerski napisał/a 25.01.2011 o 22:19
Czy autor sugeruje, że animacje przy użyciu CSS3 działają tylko na silniku Webkit? Czy coś przeoczyłem w opisie i oczywiście zgadzamy się co do faktu, że działa to także na innych silnikach? :>
2
Marek Pawłowski napisał/a 26.01.2011 o 08:34
Autor przeprasza za nie precyzyjne sformulowanie animacja tzn animacja i tylko albo az tyle. (Animation nie mylic z transition). <br/> <br/>CSS3 animation o ktorych mowilem nie precyzyjnie ja zostały narazie zaimplementowane w Webkicie a transitiony o ktorych zapewne myslal @Paweł sa zaimplementowane w Gecko 2.0/FF4b w Presto 2.3/Opera 10. <br/> <br/>Dla zainteresowanych link do drafta: <br/>http://www.w3.org/TR/2009/WD-css3-animations-20090320/ <br/> <br/>PS. Kolejny raz kłania sie powiedzenie mojego nauczyciela fizyki z przed lat: <br/>Bądzcie czujni bo diabeł tkwi w szczegółach.
3
Michał Budzyński napisał/a 26.01.2011 o 10:20
Hm, ja np. słysząc "animation" myślę "animation" a nie "transition", wydaje mi się że nieprecyzyjna w tym wypadku była interpretacja przekazu a nie jego treść:).