1. ? Operatörü
Bu operatör if-then-else koşullarını, "soru ? positif cevap : negatif cevap" pattern' ı sayesinde tek satırda yazmamızı sağlıyor.
Örnek:
if (x > y)
max = x;
else
max = y;
Yukarıdaki kodun yerine aşağıdaki kod yazılabilir.
int max = (x > y) ? x : y;
2. ?? Operatörü
Hepimiz sıklıkla bir nesnenin null olup olmadığını kontrol eden kodlar yazıyoruz. ?? operatörü ile bu tip kontrollerimizi tek satırda yapabiliyoruz.
Örnek:
object cache = null;
object d = new object();
object e;
if (c != null)
e = c;
else
e = d;
Yukarıdaki kodu yerine ? operatörü ile yazarsak.
object cache = null;
object d = new object();
object e = (c != null) ? c : d;
?? ile biraz daha kısaltalım,
object cache = null;
object d = new object();
object e = c ?? d;
3. Nesne Oluşturma
Yeni bir nesne yarattıktan sonra bir çok özelliğine değer atamamız gerekir. Bunu nesneyi yaratırken de yapabiliriz.
Örnek:
Customer c = new Customer();
c.Name = "James";
c.Address = "204 Lime Street";
Yukarıdaki kodu şöyle de yazabilirdik.
Customer c = new Customer { Name="James", Address = "204 Lime Street" };
4. Using Statement
Nesne yarattık, kullandık ancak dispose komutunu çalıştırmayı unuttuk ve bellek/kaynak sorunlarına yol açtık. IDisposable interface' inden üretilen nesneleri using statement ile kullanırsak dispose işlemini .Net Framework bizim için yönetir.
Örnek:
// 1. Allocation of the object
Font font1 = new Font("Arial", 10.0f);
try
{
// 2. The bit where we use the resource
}
finally
{
// 3. Disposal of the object
if (font1 != null)
((IDisposable)font1).Dispose();
}
Yukarıdaki kod yerine,
// Allocate the resource
using (Font font1 = new Font("Arial", 10.0f))
{
// The bit where we use the resource
}
// Disposal is automatic
5. Uzun Namespace veya Tip isimleri için Alias
Uzun namespace veya tip bilgileri için alias tanımlayıp sınıfları bu alias ile çağırabiliriz. Alias tanımlamak için using anahtar kelimesi kullanılır.
Örnek:
using Word = Microsoft.Office.Interop.Word;
...
Word.Application = new Word.Application() { Visible = True; }
6. Nullable Nesneler
.Net 2.0 ile null değeri alamayan değişkenler nullable olarak tanımlanabilmekte ve null değeri alabilmektedir. Bunu aşağıdaki syntax ile sağlayabiliriz.
Örnek:
Nullable x = null;
int? x = null;
7. Otomatik Özellikler (Properties)
En sevdiğim özelliklerden birisi. .Net 3.0 ile birlikte gelmiştir. Private değişken tanımlayıp get/set property'sini uzun uzun oluşturmak yerine tek satırda yazmamıza olanak veriyor.
Örnek:
public class Person
{
private string _firstName;
public string FirstName
{
get { return _firstName; }
set { _firstName = value; }
}
}
public class Person
{
public string Firstname { get; set; }
}
30 Haziran 2011 Perşembe
Hayatı kolaylaştıran bazı C# kısayolları
Kaydol:
Kayıt Yorumları (Atom)
Hiç yorum yok:
Yorum Gönder