Petzold i WPF PDC pre-session

Imao sam tu...sreću da uspem da dobijem ulaz na 6 sati session-a o WPF-u kod nikoga drugoga do Čarlsa Pecolda (Chartles Petzold). Trenutno (10:15 AM po lokalnom vremenu), radi se uvod i priča oko toga gde spada XBAP, gde "loose XAML" a gde "traditional exe file".

- Zanilmljivo, koristi neki tool koji se zove "XAML cruncher", samo još da mi proradi internet ka nekom pretraživaču da mogu da pogledam gde to može (ako može) da se skine.  Aha, proradilo na foricu XAML Cruncher.

- OK, sada idu osnove koje pokazuje preko svog tool-a i objašnjava vezu između XAML-a i .NET klasa. Početnički kurs, donekle, što je sasvim OK za nas koji nismo plivali nikada previše duboko u WPF-u.

- Aha, veza između XML-a (koji je u stvari XAML) i .NET koda, i kako mogu da se deklarišu stvari dvosmerno.

- Dakle, čitava postavka je da ide od veze između XAML-a i .NET koda koji stoji iza. Recimo, u XAML-u je

   1: <Page.Content>
   2:     Hello, World!
   3: </Page.Content>

U stvari postavljanje property-ja "Content", koji postoji u svakoj klasi, na "Hello, World!" tekst. Možete da izostavite tagove, tako da se sve što se ne nalazi u tagovima automatski ide u "Content".

- Kao i u HTML-u, postoji redosled kako se primenju settings koje dodajemo na elemente u WPF-u (XAML-u). Dakle, postoji hijerarhija, što je logično jer je XAML XML-based.

- A sada imamo i pomen WPF "Visual tree", koje sadrži parents, children i siblings. kao i u HTML-u sa CSS-om, i ovde se nalazi osnova hijerarhije. Lep primer sa DNA-om. :)) Naime, border prihvata definiciju propertyja koje koje nema, ali ih prenosi dalje svojoj "deci" po stablu koja imaju.

- Sada prikazuje canvas, kao ultimativnu container kontrolu.

- Sada krećemo na XAML resources, način na koji se neki resursi, kao što su Brushes, mogu rabiti na više mesta.

Posle ručka

Ne, ručak nije bio ništa specijalno. Hrana u USA i nije nešto baš dobra, makar ne na konferencijama.

- Trenutno pravi jednu prostzu aplikaciju za računjanje da pokaže kako se sa XAML UI-em radi iz koda. Isto tako pokazuje event hendlere, kroz primere vlaidacije polja i onesposobljavanje.

-Sada idemo na XAML browser application (XBAP). Osnovna razlika između ove dve aplikacije je da XABP ima Page a EXE ima Window kao "root" objekat. XBAP ima pages i linkuju se međusobno, kao web sajt. Osim toga, koncept je sličan.

- Sada idemo na databinding u XAML-u. Dovoljno je da deklarišemo element <Binding>, da ukažemo na kontrolu/element koji nam služi kao izvor podataka i da damo putanju do njegovog proertz-ja koji nam služi kao vrednost. Isto je i obrnuto. Dakle, binding može da radi dvosmerno, s asource na target i sa target na source. Takođe, može da se definiše i da se binding desi samo jednom.

- Zatim idemo na templated kontrole, pa zatim databinding u njima.

 

Na kraju sam se od umora, izvinjavam se, već malo pogubio i nisam poslednjih 1h pazio šta priča, realno. Znam samo da je i dalje pričao o finim trikovima sa XAML-om. Jedini problem ovog 6-osatnog kursa jeste da ga nije baš lako prepričati, jer se strašno puno kretao u kodu. Ono što sam mogao da pokapiram jeste da je njegova osnovna teza da prvo treba naučiti XAML, onda kod, i na kraju koristiti i jedan i drugi da bi se postigle fine stvari i da bi se prevazišli neki nedostaci u obe tehnologije. Koliko sam pričao dok se sve to dešavalo sa Zmajčekom (koji je držao maratonska predavanja na Sinergiji i dalje o tome), nije loša postavka.

Moram priznati, s druge strane da mi je drago što sam slušao Petzolda kako priča. Dosta se može naučiti o tome kako izvesti nešto ovako od majstora, možda ne toliko priče koliko pisanja, ali svakako "maga" u svetu Windows programiranja. Ukoliko niste upućeni, pored sjajnih kompjuterskih knjiga (kao što su "Code + Markup = Applications", "3D Progrraming With WPF" i biblijske "Programming Windows Applications With C++"), Pecold je takođe napisao i dve knjige koje se tiču kompjutera, ali na jako posredan način. Prva je "Code: The Hidden Language of Computer Hardware and Software" a druga je "The Annotated Turing: A Guided Tour Through Alan Turing's Historic Paper on Computability and the Turing Machine". Prvu sam pročitao, i toplo je preporučujem, čak i ako se jako dugo bavite kompjuterima. Način na koji on opisuje i predstavlja same osnove kako kompjuter, kao sprava, radi, je magičan. Kao što je Džef Atvud rekao, za Pecolda je ova knjiga definitivno bila prizvod ljubavi.

Sada malo na spavanje. Jetlag sux. :((

Out.

B.D.

Published Monday, October 27, 2008 2:47 AM by blackdwarf
Filed under:

Leave a Comment

(required) 
(required) 
(optional)
(required) 
Powered by Community Server (Commercial Edition), by Telligent Systems