Első feladatok – Silverlight

Az elmúlt 3-4 hét történései.

 

A Silverlight könyvet kellett röviden áttekintenem, illetve az alábbi témakörökre nagyobb figyelmet kellett szentelnem:

  • Alkalmazás életciklusa
  • Fejlesztői környezet beállítása
  • Mvvm tervezési minta
  • Animációk
  • Képek kezelése (controllok)
  • Layout vezérlők

Ezen témakörök nagy része megtalálható volt a Silverlight könyvben.

 

Az egyes témakörökről pár lényeges mondat:

  •  Alkalmazás életciklusa

A Windows 8-nál a Metro alkalmazások életciklusa nagymértékben különbözik a megszokott, hagyományos alkalmazásokétól. A lehető legjobb felhasználói élmény biztosításának érdekében az alkalmazások életciklusa feletti hatalmat a Microsoft kivette a felhasználók kezéből, és inkább a rendszer szerves részévé tette.

  • Fejlesztői környezet beállítása

A fejlesztői környezet olyan programozási eszközök, könyvtárak és beállítások csoportja, melyekkel a szoftverfejlesztés során a felhasznált programozási nyelven, vagy nyelveken létrehozott forráskódokat futás kész állapotba lehet hozni és azt tesztelni. Ez jelentheti a fordítást, vagy nem önálló programok futtatási környezetbe helyezését. Mindkét esetben a környezet általában tartalmazza a futtatókörnyezetet is a tesztelés miatt.

  • Mvvm tervezési minta
    • A Mode-View-ViewModel architektúrális mintát a prezentációs rétegben célszerű bevezetni. Ennek segítségével alkalmazásunk felhasználói felülete tesztelhető, karbantartható lesz, és jelentősen egyszerűsíti a fejlesztő és dizájner közötti együttműködését.  Ebben a megközelítési módban több elem is segíti a hatékony projektmunkát:
      • A ViewModel-ek koncepciója
      • A View-val való laza integráció
      • A ViewModel-ben exponált tulajdonságok, és parancsok, melyeket Command pattern, illetve Behavior-ök segítségével elérhetővé tettük
      • Illetve az Expression Blend és a ViewModel-jeinkbe beépített tervezésidejű támogatás.
  • Animációk
    • Animációk alkalmazásával, sokkal szórakoztatóbbá és látványosabbá tehetjük a felületet, életre kelthetjük azt. A Silverlight segítségével számos lehetőségünk van színek animálására, különböző időzített mozgások elkészítésére, vagy akár oldalak közötti átfedések kialakítására. Minden animáció azonos elv alapján működik. Ahhoz, hogy animációt tudjunk létrehozni, először is szükségünk lesz egy Storyboard objektumra, amely definiálja, hogy a létrehozandó animációkat mely objektumra szeretnénk érvényesíteni, illetve azon belül is melyik tulajdonságra. Megszabja az animáció viselkedését is — milyen hosszan játsszuk le, ismételjük-e meg, ha véget ért, stb. —, és még sok más dologban segít nekünk. Az Expression Blend egyik legnagyobb erőssége az animációk készítésében rejlik.
  • Képek kezelése (controlok)
    • A főbb controlok Silvterlightban:
      • UserControl
        • A UserControlok leggyakoribb használati területe a nézetek világa. A komplex felhasználói felület kisebb, önálló funkcionális egységekre való darabolásában játszanak fontos szerepet. Természetesen klasszikus értelemben vett, egyszerűbb vezérlők létrehozására is használhatók, de a testreszabhatóságnak komoly korlátokat szabnak.
      • Custom Control
        • Custom Controlok segítségével a legegyszerűbb vezérlőktől a legkomplexebbekig bármit készíthetünk, biztosítva az utólagos teljes testreszabhatóságot. A vezérlő megjelenése és a hozzá tartozó logika egymástól szinte teljesen elkülönül.
  • Layout vezérlők
    • Grid: a legsokoldalúbb és ezáltal leggyakrabban használt konténer. Ez a vezérlő lehetővé teszi tetszőleges számú és méretű oszlop illetve sor definiálását. Alapértelmezés szerint egy sor és egy oszlop létezik, amennyiben többet szeretnénk, megfelelő számú RowDefinition és ColumnDefinition objektumot kell készítenünk. A ShowGridLines tulajdonság állításával láthatóvá tehetjük a Grid oszlopait és sorait határoló vonalakat. Ha egy-egy vezérlőnek egynél több cellára van szüksége a Grid-en belül, ekkor a ColumnSpan és RowSpan tulajdonságokkal beállíthatjuk, hogy az hány sort/oszlopot foglalhat.
    • Canvas: lehetővé teszi, hogy explicit módon koordináták segítségével pozícionáljuk a vezérlőinket. Az x/y koordinátákat a Canvas.Left illetve a Canvas.Top attached propertykkel állítjuk be, amelyekkel a Canvas bal oldalának és felső részének a bounding boxtól való távolságát szabályozzuk. Amennyiben ezeket az értékeket nem adjuk meg, akkor automatikusan a bal felső sarokba (0;0) pozíciónál.
    • StackPanel: segítségével vízszintes vagy függőleges sorba rendezhetjük a vezérlőinket. Az Orientation tulajdonsággal vízszintes irányba állíthatjuk az elemeket.
    • WrapPanel: nem része az alapcsomagnak, a Silverlight Toolkit keretében juthatunk hozzá. Hasonló szerepet tölt be, mint a StackPanel, viszont van egy apró különbség, mégpedig az, hogy a lehető legoptimálisabban kitölti a rendelkezésre álló helyet, vagyis a vezérlők több sorban is megjelenhetnek. Lehetőségünk van arra is, hogy minden elem számára uniform méretet adjunk meg, amely akkor is érvényes marad, ha a vezérlőnek így kevés hely jut. Erre a célra az ItemHeight és ItemWidth tulajdonságokat használhatjuk. A FlowDirection tulajdonsággal a vezérlőelemek megjelenítésének sorrendjét szabályozhatjuk. Ez csak soronként érvényes, nem globálisan, vagyis ha egy elem eredetileg az utolsó sor utolsó tagja lenne, az nem kerülhet fel az első sorba.
    • DockPanel: segítségével a vezérlőelemeket egy-egy oldalhoz „ragaszthatjuk”.

 

 

A legtöbb információt a Silverlight könyvből nyertem. A könyv elejét (az első 7 fejezetet) részletesen néztem át, az utolsó fejezeteket inkább átlapoztam. De a könyvet sikerült megszereznem elektronikus formában, így a későbbiekben is utána lehet nézni dolgokat, akár a maradék részeket is el lehet olvasni.

Hasznos dolgokat találtam a devportal.hu-n. Szerintem ezt az oldalt a későbbiekben is sűrűn meglátogatom.

Leave a Reply