Rozdiel medzi WPF a WPF/E

Publikoval Michal Kočí dňa 31.3.2007 o 16:18 v kategórii Silverlight

Keď som sa pred tromi týždňami dozvedel, že som pridelený na projekt kde sa bude používať WPF tak som sa potešil (mám rád keď môžem používať nové technológie) a začal som študovať WPF. Bohužial zdrojov o WPF zatiaľ nie je až tak veľa a chvíľu mi trvalo, než som zistil že WPF/E je síce WPF podobné, ale je to trochu iná káva.

WPF alebo tiež Windows Presentation Foundation je nová technológia, pomocou ktorej môžete vytvárať aplikácie s bohatým grafickým užívateľským rozhraním (GUI). Teda ak potrebujete aby Vaša aplikácia vyzerala trochu živšie ako klasické aplikácie, WPF je pravdepodobne správna voľba.

WPF Vým umožní vytvárať Windows aplikácie ale aj Web aplikácie (aplikácie hostované v Internet Exploreri alebo v ovládacom prvku ktorý tieto aplikácie dokáže hostovať), pričom tieto aplikácie nepoužívajú štandardné ovládacie na ktoré ste zvyknutý ale novú sadu ovládacích prvkov. Tieto sú všetky vektorové a j to umožňuje vytvárať pekné aplikácie - pri zvečšovaní/zmenšovaní prvkov nestráca ich výzor na kvalite, navyše máte možnosť ich rôzne animovať (nechať meniť niektorú ich vlastnosť ako napríklad veľkosť, farbu, pozíciu v čase, obvykle na základe nejake užívateľskej akcie, napríklad pri kliknutí myšou).

Vo WPF sa používa značkovací jazyk XAML (vyslovuje sa zaml) a samozrejme kód Vášho obľúbeného programovacieho jazyka (napríklad C#). A treba podotknúť, že väčšinu vecí zvládnete s použitím iba XAML kódu bez písania dodatočného kódu v programovacom jazyku - a to aj spomínané animácie.

O WPF sa v tomto príspevku nebudem detailne rozpisovať, pretože to nie je cieľom a tiež preto, že existuje pekný seriál v češtine o WPF, ktorý Vám dokáže spraviť rýchly a prehľadný obraz o tejto technológii. Tento nájdete na serveri Vývojář.cz (treba pohľadať) a tiež na United states Of .Net. A určite si nenechajte ujsť aj webcasty na webe českého Microsoftu (treba si ich vyľadať, bohužial nemám po ruke priamu linku) - i keď sa pri nich asi niekedy budete chytať za hlavu, keď budete počúvať "odborné termíny" prednášajúceho, napriek tomu sa z nich viete veľa dozvedieť.

A čo je teda WPF/E? WPF/E alebo Windows Presentation Foundation Everywhere je istá podmnožina WPF, teda objektový model WPF/E je podmnožinou objektového modelu používaného vo WPF. A podstatné je to, že WPF/E aplikácie bežia pod internetovými prehliadačmi ako súčasť ľubovoľnej HTML stránky. Bežia v plugine internetového prehliadača podobne ako Flash aplikácie.

Tým, že bežia ako plugin v intenetovom prehliadači v HTML stránke, ich vývoj je v niečom veľmi odlišný od vývoja WPF aplikácií - všetok kód, ktorý píšete, píšete v klientskom Java Scripte ktorý beží na strane klienta. Toto ja osobne vidím ako jedno z najväčších negatív tejto technológie - ak ste niekedy písali klienstký Java Script kód tak chápete o čom hovorím.

Ak nie, tak vedzte že pri jeho písaní zabudnite na kompiláciu kódu a teda zabudnite na objavenie preklepov a podobných chýb, ktoré by sa dali ľahko odhaliť v čase kompilácie. Väčšinu chýb pracne odhalíte až počas behu aplikácie. Na projekte na ktorom robím je počuť viac nadávok než počas hokejového zápasu Slovenska proti Česku v ktorej koľvek slovenskej alebo českej krčme.

Napriek tomuto je však WPF/E ako technológia veľmi šikovná. Máte možnosť písať aplikácie, ktoré budú bežať v Internet Exploreri, podporovaný má byť aj Firefox a ak sa nemýlim tak aj Safari a Opera. A keď uvážime, že vo WPF/E nie je problém prehrávať audio (MP3) alebo video (WMV), nie je problém nasimulovať obraz v obraze, animovať prvky či prepnúť sa do full-screen módu, tak sa naozaj jedná o extrémne silnú technológiu.

Tak toľko letmý pohľad na rozdiel medzi WPF a WPF/E. Na záver nutno podotknúť, že WPF/E je momentálne v CTP verzii. Navyše, stále chýba poriadna podpora vo Visual Studiu pre vývoj WPF a/alebo WPF/E aplikácií. Môžete siahnuť po beta nástrojoch Express edície (Blend alebo Designer), ale ich integrácia s VS.Net je viac menej nulová navyše produkovaný kód nestojí momentálne za veľa.

Ak máte skúsenosť s jednou alebo druhou technológiou tak sa kľudne podeľte v komentároch. Tiež sa kľudne podeľte o Vaše obľúbené internetové zdroje o týchto technológiách, ak nejaké máte. No a do verzie Orcas Visual Studia, kde snáď bude poriadna podpora Vám prajem silné nervy.

Mohlo by ťa tiež zaujímať

Páčil sa ti príspevok?

Zdieľaj príspevok alebo si ho odlož na neskôr

Sleduj ma

Ak nechceš premeškať príspevky ako je tento, sleduj ma na Twitteri, alebo ak máš RSS čítačku, môžeš sledovať môj RSS kanál.