Visual C+ +

Çoğunlukla yazdığı programlardan güç beklentisi olan programcıların bu platformun tüm özelliklerinden faydalanması mümkündür.CLR ve . NET altyapısının pek çok faydalarına rağmen, bazı programcılar hala uygulamaları geliştirirken, Windows işletim sisteminin tüm genişlik ve derinliklerine güvenerek uygulamalarını oluştururlar. Geleneksel olarak programcılar, sistem verimliliğini en iyi kullanan kodu yazmak sistem tarafından sağlanan kaynaklara(disk,hafıza) en etkili erişimi sağlamak amacıyla Visual C++ ortamını seçmişlerdir. Visual C++.NET bu geleneksel yöntemlerin devamını sağlamayı hedeflemiştir. Tabi bunu yaparken Win32 API den sıklıkla faydalanır. C++.NET aynı zamanda .NET Framework ve yönetilebilir CLR nin bir çok imkanına erişmeyi de sağlar.

Güç Yönelimli(Power-Oriented) Geliştirme

Bir çok durumda geliştiriciler, işletim sisteminin sağladığı bütün imkanlara erişmek isterler. Microsoft, bu imkanlardan soyutlanmış yada tamamen bu imkanlar üzerine kurulmuş değişik araçlar tasarlamıştır. Bugün itibariyel .NET framework sağlam uygulama geliştirmek için bu imkanların birçoğunu sunarken yinede işletim sisteminin bütün yeteneklerini içinde barındırmaz. Güç yönelimli(Power-Oriented) geliştirme araçları, programcılara bu dilin tüm özelliklerinin yanında, uygulamanın gerektirdiği çözümlerin de kolayca çözüme kavuşabileceği kütüphaneleri sağlar.

Hangi Programcılar Neden VB.NET'i Seçmelidir?

Visual C++, aşağıdaki tipteki programcılar için ideal bir dildir.

• Win32 tabanlı bileşen ve uygulama geliştirmek isteyen programcılar : Günümüzde programcıların bir grubu, native windows tabanlı uygulamalar yapmaya ihtiyacı vardır. Bu programcılar bu tr uygulamalar için Win32 API yi ve native(doğal) C++ kütüphanelerini kullanırlar. Visual C++.NET 2003, bu tür uygulamaların performansını daha iyi yönde etkileyebilrcek bir takım derleme parametrelerine sahiptir.

• Win32 tabanlı uygulamalar ve .NET ile geliştirilmiş uygulamar arasındaki boşluğu doldurmak isteyen programcılar : Halihazırda yazılmış olan bir çok uygulama, karmaşık kodlar yüzünden, zaman, ücret veya bir çok nedenden dolayı .NET Framework kullanılarak yeniden yazılamayabilir. Visual C++ ile programcılar, var olan uygulamalarının genişleterek devamını .NET Framework çatısı altında geliştirebilirler. Üstelik daha karmaşık bir WinAPI altyapısını da kullanma imkanına kavuşurlar. Microsoft C# ve ya Visual Basic Windows API lerine erişimi sağlarken, C++'a karsı bir rakip olarak tasarlanmadı.

• Uygulamaların ana olarak performansı ile ilgilenen programcılar : Uygulama tasarımında ve çalıştırılmasında C++ geliştiriciye geniş bir kontrol imkanı sunar. İleri düzey geliştiriciler C++ kullanarak diğer dillerde geliştirebilecekleri uygulamalardan(native Windows yada .NET tabanlı) daha hızlı ve etkili çalışan uygulama tasarlayıp implemente edebilirler.

• Farklı platformlar arasında çalışabilecek program geliştirmek isteyen programcılar : Yalnızca C++ dili ISO standartlarını içerir ve gerçekten taşınabilir sentaksı, her sistemde çalışabilecek bir yapı içerir. Visual C++.NET 2003'ün genişletilmiş standart uyumluluğunu sağlarken aynı zamanda programcılara ileri seviye dil özelliklerini ve bir çok işletim sisteminde bulunan popüler sınıf kütüphanelerini kullanma imkanı sunar.

C++.NET Diline Has Özellikler

Visual C++. NET, ileri düzey yazılımcılar tarafından büyük bir taleple karşılan kendine has bir takım özelliklere sahiptir. Bu özelliklerin hepsi C++.NET'i .NET dilleri arasında en güçlü kılmaya yetmektedir.

• Şablonlar(Templates) : Büyük ölçüde C++ diline has olan şablonlar yeniden kullanılabilirliği ve performans artışı gibi bir çok önemli özelliği sağlamaktadır.

• Göstericiler(Pointers) : Göstericiler, C + + geliştiricilerine makinenin yerel hafızasına doğrudan erişebilmesini sağlar ve böylece en yüksek seviyede performans elde edilir.

• Çoklu Türetme(Multiple Inheritance) : C++, hemen hemen tüm OOP desenlerini implemente etmeyi sağlayan ve bütün OOP özelliklerini uygulamaya geçirecek özelliklere sahiptir. Çoklu türetme de bu özelliklerden biridir.

• Intrinsics : Intrinsics'ler, geleneksel programlama tekniklerinde olmayan bir takım yeni özelliklere erişmeye imkan sunar. Örneğin MMX ve AMD 3D Now! registerları ve komutları.


C++.NET Geliştirme Ortamına Has Özellikler

Visual C++.NET 2003 geliştirme ortamıda daha esnek ve daha gelişmiş uygulamalar geliştirmek için bir takım özellikler sağlar.

• Derleyiciyi optimize etmek : Visual C++ derleyicisi bir çok geliştirme seneryosu için derleme işlemini optimize edebilir. Bu seneryolardan bir kaçı : MSIL üretimi, kodun çalışcağı sisteme özgün optimizasyon, floating sayı hesaplamalarının yoğun olduğu derlemeler.

• Çalışma zamanı kod güvenliği kontrolü : Programcılar kötü niyetli ataklara karşı derleyicinin ileri seviye özelliklerini kullanarak daha güvenli Windows tabanlı uygulamalar geliştirebilirler.

• 32 bit ve 64 bit desteği : Visual C++.NET derleyicisi 32 ve 64 bitlik Intel ve AMD mikroişlemcilerine ve yönelik gömülü mikrpişlemcilere yönelik ölçeklenebilir kod üretebilmektedir.

• İleri düzey hata raporlama : Uygulamalar daima programcıların hatalarından etkilenirler. Minidump teknolojisiyle Visual C++ geliştirme ortamı, uygulama geliştirme uzmanlarına hataların kolayca belirlenmesine yardımcı olur. Üstelik derlenmiş kodda bile bu hatalar kolaylıkla rapor edilebilir.

• Gelişmiş hata ayıklama(debug) : Visual Studio hata ayıklayıcısı aynı anda hem native hemde yönetilebilir kodda hata ayıklama desteğini benzer bir şekilde sunar.

Gelecekte, Visual C + + . NET Programcilara yardim etmek için daha güçlü özellikleri içerecek.

• Generics : Parametreli kod algoritmalarını yeniden kullanılabilirliğini sağlamayı hedefleyen çalışma zamanı(run-time) teknolojisi.

• Yönetilen(Manage) tiplerde şablonlar : Derleme zamanı C++ şablon sentaksının yönetilen(manage) tipler içinde kullanılabilmesi.