PDA

Tam Sürümünü Görmek İçin : Kütüphaneler???


paranoyak
04/08/2004, 23:31
Selam arkadaşlar aranıza yeni katıldım, ve C++ a başladım yavaş yavaş ilerliyorum bir kaç sorum olacak;

ya kafama birşey takıldı, şimdi bir yazı okuyordum, orda MFC'den falan bahsediyor, ya nedir bu MFC biraz açıklarmısınız, yani bir sınıf kütüphanesi anladığım kadarıyla, ayrıca STL'yi biliyorum o da taslak kütüphanesi, ayrıca OWL,OCF var, iyide niye bunlar bu kadar çok, bu kütüphaneleri biraz açıklarmısınız???

hepsi ne işe yarıyor?? içlerinde bazı uzun işlemleri kısaltan sınıflar ve algoritmalar falan var bildiğim kadarıyla, Şimdi bende şöyle bir ön yargı var; eğer birşeyi hazır kullanıyorsam, bu, programı yavaşlatır, yani onu kendim yazarsam daha hızlı olurmuş gibi geliyor, doğru mu, yanlış mı?? hazır string sınıfı yerine kendim işaretçilerle yapasam daha mı hızlı olur örneğin???

ve son olarak bu kütüphanelerden hangisi daha iyi??? aslında içeriklerini tam bilmediğim için bunu soruyorum, belki hepsi ayrı bir şeyler yapıyordur ama genede sorayım dedim saolun...


Euclides
05/08/2004, 00:17
Giriş
Programlar kendi başlarına hiçbir giriş/çıkış işlemi yapamazlar(Bi başka değişle bir program kendi gücü ile ekrana "Hello World" yazdıramaz) Yapmak istedikleri işlemleri işletim sisteminden talep ederler.
Windows'da genelde bu talep sisteminin adına kısaltılarak WinAPI yada win32API denir
(API=Application Programming Interfaces)

Kütüpaneler ne işe yarar ?
API'ler ile programın arasına girerler ve zaten çook kolay olan WinAPI sisteminin daha da kolaylaştırlar.(YADA aksine boş yere anlamsız ifadelerle zorlaştırırlar)
Her ne kadar VCL gibi kütüpanelerin yazılış amacları böyle gözüksede aslında basit programların kolaylıkla Windows ve Linux için uyumlu hale getirimesinde büyük ölçüde kolaylaştırılar.(tabii ki hepsi değil !)

hazır string sınıfı yerine kendim işaretçilerle yapasam daha mı hızlı olur örneğin???
Çok doğru bir saptama.

ve son olarak bu kütüphanelerden hangisi daha iyi???
(Windows için)
1.Hiçbirini kullanmamak
2.MFC
3.VCL
4.GTK
belki doğru belki yanlış ama benim sıralamam böyle...

Volkan Uzun
05/08/2004, 00:30
hayir her konuda senin yazdigin hersey daha hizli olamaz, zaten adamlar bu isin icinde yillarca olanlar deligibi optimizasyonla ugrasirlar, bircok hazir string kutuphanesi vardir amacina gore farkli calisan.eminim seni yazdigin isaretciler kadar hizli calisanida vardir. ayrica daha da onemlisi hatalardan arinmis.
mfc = microsoft foundation class, win32 ile program yazmak ozellikle pencere islemleri, event handling cok fazla satir gerektiren islemlerdir, mfc ile bunlar classlara ayrilarak islemler daha kolaylastirilmaya calisilmistir.
bounds checker gibi bir programla mfc programlarin iincelersen bircok memory geri vermeme durumu gorursun, yani isin oldukca kolaylastiran bu kutuphanenin biraz eksik yonleride vardir.
ben win32 ve mfc kullandigim icin digerleri hakkinda bisi diyemem ama mfc de bir ogrenmce sureci var ilk basta yavas gelisen sonra hizlanan.
win32 ise her zaman iyi ama zahmetli.

acehreli
05/08/2004, 01:24
MFC'nin icinde standart C++ kutuphanesinde olan olanaklarin esdegerleri de vardir: CList, CString, vs.

Onlari kullanmaktansa standart kutuphanedeki karsiliklarini kullanmak daha yararlidir. Standart her yerde bulundugu icin, ogrenilenler de her yerde kullanilabilir.

pulsar
05/08/2004, 16:25
Bencve en iyisi GTK platformdan epey bi bağımsız ama çok ta kof bişi (Linux altında qt daha iyi aslında ama win için durum karışıyor yani demek istediğim lisans zımbırtıları). Ben küçük projelerde sadece API kullanıyom büyüyünce gerekli oluyorlar.

paranoyak
06/08/2004, 00:56
vay başıma gelene :) anlaşılan öğrenmem gereken birsürü yeni şey var :) neyse olsun bu azimle değil mermer, bütün kütüphaneleri bile delerim :)

paranoyak
06/08/2004, 01:11
Bu kütüphaneleri netten indirebilirmiyim??? adres bilen var mı? ve boyutu ne kadardır saolun beyler bu arada cevplarınız için

Euclides
06/08/2004, 01:15
bunların çoğu bedava değil
MFC, Visual C++ ile birlikte geliyor....
VCL, BOrland C++ Builder ile geliyor...

paranoyak
06/08/2004, 10:53
Hımm, peki saol, Euclides. Builder'ın deneme sürümü var, VC++ da bulurm tekrar saol

pulsar
09/08/2004, 15:00
Bence GNU bir şey bul . MCF yi ise sevmiyorum.