Interno funkcioniranje modernog GUI
Prezentacija: Interno funkcioniranje modernog GUI (korisničkog sučelja)
Snimka predavanja (Acrobat Connect)
Unity 3D je dugo očekivani sustav za razvoj 3D aplikacija unutar web preglednika, te različitih operativnih sustava (Windows, Max, iPhone, Wii...). Ono što je mnoge developere i dizajnere posebno impresioniralo je činjenica kako se 3D aplikacije unutar Unity plugina vrte glatko i to s malim iskorištenjem procesora, iako je broj poligona koje renderiraju enorman. Gaming industrija je dočekala Unity s oduševljenjem, no Unity se može koristiti i na razne druge načine.
Jedna od ideja za korištenje Unityja su "poslovne" aplikacije poput Flex aplikacija, međutim ono u čemu je Unity najsiromašniji jest baš GUI (graphical user interface). Naime, Unity nudi određenu GUI funkcionalnost, međutim ona je vrlo 'low level', u smislu da ne postoji niti osnovni objektni model komponenti koje bi (poput komponenti u Flashu) imale svoj state i evente.
Naš istankuti član Danko Kozar će na sljedećem sastanku ZgFlex prikazati svoj GUI framework u Unity tehnologiji. S obzirom na kompleksne zadatke koje mora odrađivati na Trillenium projektu, bio je prinuđen napraviti ovaj framework (alternativa je bilo proceduralno programiranje, u što se nije htio upuštati, jer smatra da je takva vrsta programiranja zastarjela).
Da ne bude zabune: u ovoj prezentaciji neće biti riječ o 3D-u. Radi se o 2D komponentama: Button, Label, TextField, DataGrid i druge, a framework poput ovog postoji u mnogom drugim tehnologijama (Javascript, Flash, Java, ASP.NET itd.)
Prilikom programiranja frameworka Danko je u detalje proučio neke od open-source tehnologija - poput Flexa, koji mu je bio i inspiracija - tako da je gradeći ovaj framework zapravo u potpunosti shvatio kako Flex funkcionira "iznutra" i to će znanje i prezentirati.
Bit će riječi o:
- programiranju komponenti korištenjem OOP tehnologije
- životnom ciklusu komponenti
- međusobnom parent-child odnosu komponenti (composite design pattern)
- invalidaciji propertyja, veličine, layouta
- dispečiranju evenata i event flowu
- capturingu mouse i keyboard evenata
- danko's blog
- Login or register to post comments