19 November 2007 · .NET altında yayınlandı
Daha önce Kasım ayında çıkacağı duyurulan Visual Studio 2008 ve .NET Framework 3.5′in RTM sürümleri bugün duyuruldu. MSDN Subscription sahipleri bugün itibariyle bu ürünü indirebilir. Eğer 90 günlük deneme sürümünü indirmek istiyorsanız şu sayfaya gidip Team System Edition’larını indirebilirsiniz. Burada daha “Visual Studio 2008 Professional Edition” için download linki hazır değil ama 1 haftaya kadar o da çıkacakmış. Tamamen ücretsiz olan Express sürümlerinin 2008 versiyonları da indirilebilir durumda. .NET Framework’ün 3.5 internetten kurulan versiyonunu (2.7 MB) ve tekrar dağıtılabilen (offline) versiyonunu (197.1 MB) da Microsoft Downloads’dan indirebilirsiniz. .NET Framework 3.5 ayrıca 2.0 ve 3.0 versiyonlarının SP1′lerini de içermekte.
5 November 2007 · .NET altında yayınlandı
Frameworkun 3.0 ve 3.5 sürümleri ile beraber gelen tip ve namespaceleri de gösteren şöyle bir poster hazırlamışlar:

Kaynak.
Güncelleme: XPS formatında biri tek parça ve biri de 16 parçalık halde olmak üzere iki yeni dosya daha eklenmiş. Tek parça halinde bastırmak biraz zor olacağı için, 16 tane A4 kağıda basıp birleştirmek mümkün.
2 November 2007 · .NET, İpucu altında yayınlandı
Geçenlerde bir videoda ?? şeklinde bir C# operatörünün kullanımına şahit oldum. Başta .NET 3.5 ile gelen yeni özelliklerden biri gibi gelse de bu operatör aslında .NET 2.0′dan beri varmış da haberimiz yokmuş. Videodaki kodun gelişinden operatörün ne amaçla kullanıldığı açıktı; operatörün solunda bulunan operandın (operandın Türkçe’si işlenenmiş bu arada) değeri null değilse işlem sonucu bu (soldaki) operand, null ise de sağdaki operand dönüyor. Şu şekilde:
string a = null;
string b = "foo";
string c = a ?? b;
kodu çalıştırıldığında c değişkeni a null değerine sahip olduğu için b’nin değeri olan “foo” değerine sahip oluyor. İşimizi bir çok sefer kolaylaştıran diğer bir operatör ?: Ternary operatöründen bile daha okunabilir bir kod sağlıyor. Ternary ile bunu şu şekilde yazabilirdik:
string a = null;
string b = "foo";
string c = a != null ? a : b;
Hele bir de if kullansaydık bu işlem için bu kadar daha kod yazmamız gerekecekti:
string a = null;
string b = "foo";
if (a != null)
c = a;
else
c = b;
Operatörü iç içe geçmiş bir şekilde kullanırsak bir kaç değişken arasından ilk null olmayanını bulabiliriz:
string a = null;
string b = null;
string c = "foo";
string d = a ?? b ?? c; // d = "foo"
Operatörün MSDN sayfasına şuradan ulaşabilirsiniz.
Bu operatör aslında JavaScript yazarken kullandığımız || operatörü ile aynı işi yapıyor; ilk operand null değilse onu null ise sonrakini döndür.
var foo = "bar";
var baz = null;
alert(foo || baz);