Visual Studio 2008 kod adı Orcas ile gelen en önemli özelliklerden bir tanesi Multi-Targeting desteği. Çoklu platform desteği diye çevirebiliriz aslında bu kelimeyi. Peki çoklu platform desteği ne demek? Daha önceki Visual Studio sürümlerinde ki bunlar Visual Studio 2002, Visual Studio 2003 ve Visual Studio 2005, .NET Framework 1.0, 1.1 ve 2.0 ile çalışıyordu.

Şöyle bir sorun vardı aslında, Visual Studio 2003 ile bir uygulama geliştirdiğiniz zaman Visual Studio 2005 e geçmek için önce bikere framework’u değiştirmeniz sonrada Visual Studio’yu yukseltmeniz gerekiyordu.

Visual Studio 2008 ile beraber artık istediğiniz platformda uygulamarınızı geliştirebiliyorsunuz. Visual Studio’yu açtığınız zaman herhangi yeni bir proje ya da varolan bir projenizi açarken çalışmak istediğiniz platformu seçebiliyorsunuz. Bu platformlar .NET Framework 2.0, 3.0 ve 3.5. Kısacası bir .NET Framework veya Visual Studio sürümü çıktığı zaman varolan projelerinizi o framework ya da IDE için sürekli yükseltmeyeceksiniz.

Yalnız .NET Framework 1.0 ve 1.1 sürümleri desteklenmiyor. Çünkü CLR’da ciddi değişiklikler oldu .NET 2.0 ile birlikte. Onun için 2.0, 3.0 ve 3.5 sürümleri destekleniyor.

image

Yeni bir proje açtığınız zaman sağ üstte bir dropdown kontrolü göreceksiniz, işte buradan çalışmak istediğiniz platformu seçebilirsiniz. Her platformun proje şablonları, projedeki kontroller farklı olabiliyor. Yani mesela eğer .NET Framework 2.0’ı seçtiyseniz, 3.0 ve 3.5 ile gelen proje şablonlarını ve kontrollerini göremeyeceksiniz. Referanslar kısmında da seçtğiniz platformun referans dll’leri bulunacak. Add reference dediğiniz zaman, tüm platformların dll’ler gözükücek ama eğer alt bir sürümde çalışıyorsanız, kullanmadığınız yani üst sürümdeki dll’ler , referanslar silik olarak gözükecek.

vs2008Multitargeting vs2008Multitargeting3 vs2008Multitargeting4

Güzel bir özellikte şu, bu seçtiğiniz hedef platformunu istediğiniz zaman değiştirebilirsiniz. Projenizin özellikler kısmından hedef platformu istediğiniz şekilde değiştirebilirsiniz. Yanlız şöyle birşey var, eğer .NET Framework 3.0 ya da 3.5 gibi üst platformlar ile çalışıyorsanız, ve bu platformlardan kontroller kullanıyorsanız projenizde, alt bir platforma geçtiğiniz zaman bu kontroller tanınmayacak dolayısıyla derlenmeyip hata alacaksınız buna dikkat edin.

vs2008Multitargeting2

Mesela .NET Framework 2.0 ile gelitirdiğiniz bir uygulamanız var, projenizin özelliklikler kısmından hedef platformu seçerek .NET Framework 3.5 ‘a geçebilirsiniz. Eğer ASP.NET projesyse bu ve Ajax kullanıyorsanız 3.5 ‘a geçtiğiniz zaman zaten kendi içinde bulunduğu için ayrıca bir ASP.NET Ajax yüklemenize de gerek yok.

Şöyle bir soru akıllarınıza gelebilir, ben zaten .NET Framework 2.0 ile çalışıyorum, Visual Studio 2005 kullanıyorum peki neden 2008 ‘i geçeyim? Düşünün ASP.NET 2.0 ile geliştirdiğiniz bir uygulamanız var sonuç olarak bunu VS2005 de VS2008’de calıstırıyor? Bunun aslında birkaç nedeni var. En önemli neden VS2008 ile gelen özelliklerden faydalanmak isteyebilirsiniz. Javascript intellisense, javascript debugging, Nested Master Page design desteği, daha zengin ve kullanışlı bir CSS desteği ve yeni gelen diğer önemli özellikler. Tüm bunları zaten var olan uygulamalarınızda kullanabilir ve daha hızlı ve kolay bir geliştirme yapabilirsiniz.

Visual Studio 2005 ile geliştirdiğiniz bir projeyi VS2008 ile açtığınız zaman upgrade yapayım mı diye sorar eğer yapma derseniz hedef platform .NET Framework 2.0 olarak ayarlanır. Visual Studio 2003 ile geliştirdiğiniz projeyi açtığınız zaman VS2005 deki gibi bir upgrade wizard var .NET 2.0 a gore ya da en yeni sürüme göre yükseltebilirsiniz.