Cuma, Nisan 20, 2007

Cross-Platform Programlama 5

Diğer Cross-Platform Kütüphaneler

İhtiyacımız sadece GUI ve Database olmadığına göre tespit ettiğim diğer kütüphanelere de bir göz atmanızda fayda var.

LibCurl : Internetle olan pek çok işinizde kullanabileceğiniz bir kütüphane.
FTP , FTPS, HTTP, HTTPS, TELNET, DICT, FILE ve LDAP gibi protokolleri
destekler.Ücretsiz dağıtılan istemci taraflı , güçlü ve kullanımı basit URL transfer
kütüphanesidir. libcurl HTTPS sertifikalarını http POST , HTTP PUT , FTP ile dosya aktarımı kerberos , http form tabanlı dosya aktarımı , Proxy , cookies ( çerezler ) , kullanıcı doğrulaması (user + password authentication ) , dosya transferi tekrarı ve daha bir çok yöntemi destekler.
Libcurl bir çok platformda çalışmak üzere tasarlanmıştır. Solaris, NetBSD, FreeBSD,
OpenBSD, Darwin, HPUX , IRIX, AIX, Tru64, Linux, UnixWare, HURD, Windows, Amiga, OS/2, BeOs, Mac OS X, Ultrix, QNX, OpenVMS, RISC OS, Novell NetWare, DOS ve daha bir çok işletim sistemi üzerinde kullanılabilir.
libcurl , ücretsiz , hızlı , IPv6 uyumlu , ve daha bir çok zengin özelliğe sahip olan bir
kütüphanedir. *

Audiere : Blog'umu takip ediyorsanız okumuşsunuzdur. Ses kütüphanesi Ogg Vorbis, MP3, FLAC, sıkıştırılmamış WAV, AIFF, MOD, S3M, XM, ve IT ses dosyalarını çalabilirsiniz. Linux ve windows üzerinde kullanabilirsiniz. BluePlayer da Audiere kütüphanesi kullanılarak yazıldı.
Kullanımı ile ilgili yazı Audiere Ses kütüphanesi kullanımı

Irrlicht: 3D oyun programlama için kullanabileceğiniz bir kütüphane bakınız Code Blocks ile Irrlicht 1, 2, 3, 4, 5, 6,7, 8

Allegro : Oyun programlamayla ilgili bir başka kütüphane bakınız Code Blocks ile Allegro kullanmak

OpenCV: Intelin sponsorluğunda geliştirilen ücretsiz bir Görüntü işleme kütüphanesi. Fakat sadece Görüntü işleme kütüphanesi değildir bakınız . Özellikler CodeBlocks ile OpenCV Fl_OpenCV
FANN : FANN bir Yapay Sinir Ağı - Artifical Neural Network- kütüphanesi
bakınız Code Blocks ile Yapay Zeka ! , Harf Tanıma Bir YSA uygulaması


FGA : FGA sadece tek bir başlık dosyasından -fga.h- oluşan kullanımı kolay template library. Eğer thread kullanmazsabız başka bir şey istemiyor sadece include etmeniz. fakat destek olmak lazım deneyip hataları yada eksiklikleri varsa bildirmek lazım. Bakınız 1, 2, 3, 4

TinyXML: xml parser

SDL: Simple DirectMedia Layer is a cross-platform multimedia library designed to provide low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL, and 2D video framebuffer.

OpenGL: İsmini duymayanınız yoktur herhalde, GLUT yada FLTK ilede kullanabiliyorsunuz
Bakınız : 1, 2, 3, 4

Sonuç : Ihtiyacınıza göre daha pek çok kütüphane bulabilirsiniz. Gözünüz korkmasın RAD ortamlarına alışmışsanız başlangıçta size zor gelebilir. Fakat Bütün kütüphaneleri dört dörtlük kullanıyor olmanıza gerek yok, Kütüphaneleri genel olarak tanımanız yeterli ihtiyaç duyduğunuz da hangisini kullanmanız gerektiğini bilip o konuda yoğunlaşırsınız.

6 yorum:

davud dedi ki...

E-mailin olmadığı için buralara yazıyoruz. Benimki biraz maymun iştahlılık. Ama senin şu C içinde Lisp yazının içerisindeki Alıntı gibi... "Sonunda aydınlanma var"
Önce Fortran gördük. Sonra Turbo C, Allah..Bütün problemleri bunla çözeriz Yalnız! Visual olsa derken C++Builder çıktı. Uff yaşadık derkeeen... Aslında benim birçok işimi Matlab'ın son versiyonunun karşıladığını gördüm. Hatta okadar şey yapıyorki. Alfa yayınları İçeriğini, türkmen Kitabevi Tools araçlarını anlat anlat bitiremiyor.

Bir arkadaşım yapay zeka ile market satışlarının artırılması hakkında bir konudan bahsetti.. Bir kitapta "İçecek" alanların, Çocuk bezi de aldığını belirlendiği, Çocuk bezi ile İçecek reyonunu yanyana getirdiklerinde Çocuk bezi satışının arttığı yazıyormuş. Bunu Duyduktan sonra Bulanık mantık,YZ gibi konuları birazcık araştırdım. Lisp ve Prolog karşıma çıktı.
Acaba Sadece bunlarla mı Yapay z. soruları çözülebiliyor derken C/c++ da da Genetik metoduylaa çözülen ...Programını buldum. YZ için Bütün programlar kullanıabilirmi? Elimde SWI-Prolog var. Basit örnekler lazım(Kodlar) Neyi nasıl yaptığını anlamak için. Bİde Bunu anlatan sende Kaynak varmı acaba;?
Kolay gelsin Derin Deli Mavi

bluekid dedi ki...

C / C++ ile Yapay zeka konusunda program yazabilirsiniz.
Prolog Mantıksal programlama üzerine bir dil
Lisp is Fonksiyonel Programlama Denen Çok esnek bir yapıyla bu alanlarda kullanılıyor.
Prolog yada Lisp hakkında fazla birşey bilmiyorum.
e-mail adresime artık profilden Ulaşabilirsin.

yagi dedi ki...

Üstadım blogunuzdaki Cross platform uygulamalar ve pratik YZ uygulamaları epey yol gösterici, öncelikle teşekkürler.

Daha evvelden kullanmamıştım. C::B (svn 4767 build 2-an-2008) ı indirdim, mingw derleyicisi ile kurdum. Konsol uygulamalarında sorun yok. Ancak 3. parti kütüphaneleri yüklemeye başlayınca sorunlar başladı. Mesela yazılarınızdaki gibi FLTK yüklemeye çalıştım, ancak Devpak installer da görünmüyor. fltk.org dan indirip global variable tanımlamaya çalıştım o da olmadı.

Aynı şekilde wxwidgets ı önce devpak ile, sonra burada (http://wiki.codeblocks.org/index.php?title=Compiling_wxWidgets_2.8.6_to_develop_Code::Blocks_%28MSW%29)anlatıldığı şekilde derlemeye çalıştım gene olmadı.

Hem fltk hem de wxwidgets için sorunsuz kurulumunu nasıl yapacağız? Yeni bir öneriniz öneriniz olursa seviniriz.

yagi dedi ki...

Bu arada platform windows dur. Sanırım email atsam daha iyi olacaktı.

bluekid dedi ki...

aslında haklısınız mail atsanız daha iyi olurdu :)
Epeydir ben Devpak'ı kullanmıyorum
MSYS kullanmaya başladım.
Neyse konuyu değiştirmeyelim
Bir kütüphane kullanmaya kalktığında derleyici senden header ve library dosyalarının yerini göstermeni ister. Düzgün şekilde gösterememişsen çalışmaz. OpenCv ye giriş 1 de nasıl gösterileceğinin örneği var.
Devpaklara gelirsek onlar aslında sıkıştırılmış lib ve include dosyalarıdır. kendin 7zip ile açıp Kullanabilirsin.
Daha olmadı mail at konuşalım

yagi dedi ki...

Hocam teşekkürler. Tüm kütüphaneler bir şekilde kuruluyor.

wxwidgets 2.8.7 kurarken ilk mesajımdaki link ve ayrıca şu linkte
http://wiki.codeblocks.org/index.php?title=WxWindowsQuickRef
verilen noktalara dikkat etmek gerekebilir.