Novinky ve Visual Basic 9

Tomáš Jecha, MVP, MCSD       25.04.2007       VB.NET, Visual Studio, .NET       11656 zobrazení

Pravděpodobně jste již slyšeli o novém Visual Studiu s kódovým označením Orcas. Pokusil jsem se sepsat několik novinek, které mě v této verzi zaujaly a mohly by i vás.

Pravděpodobně jste již slyšeli o novém Visual Studiu s kódovým označením Orcas. Pokusil jsem se popsat několik novinek, které mě v této verzi zaujaly a mohli by zaujmout i Vás.

K jednotlivým změnám...

Běžné příkazy nyní i v IntelliSense

Mile mě překvapilo, že se konečně v seznamu funkcí a tříd zobrazují i běžné příkazy s popisem a syntaxí.

 Nová podpora XML

Potřebujete programově zapsat XML? Jeho zápis je ve VB9 více než snadný:

     Dim uzivatele As XElement = _
        <uzivatele>
            <uzivatel>
                <jmeno>Karel</jmeno>
                <vek>22</vek>
            </uzivatel>
            <uzivatel>
                <jmeno>Lenka</jmeno>
                <vek>26</vek>
            </uzivatel>
            <uzivatel>
                <jmeno>Michal</jmeno>
                <vek>17</vek>
            </uzivatel>
            <uzivatel>
                <jmeno>Petr</jmeno>
                <vek>30</vek>
            </uzivatel>
        </uzivatele>

Pokud znáte ASP.NET, určitě Vám přijde sympatický také způsob jak vepsat do takto deklarovaného XML kód. Používá se klauzule <%=hodnota %>. Například pro vytvoření dalšího záznamu, kde bude mít uživatel náhodný věk:

Dim uzivatele2 As XElement = _
   <uzivatele>
       <uzivatel>
           <jmeno>Martin</jmeno>
           <vek><%= New Random().Next(30, 40) %></vek>
       </uzivatel>
   </uzivatele>

Všimněte si, že jsem třídu Random inicializovat a rovnou použil bez nutnosti deklarovat proměnnou. Jedná se o další vylepšení Visual Basicu verze 9.

Prvky pak není žádný problém procházet cyklem:

For Each uz In uzivatele.<uzivatel>
    Debug.Print(uz.<jmeno>.Value & " - věk: " & uz.<vek>.value)
Next

LINQ - Další rozměr programování s SQL operátory

Zezačátku jsem si říkal, že mě ve VS Orcas nic nepřekvapí. Tohle jsem ale opravdu nečekal. Projekt LINQ nabízí sadu příkazů (keywordů), které pomůžou u seznamů s filtrováním, řazením, slučováním... Nejlepší bude asi jednoduchá ukázka.

Představte si, že máme nějaký seznam pojmenovaný Státy plný objektů třídy Stát s dvěma vlastnostmi Název a PočetObyvatel. A naším úkolem je vybrat všechny státy ve kterých je více než 1 000 000 obyvatel. Za normálních okolností projdeme pole nebo kolekci a ručně porovnáme všechny hodnoty vlastnosti PočetObyvatel. Ve VB9 můžete použít následují příkaz:

Dim VetsiStaty = From Stat In Staty Where Staty.PocetObyvatel > 1000000 Select Stat

Velká část těchto příkazů je použitelná i jako funkce seznamů. Například můžete spojit dva seznamy přes Seznam1.Union(Seznam2).

Více informací s velkým množstvím příkladů a seznamem všech klíčových slov naleznete na stránkách http://msdn2.microsoft.com/en-us/library/aa479865.aspx

Deklarace podle přiřazení

Představte si, že deklarujete proměnnou:

Dim zprava = New System.Net.Mail.MailMessage()

Ve starších verzích by z toho mohl být problém, protože objekt není typu System.Net.Mail.MailMessage. Ve VB9 si překladač sám domyslí co přiřazujeme. Dokonce i při psaní kódu se objekt zprava tváří jako MailMessage. Tohle je věc, který mě dříve občas docela obtěžovala, zvláště při dlouhých jménech i s Namespacy.

Toto vylepšení se dá použít i například při procházení seznamů (nemusíme deklarovat datový typ):

For Each Dim Polozka In Polozky
	...
Next

Windows Presentation Foundation

Visual Studio Orcas podporuje .NET Framework 3.0 a s tím přichází i Windows Presentation Foundation. Jedná se o základ pro stavbu aplikací implementovaný ve Windows Vista (lze doinstalovat i do Windows XP). Zajímavý je například vizuální designér jazyku XAML. Tomuto tématu se budeme ale věnovat v jiném článku.

Zdroje

Článek čerpá z anglického dokumentu, který naleznete zde: Visual Basic 9.0 Overview

Příklady jsem testovat na Visual Basic Codename Orcas Express Edition Beta 1.

 

hodnocení článku

6 bodů / 6 hlasů       Hodnotit mohou jen registrované uživatelé.

 

 

 

Nový příspěvek

 

                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.

Nyní zakládáte pod článkem nové diskusní vlákno.
Pokud chcete reagovat na jiný příspěvek, klikněte na tlačítko "Odpovědět" u některého diskusního příspěvku.

Nyní odpovídáte na příspěvek pod článkem. Nebo chcete raději založit nové vlákno?

 

  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback