Archívum

Archive for 2007. augusztus

Visual Studio 2008 és WPF

2007. augusztus 22. szerda Hozzászólás

Egy remek kis cikk, a Visual Studio 2008 és a WPF használatáról.

 


Bátorfi Zsolt

Rögtön egy remek hírrel, ugyanis megjelent a Visual Studio 2008 (igen, kezdjük el szokni) Beta 2, ami innentől kezdve abban az állapotba van, amit funkcionálisan késznek tekinthetünk.

Ez azt jelenti, hogy aki veszi a fáradságot és letölti a telepítőkészletet, az már a mindent úgy láthat, ahogy az a végleges – a következő év elején megjelenő – termékben benne lesz.

Mivel ez a blog elsősorban a prezentációs technológiákról szól, ezért most eltekintek az összes új feature felsorolásától, inkább csak az első élményekre fókuszálok a WPF támogatással (aka. Cider) kapcsolatban.

Aki a WPF-be beleásta magát, annak nem kell mondanom, milyen fontos ez a pillanat, hiszen közismert, mindezidáig komoly fejlesztőeszköz támogatás nincs a WPF-hez, aki eddig neki akart indulni egy projektnek, az bizony kezdhette az alapoktól: msbuild fájlok (.csproj) kézzel történő létrehozása, "meztelen" XAML szerkesztés, ugyanis a VS 2005 alatt design time támogatást nem létezett stb.

Tovább bonyolította a helyzetet, hogy közben elkészült a Blend, ami egy profi designer felület, de ha a kódolásra kerül a sor, nos, nincs igazán a helyzet magaslatán, ugyanis képességei odáig terjednek, hogy képes egy .cs fájlt egy editorban megnyitni, s aztán filmszakadás…

Ezzel kapcsolatban elő is jön egy kérdés, nevezetesen, hogy miben kezdjünk el egy WPF alkalmazást fejleszteni: Blend-el vagy VS-el hozzuk létre a szoftver vázát?

Egyáltalán milyen helyzetben használjuk a designer, s mikor a fejlesztő eszközt?

Most hogy végre látszik, mi lesz pontosan a VS 2008-ban, szerintem kitisztult a kép, ugyanis innentől kezdve minden támogatást megkapunk az eszközben. Gyakorlatilag teljes szabadsággal fejleszthetünk Windows alkalmazásokat, úgy mint a WinForms-ban, természetesen azzal a rengeteg plusszal (pl. vezérlők testreszabása) amit a WPF ad, ráadásul a két technologiát szabadon kombinálhatjuk, mindkét irányban.

Nézzük hát mi fogad bennünket, amikor rányitunk egy már korábban elkezdett projektre (megj: az új multitargeting-nek köszönhetően egy kattintással átváthatunk 3.0-ról 3.5-rem így tettem én is egy demó alkalmazásommal):

Cider01

tovább képernyőképek itt…

Néhány dolgot szeretnék kiemelni:

  • a designer felület tényleg gyors, nagyítható és végre jól szinkronban van a XAML editorral, ami gyakorlatilag gépelés közben úgy ellenőrzi (interpretálja!) a kódot, hogy az ne pusztán csak az XML sémának, hanem a WPF visual tree előírásainak is megfeleljen, illetve fel van készítve minden extrára (markup extension-ök, resource-ok, stílusok, adatkötés):
    Cider03
  • egy igazi felület számos layout vezérlő és azok gyermekobjektumainak beágyazásából áll, minek következtében másodpercek alatt el lehet veszni a markup ingoványban. Erre ad megoldást az új Document Outline panel (kedvencem), ami nem csak navigálni enged, hanem még előnézeti képet is az elemről ami felett az egerem áll:
    Cider05 Cider02
  • mivel a XAML editor menetközben validál ezért, remek hibajelzéseket kapunk, anélkül, hogy build-elnénk:
    Cider04
  • remek jól működik a WPF tartalom hosztolása egy Winform-on (Elementhost) illetve a Winform vezérlők beágyazása WPF-be (WindowsFormsHost):
    Cider07 Cider06

Összeségében elmondhatjuk, hogy végre kikerekedett a kép a WPF fejlesztők számára is, a megvalósítás minden fázisa tökéletesen lefedődik eszköz és design time támogatással és most már az is tiszta mikor mit használjunk: a projekt vázát készítsük el VS 2008-ban, hozzuk létre a felső szintű layout konténereket (pl. canvas, grid, dockpanel), tervezzük meg és implementáljuk az adatkötést támogató osztályokat felhasználva pl. a LinQ to SQL támogatást, majd pedig menjünk át a Blend-be és polírozzuk ki a UI-t (layout, control template, databinding).

Jó ismerkedést Mindenkinek!

WPF és Silverlight tutorial

2007. augusztus 20. hétfő Hozzászólás

 

Egy kis tutorial, amivel könnyen elsajátíthatjuk, mind a WPF mind a Silverlight -tal való munkát. (Silverlight telepítese szükséges)


Bátorfi Zsolt: 

Silverlight és WPF designerek figyelem!

Azoknak akik szeretik a rövid, moduláris tanulást, egy remek honlap indult a napokban, ahol részletes trénanyagok segítségével lehet megtanulni az egyedi vezérlők, effektek, animációtervezés, vektorgrafika és sok más tipikusan "tervezendő" vizuális komponenseket:

image

Jó tanulást!

Web Based Client Development – 70-528 MCP vizsga

2007. augusztus 17. péntek Hozzászólás

 

Web Based Client Development – 70-528 MCP vizsgatippek


Balássy György:

Múlt héten voltam Web-Based Client Development (70-528) vizsgán, gondoltam megosztom a tapasztalataimat, másnak még jól jöhet.

Helyszín

Vizsgaközpontként a TrainerC-t választottam, pontosabban nem volt választási lehetőségem. Az ügyintézés kedves, korrekt és gyors volt, igazán csak jót tudok mondani róla.

Felkészülés

A felkészüléshez két forrást tudok nagyon ajánlani:

  • MCTS Self-Paced Training Kit (Exam 70-528): Microsoft® .NET Framework 2.0 Web-Based Client Development című vizsgafelkészítő könyv. Nem is a könyv az érdekes, hanem a CD mellékleten található vizsgáztató program, amiből fel lehet deríteni, hogy mire szeretnek rákérdezni. Azt hiszen nem árulok el titkot azzal, ha ideírom, hogy peer-to-peer hálózatokon megtalálható a CD melléklet anyaga.
    A könyvhöz egyébként tetemes hibajegyzék van, amit kissé nehéz megtalálni, hiszen a KB930739 tudásbázis cikkben érhető el. Nekem is csak az MS Press support tudta elküldeni a linket, a kérdésem háromszori forwardolása után. A CD mellékletből nincs javított verzió, pedig van hiba a példa kérdésekben is.
  • Lehet vásárolni a neten minta vizsgasorokat, vagy Uram bocsá’ akár P2P hálózatokon is lehet ilyeneket találni. Nekem az ActualTests bejött.

A fenti két forrás együttesen lefedte a vizsgakérdések 100%-át, méghozzá szó szerint, amin nagyon meglepődtem.

Témakörök

A Microsoft természetesen publikálta, hogy mire kíváncsi a vizsgán, mégis íme néhány személyes tipp az egyes témakörökhöz, hogy mire érdemes kiemelten koncentrálni:

  1. Creating and Programming a Web Application
    • Kontrollok dinamikus hozzáadása az oldalhoz
    • Állapotkezelés, mikor viewstate, session vagy query string
    • Oldalak életciklusa
    • Erőforrásfájlok használata (lokalizáció), szintaktika.
    • Validátorok: mikor melyik, kikapcsolás.
    • Hierarchikus vezérlők (menu, treeview, sitemap)
    • Átirányítás (Redirect vagy Transfer)
  2. Integrating Data in a Web Application by Using ADO.NET, XML, and Data-Bound Controls
    • XPath kifejezések értelmezése és a megadott XML dokumentum egy node-jának kiolvasásához szükséges XPath kifejezés megalkotása
    • Az összes XML-lel kapcsolatos osztály, mikor melyiket célszerű használni, melyik gyors, melyikben lehet ugrálni, melyik csak szekvenciális, melyik tud XPath-t stb.
    • Táblák összekapcsolása, idegen kulcsok, kényszerek DataSetben.
    • Táblákon belül nézetek használata és RowStateFilter.
    • Adatkötés folyamata.
    • Expression column szintaktika DataTable-ben.
  3. Creating Custom Web Controls
    • Custom-, user- és composite kontrollok közötti különbségek, mikor melyiket célszerű használni.
    • Mikor melyik ősosztályból érdemes származtatni.
    • Tulajdonságok állapotkezelése (viewstate és control state).
    • Template-es vezérlők készítése.
    • Attribútumok használata (Designer, Category, Description).
  4. Tracing, Configuring, and Deploying Applications
    • Mikor kell Copy Web, Publish Web és Web Setup eszközt használni, melyik mit másol fel, milyen protokollon keresztül.
    • aspnetcompiler.exe
    • Trace lehetőségek.
  5. Customizing and Personalizing a Web Application
    • Master page-content page szintaktika, nested master készítése.
    • Masteren elhelyezett kontroll elérése content page-ről.
    • Webkijelzők: kijelzők összekapcsolása, mikor milyen part (editor, catalog stb.) kell az oldal szerkesztéséhez.
    • Mikor lehet témát és master page-et kódból állítani (PreInit-ben).
  6. Implementing Authentication and Authorization
    • Megszemélyesítés.
    • Szerepkör alapú jogosultság osztás web.configban (allow, deny, ?, *).
    • Hitelesítéshez kapcsolódó ASP.NET 2.0 vezérlők alapszolgáltatásai (pl. levélküldés, password reset vagy elküldés).
  7. Creating ASP.NET Mobile Web Applications
    • Kliens specifikus renderelés.
    • Böngésző képességek detektálása.
    • Egyedi device filter készítése.
    • Lapozás megvalósítása.
    • Form vs. Page.

A fentiek közül szerintem az ADO.NET és az XML a legnagyobb kiszúrás, az XPath bűvölést és az XML osztályok használatát én simán áttettem volna egy adatkezeléssel kapcsolatos vizsgába. Sajnos nem elég az ASP.NET-et ismerni, akadnak kérdések, amik egyértelműen a VS 2005 IDE ismeretére mennek rá, például a Server Explorer használatára, ráadásul pont az adatkezelős részre (pl. SQL query írás), amit a Visual Web Developer Express nem tud 😦

A vizsga egyébként 45 kérdésből áll és 2,5 órás, ami szerintem bőségesen elegendő, én kb. 30 perc alatt végeztem. Nem állítom, hogy a vizsga tökéletesen leméri, hogy az illeti mennyire ismeri az ASP.NET-et, de az tény, hogy elég szerteágazóan, elég apró dolgokra kérdez rá, tehát nagyon nem árt, ha az embernek valóban van gyakorlati tapasztalata.

Sok sikert!

Kategóriák:MCP