More

    Rövid útmutató az XAML használatához

    Hol használják az XAML-t, milyen előnyei és hátrányai vannak: 2020. november 5., 4 perc 1784

    Az XAML a Microsoft által kifejlesztett jelölőnyelv. Az objektumok inicializálására szolgál a .NET technológiákban. Ez egy egyszerű, XML-alapú deklaratív nyelv, némileg hasonló a webes fejlesztés HTML-jéhez. Az XAML segítségével egyszerűen létrehozhat, inicializálhat és tulajdonságokat állíthat be hierarchikus kapcsolatokkal rendelkező objektumokon.

    Az XAML-t elsősorban grafikus interfészek fejlesztésére használják a WPF (Windows Presentation Foundation) technológiákban, valamint a Silverlight-ban. De a hatály nem korlátozódik erre. Ezt a nyelvet használják a WCF (Windows Communication Foundation) és a WF (Windows Workflow Foundation) technológiákban is, ahol semmi köze a grafikus felülethez.

    Az XAML egyik szép dolga a cross-platform. Az XAML-t nemcsak a WPF-ben használják, hanem a Xamarin-ban is. Ez lehetővé teszi az asztali szoftverfejlesztők számára, hogy gyorsan elkezdjék építeni a mobil alkalmazásokat. Egy felületet egyszer írhat, és az Android, iOS és UWP (Windows 10) rendszereken fog működni. Ez lefordítja az XAML-t natív kódként ezekhez a platformokhoz.

    Hogyan működik az XAML

    Először is, egy kis elmélet. Az összes programozási nyelv két csoportra osztható: imperatív és deklaratív.

    Az elengedhetetlenül szükségesek olyan jól ismert nyelvek, mint a C, C ++, C #, Pascal, Basic. Bennük elmondjuk, hogy mit kell tenni, de nem adjuk meg, hogy mi történjen (ezt általában leírjuk, és egységvizsgálatokon ellenőrizzük).

    A deklaratív nyelvek viszont lehetővé teszik, hogy leírjuk azt az állapotot, amelyet el akarunk érni, de nem igényeljük (és általában nem is engedjük) leírni, hogyan juthatunk el ahhoz. Olyan nyelvekről beszélünk, mint az XAML, XML, HTML, SQL és mások. XAML esetén az XAML processzor felel azért, hogy miként lehet elérni egy adott állapotot.

    Vessünk egy pillantást az XAML kód konvertálásának folyamatára egy WPF projektben.

    OLVASS TOVÁBB:  A jövő hivatása: VR / AR fejlesztő
    OLVASS TOVÁBB:  Megnyitjuk a C ++ fejlesztési karát

    Rövid útmutató az XAML használatához

    Az XAML-t először a platform-specifikus XAML processzor alakítja belső kódgá, amely leírja a felhasználói felület elemét. A belső kód és a C # kód részleges osztályokon keresztül kommunikál egymással, majd a .NET fordító felépíti az alkalmazást.

    Ha az XAML fájlunkat a processzor C # kódként értelmezi, miért van szükségünk egyáltalán az XAML-re? Itt az ideje, hogy beszéljünk az előnyeiről.

    XAML előnyök

    Az XAML nem kötelező része az alkalmazásnak – teljesen nélkülözhetjük, ha létrehozunk minden elemet a társított C # kód fájljában. Az XAML használatának azonban még mindig vannak előnyei:

    • a grafikus felület elválasztásának képessége az alkalmazás logikájától – ennek köszönhetően a különböző szakemberek viszonylag függetlenül dolgozhatnak az alkalmazás különböző részein. Az interfész felett – tervezők, a logikai kód felett – programozók;
    • tömörség, tisztaság;
    • a karbantartás viszonylag egyszerű.

    Tekintsük a következő példát. Tegyük fel, hogy a “Hello world!” Szöveget szeretnénk megjeleníteni a TextBlock elemben. Ha C # -ban tennénk, akkor így nézne ki:

     TextBlock textBlock = új TextBlock (); textBlock.Text = "Helló világ!";

    Ilyen XAML-ben:

     

    Mint mondják, a kommentek feleslegesek. Nem érdekel az XAML feldolgozása – az XAML elemző ezt csinálja. Az XAML kód GUI alkalmazásokban történő használata elválasztja a grafikus felületet a program üzleti logikájától.

    XAML szerkezet

    Egy új WPF projekt alapértelmezés szerint XAML fájlokat tartalmaz. Például a projekt alapértelmezett MainWindow.xaml fájljának a következő jelölése lesz:

        

    A HTML weboldal struktúrájához hasonlóan az elemek hierarchiája is létezik. A legfelső szintű elem az ablak, ez az alkalmazásablak. Emellett van még két legfelső szintű elem: az Oldal és az Alkalmazás.

    Az ablak beágyazott üres Rács elemet tartalmaz, és a HTML elemekhez hasonlóan számos attribútum (Cím, Szélesség, Magasság). Megadják az ablak címét, szélességét és magasságát.

    Az elemek használatához az XAML-ben névtereket is tartalmazunk. A második és a harmadik sor csak olyan szóköz, amely alapértelmezés szerint szerepel a projektben. Az xmlns attribútum pedig a névterek XML-ben történő meghatározásához szükséges.

    • Például a http://schemas.microsoft.com/winfx/2006/xaml/presentation névtér tartalmazza a vezérlők többségének leírását és meghatározását.
    • A http://schemas.microsoft.com/winfx/2006/xaml egy névtér, amely meghatároz néhány XAML-tulajdonságot, például a nevet vagy a kulcsot.

    Az x előtag az xmlns: x definícióban azt jelenti, hogy az ebben a névtérben található elemek tulajdonságait az x – x: Name vagy x: Key előtaggal együtt fogjuk használni. Ugyanazt a névteret használják már az x első sorában: Class = “XamlApp.MainWindow” – itt létrejön egy új MainWindow osztály és a hozzá tartozó kódfájl, ahol az alkalmazásablak logikája fel lesz írva.

    Elemek és attribútumaik

    Az XAML egyszerűen meghatározhatja az elemeket és azok tulajdonságait. Minden elemnek nyitott és zárt címkével kell rendelkeznie, mint az Window esetében:

      

    Vagy az elem rövidíthető egy záró perjelrel a végén, például:

     

    Az XAML minden eleme egy adott C # osztálynak felel meg. Például a Button elem megfelel a System.Windows.Controls.Button osztálynak. Adjunk hozzá egy gombot az ablak elrendezéséhez:

       

    Először jön a legfelső szintű elem – Ablak. Ekkor a beágyazott Grid elem egy tároló a többi elem számára. És már van egy Button eleme, amely a gombot ábrázolja.

    A gombhoz tulajdonságokat határozhatunk meg attribútumként. Az x attribútumok itt vannak megadva: Név (a gomb neve), Szélesség, Magasság és Tartalom. Az XAML jelölés definiálása után elindítjuk a projektet – és az összes XAML kódot meglátjuk a grafikán, vagyis a gombunkon:

    Rövid útmutató az XAML használatához

    Az XAML hátrányai

    Mint minden nyelvnek, az XAML-nek is vannak hátrányai. Néha sok kód szükséges egy GUI megírásához. Például ahhoz, hogy egy gomb megváltoztassa a kódot az egérmutatón, a következő XAML-re van szükség:

     

    Ugyanakkor a CSS-sel sokkal könnyebben megtehető:

     .gomb {háttér: # 333; } .gomb: lebegés {háttér: # 444; }

    Az XAML egyik legfőbb jellemzője az adatmegkötés. Ez egy erőteljes fejlesztő eszköz, de problémákat okozhat, amelyeket nehéz lehet kitalálni. Ezért fordulhatnak elő:

    • a kötés helytelen;
    • A DataContext nincs megadva;
    • üres tárgyat adnak át;
    • stb.

    Miután elsajátította az XAML-t a WPF számára, érdemes továbblépnie a Xamarin.Forms fejlesztésére. De kissé eltérő XAML-t használ: egyes elemeknek más a neve (StackLayout a StackPanel helyett). Az adatkötés szintén más módon jön létre, nem pedig a WPF-ben megszokott módon.

    Következtetés

    Az XAML egy igazán hatékony nyelv az alkalmazások grafikus felhasználói felületeinek leírására. Miután elsajátította, érezni fogja, hogy a fejlődés könnyebbé és élvezetesebbé válik. Sőt, az XAML könnyen olvasható nemcsak a programozók, hanem a tervezők számára is. És lehetővé teszi gyönyörű alkalmazások létrehozását egy barátságos felhasználói felülettel.

    Friss cikkek

    A Yandex folytatja harcát az Afisha védjegyért

    A Yandex öt új szellemi tulajdonjogi pert indított a Rambler Group ellen. Amint arról az Interfax beszámolt, január 15-én a Yandex öt új...

    Hogyan működik az Instagram ajánlási rendszer

    Az Instagram algoritmus fejlesztője, Amog Mahapatra cikket publikált, amelyben a különféle ajánlások értékéről és a közösségi hálózat ajánlási rendszerének működéséről beszélt. Az ilyen rendszerek...

    A YouTube továbbra is kísérletezik áruk értékesítésével

    A fejlesztők bejelentették egy új funkció tesztelésének megkezdését az áruk videó útján történő vásárlásához. Egy kísérleti projekt részeként a YouTube több tartalomkészítőjét is...

    A Mail.ru Group-ot és a Yandexet monopóliumellenes törvények megsértésével vádolják

    Az Internetes Szerzői Jogvédelem Egyesülete (AZAPI) ellenzi őket. Az AZAPI panaszt tett az Eurázsiai Gazdasági Bizottságnál (EGK) a Yandex és a Mail.ru Group...

    A Google megerősítette az altémák elindítását a rangsorban

    Ez segít diverzifikálni a SERP tartalmát. A Google még 2020 októberében jelentette be az altémákat a Search On rendezvényen. Danny Sullivan elmondta, hogy...

    Kapcsolódó történetek

    HOZZÁSZÓLOK A CIKKHEZ

    Kérjük, írja be véleményét!
    írja be ide nevét

    Maradjon op - Ge a napi híreket a postaládájában