Daily Archives: 2007.02.8. 6:39

Új kedvenc: ?? operátor

A .NET Framework 2.0 megjelenésével elérhetővé váltak az ún. nullable típusok, azaz olyan érték típusok, amelyek null értékűek is lehetnek. Ilyen például a Nullable<Int32> vagy Nullable<bool> típus, mely utóbbi három értéket is felvehet, lehet true, false vagy null. Ennek megfelelően nem szerepelhet logikai kifejezésekben, azaz például nem állhat if, for vagy while feltételében. Természetesen lehet bool típusra kasztolni, de előtte nem szabad megfeledkezni a HasValue metódus hívásáról, hiszen null-t nem lehet logikai értékre kasztolni.

A legszebb az egészben, hogy a C#-ban megjelentek nyelvi elemek a nullable típusokhoz kapcsolódóan, így Nullable<bool> helyett elég ennyit írnunk: bool?, a többit a fordító elintézi.

Ez a lehetőség sok helyen egyszerűsítheti az alkalmazásunk logikáját, de bizony itt-ott bonyolíthatja is a kódot, hiszen nem szabad elfelejtkeznünk a null érték ellenőrzéséről. Itt jön a képbe a ?? operátor, amiről az MSDN a következőt írja:

The ?? operator returns the left-hand operand if it is not null, or else it returns the right operand.

Hohó, de hisz erre nagyon gyakran van szükség! Gondoljuk csak végig, egy webalkalmazásban hányszor írunk olyan kódot, amelyben ellenőrizzük, hogy a Session, a Cache, a ViewState, a QueryString vagy valamelyik más szótár típusú gyűjtemény egyik eleme tartalmaz-e értéket vagy sem! Biztosan írtunk már valami hasonlót (akár az as operátor használatával):

    object name = this.Session[ "nev" ];

    if( name != null )
    {
        this.lblResult.Text = name.ToString();
    }
    else
    {
        this.lblResult.Text = "Nincs adat!";
    }

A ?? operátor segítségével mindez ennyire rövidül le:

    this.lblResult.Text = (string) ( this.Session[ "nev" ] ?? "Nincs adat" );

Vagy akinek így jobban tetszik:

    this.lblResult.Text = ( this.Session[ "nev" ] ?? "Nincs adat" ).ToString();

Egy másik példa integerrel:

    int age = (int) ( this.Session[ "kor" ] ?? 0 );

Hát nem csodálatos?! Szerintem sokkal tisztábban látszik, hogy csak a null érték kezelését akarjuk megoldani. Persze először nehéz megszokni, hogy hogy is kell mindezt olvasni, de ahogy túltettük magunkat a ?: operátoron, úgy egyszer majd ezen sem fogunk fennakadni…

 

Technorati tags: , ,
Advertisements

Offtopic: Ragtime, dixieland, jazz, blues, swing

Bár sokan a bloggolást a személyes naplóírás modern verziójának tekintik, én ezt a blogot szándékozom szinte kizárólag szakmai tartalommal megtölteni. Feltűnt azonban, hogy a szakmai kapcsolatokon keresztül megismert kollégák közül is többeket érdekelnek a címben megfogalmazott zenei stílusok, így talán ez a téma is szélesebb körű közérdeklődésre tarthat számot. (A hasonló jellegű bejegyzéseknek létrehoztam egy Nem szakmai kategóriát.)

Bohém Ragtime és Jazz Fesztivál 2007. Fóti Marcell jóvoltából múlt szombaton volt szerencsém a Zeneakadémián meghallgatni a Jazztörténeti kalandozások: Ragtime-tól a swing-ig című koncertet. Az est két fő fellépője az Ittzés Tamás vezette kecskeméti Bohém Ragtime Jazz Band és a szegedi Molnár Gyula vezette Molnár Dixieland Band volt. Bevallom, nem ismertem őket korábban, – talán mivel nem fővárosi zenekarok, – noha a kecskeméti "Bohém" Ragtime és Jazz Fesztivál neve ismerősen csengett a fülemben. Sajnos nem értek annyira a zenéhez, hogy meg tudjam ítélni, mennyire jól vagy pontosan játszottak, de a koncert és az este mindenképpen nagyon szórakoztató és élvezetes volt! Külön tetszett, hogy nem csak zene szólt, hanem a műfaj kialakulásának történetéről is megtudhattunk sok mindent. Mindkét zenekart csak ajánlani tudom és a magam részéről biztosan utána fogok nézni, hogy a kecskeméti fesztivál március 23. és 25. között milyen programokat kínál!

Meg kell említenem a meghívott vendégzenekart, a szegedi jambay dobosokat (aki tudja az oldaluk címét, írja meg, kérem). Aki már hallott dob zenekart játszani, legyen az afrikai jambay dob, taiKo vagy éppen a Stomp, biztosan tudja, hogy az extázis kifejezés egyáltalán nem túlzás, akár a hallgatóságról, akár a dobosokról beszélünk. Korábban volt már alkalmam jambay dobon játszani és nyugodtan mondhatom, felejthetetlen élmény még annak is, aki nem ért a zenéhez. (Hogy legyen valami szakmai is: ez egy bináris hangszer, két hang van rajta, egy magas és egy mély és mindössze a tenyered kell hozzá, hogy megszólaltasd clap) Nem véletlen, hogy létezik olyan cég-zenekar a világon, akik a team building eszközeként használják ezt az egyszerű hangszert.

Ha pedig swingről van szó és jó muzsikáról, akkor az este nem zenei szereplője ki más lehetett volna, mint a Jumpers táncegyesület vezetője, Janicsek Gábor és partnere. Jazzt és bluest talán lehet hallgatni egy fotelból, de az igazi swing megmozgatja az ember lábát, arra táncolni kell – mindenkinek a maga módján. Egyre szaporodnak azok a táncegyesületek, ahol már ezt a stílust is el lehet sajátítani, ezek sorában az egyik, vagy AZ első tudomásom szerint Gábor egyesülete volt. A lindy hop semmivel sem egyszerűbb, mint bármely más tánc, de szerintem aránylag hamar el lehet jutni odáig, hogy az alaplépések, a turn, a circle, a charleston, a swing-out és a többiek már örömet okoznak és az ember kimerészkedik a parkettre. Ezt ki kell próbálni!

Összefoglal, az este igazán volt, reméljük a Szervusz Budapest! felütés tényleg több fővárosi koncertet tartogat ezektől a zenekaroktól a jövőben. Aki szintén ott volt a koncerten vagy tud hasonló eseményről, ossza meg gondolatait itt comment formájában! Köszönöm!

 

Technorati tags: , , , ,