Programlama

C++’ın Geleceği

13.12.2007
Biliyorum biliyorum "ne lan bu C++ aşşaaa C++ yukarı" diyorsunuz içinizden (ulan sanki milyonlar okuyor :) ama napayım sardım bir kere bu dile, iyice öğrenmeden çıkmak yok :) Bugün de dll'ler konusunda bir iki birşey yaptım artık dll kullanımı konusunda rahatım denilebilir. Aslında C++ gerçekten hayran olunacak bir dil. Mesela şu aşağıdaki kodu inceleyelim :
using namespace std;
int a;
int& getir()
{
     return a;
}
int main()
{
    getir() = 80;
   
    cout << a << endl;
    return 1;
}
bu kodun çalışması sonucunda a'nın 80 döndüğünü görmek gerçekten heyecan verici ha değil mi dostlar? Kod çalışmassa falan sakın buraya yazmayın kafadan yazdım kodu :)
Neyse şimdi bu C++ olayının gelecekte ne gibi bir hal alacağını inceleyelim. Şimdi öncelikle şöyle bir durum var. C++'ı öyle notepad ile yazıp console'dan derlemek falan büyük projelerde olacak bir iş değil. O yüzden C++ dendiği zaman akla otomatik olarak IDE'ler geliyor. Nedir bu IDE? Integrated Development Environment'dir açılımı ve entegre gelirştirme ortamı olarak çevirdim gitti.
IDE dediğimiz zaman da C++ için (hatırlatalım her dil için ayrıdır) öyle çok fazla IDE gelmez aklımıza. Aslında baya bir IDE kasılmış durumda ama şu anda piyasada lider olan 2 tane IDE var ve bunlar Borland C++ Bıuilder ve Visual C++. Bu iki IDE'yi birbirinden ayıran en önemli özellik program yapmak için kullandıkları framework'ler. Şöyle açıklıyıvereyim :
Borland C++ Builder : Efendim gönüllerin baştacı olan bu IDE'nin altyapısında deplhi'de yazılmış olan VCL (Visual Components Library) dediğimiz kütüphane vardır ki of aman allahım oooof! Muhteşem düzenli, neredeyse Dotnet Framework kadar rahat kullanılan bir kütüphanedir. C++ builder ve VCL kullanaraktan Windows Form'ları oluşturmak bunlara kod yazmak ı kadar basit o kadar hızlı gerçekleşen bir süreçtir ki hemen bu IDE'nin asıl olayının RAD (Rapid Application Development) olduğunu anlarsınız :) Yalnız bunca güzelliğin içerisinde öyle lanet öyle beter bir editoru vardır ki illallah dersiniz. İşin kötüsü bu editor'u visual assist gibi ek programlarla güzelleştiremessiniz (Ben baya bi araştırma yaptım bu konuda) öyle kötü bir görünümle yavaaaş mı yavaş çalışır durur. C++ Builder'ın bir sonraki sürümü Delphi 2006 (Kod Adı Dexter) ile bütünleşik olacak ve görünen o ki editor'un en azından görüntüsü konusunda baya bi ilerleme kaydedilmiş durumda heyecanla bekliyoruz :)
Visual C++ : İşte Microsoft'a "öyle veya böyle adamlar IDE yapmayı biliyıor kardeşim" sözlerini ithaf etmemize sebep olan IDE. Borland'dan farklı olarak MFC (Microsoft Foundation Classes) isimli kütüphaneyi bünyesinde barındırır ki MFC kullandığımız zaman aaaah ah VCL'in gözünün çapağını yalıyim! yakınmalarınu durmadan yaparız. Lakin WXWidgets, QT gibi C++ için önemli kütühanelere Borland'dan daha güzel bir destek vermektedir ve editorü... OOOOF OF! o editörü harikadır harika! Hele hele Visual Assist ile beraber kullanırsanız kodların parmaklarınızdan akıp gittiğini hissedersiniz. VCL Form design olayı ile VC++'ın editorunu birleştirmeye çalışsam da Borland'ın C++ standartları dışında kullandığı keyword'ler yüzünden (öncelikle __published keyword'u) ne yazıkki bu çabam başarısızlıkla sonuçlandı. Yeni gelecek olan Visual Studio 2005 ile MFC 5.0'ın çıkacağı ve bu kütüphanenin managed (yani dotnet tabanlı) olacağı şeklindeki haberler zaten soğuk olduğum MFC kütüphanesinden iyiden iyiye soğumama sebep oldu. Lakin hastası olduğum bir program olan Adobe Premiere programının MFC ile hazırlanmış olması da bu kütüphaneye tamamen sırtımı çevirmemi engelliyor a dostlar :)
Benim görüşüme göre MFC 5.0 Dotnet Framework'un biraz daha performanslısı olarak yoluna devam edecektir ki microsoft'un MFC'yi bitirme planlarından döndüğünü de unutmamak gerekir. Yalnız dotnet framework gibi derli toplu bir kütüphane varken ne diye managed MFC kasılır onu hiç bilemiyecem. Artık performans o kadar da ön planda değil. Hadi performans önemli ise managed'a hiç bulaşmadan C++ ile işlerimi hallederim rahatlarım be birader.
Bu arada halen gelişmekte olan Wxwidgets ve QT kütüphanelerini de unutmamak gerekir. QT'nin kodları daha çok hoşuma gitse de bir türlü tam anlamıyla kuramadım :) Wx ile bir iki bir şey yaptım ama daha taşaklı olarak tabir edebileceğimiz bir çalışma çıkmadı. Şimdilik DLL aşşağı DLL yukarı kasıyorum işte :)
Hadi yeter parmaklarım yoruldu be birader.

Bunları da Oku, Sorucam

Yorum Yok

Yorum Yaz