GAMBAS “Gambas Almost Means BASic”

Bir teknoloji asla birilerinin tekelinde ve güdümünde olmamalı. Bilim evrenseldir. Teknolojiye bu felsefe ile baktığımızda, bazı şeyleri daha net görmeye başlayacağız. Bunun yanısıra, bazı kişiler algılarını tamamen “özgürlüğe” kapatarak, çevredeki “daha iyi alternatifleri” görememektedirler. Bunun sebebi elbette kısa vadede düşünmeleri ve anlık hesap yapmalarından kaynaklanmaktadır.

Özgür yazılım ve GNU/Linux felsefesi tamamen insanlığı ve insanlığın toplu olarak çıkarını ve rahatını düşünür. Bilimi, bilişimi, teknolojiyi tekele bırakmak istemez. Bu felsefeyi özellikle ülkemizde insanlar, yeni yeni kavramaya başladı. Bu iyi birşey. Bu aşamaya gelmemizde, elbette TUBİTAK/UEKAE‘nin Pardus projesi ile çok emeği var. Fakat gözden kaçırdığımız, benim de dahil, bazı şeyler var. 2. Pardus Tanıtım ve Geliştirme Günleri‘nde Özgürlükİçin topluluk yöneticisi Ali Işıngör “Özgürlükİçin Pardus ve Pardus Topluluk Süreçleri” sunumlarında “Üniversitelerin Bilgisayar Mühendisliği ve Bilişim Bölümleri, Microsoft dershaneleri gibi eğitim veriyor.” derken haksız da değildi. Bu yüzden bilişim insanları üzerinde, birilerinin çıkarı için, belirli bir konuda birikim var. Yani insanlara bazı teknolojiler, bazı platformlara bağımlı şekilde öğretiliyor. Bunun arkasında, kusura bakmasın kimse ama, ben “iyi niyet” arayamam. Mesela bizim bölümümüzde verilen programlama eğitimi yani Bilgisayar Programlama I dersi Microsoft Visual Basic 6.0 idi. Burada şu yanlış anlaşılmasın. Amacım bahsi geçen teknolojileri  kötülemek değildir. Sadece “Kapalı” ve “özgür olmama” konusu ve “tek platforma bağımlı olma” durumu eleştirilmektedir. Normalde bu “kapalı sistemin”, normal bir kullanıcı için yaklaşık $100 olan ve eğitim amacı için $15! olması bizim soyulmadığımız anlamına gelmez. Bunu en iyi eğitimcilerin anlaması gerekir ki; yeni nesiller adam gibi onların eseri oluversin. (Bkz “ 2. Pardus Tanıtım ve Geliştirme Günleri’nde, “Ama kardeşim! Eğitim amaçlı o sistem $15 diyen eğitimciye atıf.) Herneyse biz işimize dönelim. Bu konuda bir kamyon diyecek lafım var. (Bkz Çorum şivesi)

Dediğimiz gibi, insanlara bazı eğitimler tek platformda çalışır düzeyde veriliyor. Bunlardan biriside Visual Basic yani VB. VB programlama dilini bilen birisi Linux’a geçtiğinde, eğer sadece o dili biliyorsa, kendini eli kolu kesilmiş gibi hissedecektir. Doğal olarak karşısında iki seçenek olacaktır. Ya platform bağımsız bir dil öğrenecektir. Ya da Linux’a elveda diyecektir. E canım herkesin amacı da “Vay efendim ben “Özgür” olacağım” demek değil ki. Bazı kişiler de buradan para kazanmak isteyecektir. GNU/Linux ticari amaçla da kullanılabilir. Ama tek bir şartla “kaynak kodları vereceksin” . İstemediğimiz durum şudur. Bu kişinin Linux’u bırakması. Diğer seçenek, yani ilk seçenek ise zamanı olan birisi tarafından tercih edilecektir. Zaman kaybetmeden proje geliştirmek isteyen birisi, o yolu da tercih etmeyip. eski platformunda geliştirme yapacaktır ki; birazcık duygusal değil de mantıksal baktığımızda o şahsa yine hak vereceğiz.

Bu durumun haricinde başka bir güruh var. Bu güruh Linux’un doğru düzgün hiçbir yazılımı çalıştırmadığını zanneder. Sanki suç burada Linux’taymış gibi. “Linux bunu desteklemiyor.” Daha amiyane bir tavırla söylersek “Linux bunu kaldırmıyor!” deyip işkembe-i kübradan atmayı tercih ederler. Oysa ki Linux bir işetim sistemidir ve çok güçlü bir işletim sistemidir. Yazılımcı kişi ya da firma ona destek verirse “kaldıramayacağı!” bir yazılım yoktur.

Gelgelelim Gambas‘a. Wiki’nin söylediğine göre ;

GAMBASGambas Almost Means BASic, Linux altında görsel programlama yapmaya yarayan bir yazılımdır. Windows altında Visual Basic‘le programlama ile uğraşan programcılar ve Linux altında görsel programlamayı öğrenmek isteyen bilgisayar kullanıcıları için iyi bir alternatifdir. Benoit Minisini adlı programcı tarafından Açık Kaynak felsefesi ile geliştirilmektedir.

Gambas’ın kod yazımı her ne kadar Visual Basic’e benzese de ayrı bir dil olma yolundadır. Kod yazımlarındaki farklılıklar kullanıma geçildiğinde farkedilecektir. Visual Basic’te yazılmış olan kodlarınızı Gambas’a çevirmek üzere kullanılan bir betikte Gambas’ın resmi sitesinde yer almaktadır.

Gambas, çok hızlı gelişen bir programlama dilidir. Bir çok grafik kütüphanesine ve MySQL, PostqreSql gibi veritabanına destek vermektedir.

Şu anda programlama dilinin geçerli sürümleri; kararlı sürüm: 1.0.10, geliştirici sürümü: 1.9.20, kararlı sürüm: 2.20.2, geliştirici sürümü: 2.99 .

Gambas(meali İspanyolca’da karides) hakkında wikiden bilgilendirmeyi aldıktan sonra yapmamız gereken iş tabii ki kurmak:)

Gambas Ubuntu 9.10 depolarında deb paketi olarak mevcut. Ubuntu Yazılım Merkezi’nden “gambas” diye aratın ve kurun.

Pardus 2009.1 için ise birazcık yapmamız gerekenler var.

Adım 1: Gambas2 ve Gambas3 kodlarını yapılandırabilmek için aşağıdaki komutları sıra ile terminalde veriniz. Bunun için ;

Sistem> Konsole(Uç Birim) açalım ya da Alt+f2 tuşlarına basalım karşımıza gelen kutucuğa “Yakuake” yazalım karşımıza bir terminal gelecektir.(Bu terminali dilediğiniz zaman f12 ile çalıştırabilir ve kapatabilirsiniz.

$ sudo pisi install -c system.devel
$ mkdir trunk
$ svn checkout https://gambas.svn.sourceforge.net/svnroot/gambas/gambas/trunk/
$ cd trunk
$ ./reconf-all
$ ./configure

Adım 2: ./configure komutunu verdikten sonra karşımıza eksik paketler listelenecek. (qt , sdl, sqlite2, firebird, bz2lib) gibi.

Ben sqlite2, bz2lib haricindeki paketleri Paket Yöneticisi’nden kurdum. Kurulacak paketler, “firebird-client”, “sdl-sound” (eğer yine hata verirse tüm sdl kütüphanelerini kurmanızı öneririm:), “sqlite”, “qt” . Bu işlemleri yaptıktan sonra sadece “sqlite” ve “bz2lib” bileşenleri eksik kalacak ama siz yine de aşağıdaki komutları sıra veriniz:)

$ make
$ make install 

İşlem bitene kadar bekleyelim…

Herşey Tamam!

Adım 3: Çalıştırma; Terminalde ;

$ gambas3

…ve açılıyor!

Burada dikkatinizi birşeye çekmek isterim. Gambas‘ı her açmak istediğinizde Terminal’e “gambas3” komutunu vermeniz gerekecek. Bunu böyle yapmaktansa menüye ekleyelim. Şöyle ki;

$ kmenuedit

komutunu verelim. Karşımza KDE Menu Düzenleyici gelecek. Burada “Geliştirme” sekmesinin altına “Yeni Öğe” diyerek Gambas‘ı aşağıdaki ekran görüntüsünde olduğu gibi ekleyelim.

Görüntü 1 KDE Menü Editör

Menümüze Gambas‘ı ekledikten sonra projemize başlayabiliriz. Yalnız eğer sistemi ilgilendiren betikler yazacaksak. Gambas‘ı da yönetici hakkı ile çalıştırmamız gerebilir. Bunun için Kde Menü Düzenleyici “komut” bölümüne “kdesu gambas3” yazmamız gerekecek. Yalnız yönetici hakları ile çalıştırdığımız Gambas‘ta yazacağımız kodlara çok dikkat etmek gerecektir. Çünkü sorumsuzca yazdığımız her komut sistemizin çökmesine ve doğal olarak olası veri kaybına yol açacaktır.

Bu uyarımızı da yaptıktan sonra aşağıdaki ekran görüntüleri size yardımcı olacaktır. Artık proje oluşturabiliriz:))) Şöyleki;

Ekran görüntüleri sırayla aşağıda verilmiştir…


Görüntü 2 Gambas Açılışı

Yukarıdaki ekran görüntüsü Gambas 3‘ü açtığımızda karşımıza gelecek ilk ekran. Eğer daha önce oluşturduğunuz bir projeniz varsa Gambas size yukarıda olduğu gibi listeleyecektir. Benim önceden oluşturduğum network-manager isimli bir proje idi örneğin.

Gambas’ta “Yeni Proje” sekmesine tıkladığınızda aşağıdaki pencere ile karşılaşacaksınız. GTK+ ve QT başta olmak üzere, komut-satırı, SDL, CGI Web uygulamaları gibi pek çok seçenekle görsel programlama yapma olanağınız mümkün.

Görüntü 3 QT grafik uygulaması

Görüntü 4 Yeni Proje Oluşturma

Görüntü 5 Yeni Proje Yolu

Görüntü 6 Çalışma Mekanı:)

Artık iş tamamen size kalmış ben bir tane örnek programcık yazdım. Program çevredeki ağları buluyor.  Formun üzerine bir buton ve Listbox ekleyin. Butona çift tıkladıktan sonra içerisine; Buradaki kodu yapıştırınız. Sonra “Çalıştır” butonuna basınız.

Görüntü 7 Basit bir Programcık Örneği

Gambas’ta Proje> Oluştur> Kurulum Paketi yolunu izleyerek; Debian, Fedora, Mandriva Linux, OpenSuse, Slackware , Ubuntu, Autotools gibi dağıtımların hazır paketlerini ve kaynak kodlarını oluşturabilirsiniz. Yalnız, ben burada sayılan rpm tabanlı dağıtımlarda “rpmbuild mevcut değil” uyarısı aldım. Deb tabanlı olanlarda ise “debhelper mevcut değil” uyarısını aldım. Bunu belirteyim. Ubuntu‘da ise iki sayıyı toplayan programı deneme adına .deb paketi haline çok başarılı şekilde getirdi. İstenilen menü kategorisine de kısa yolunu attı. Pardus 2009.1 de de sorunsuz paket oluşturmak için çalışmalara başyacağım.  Belki inceleyen olur diye yukarıda yapılan programın kaynak kodunu veriyorum. Aşağıdaki linkten indirebilirsiniz.

Umarım yararlı bir çalışma sunabilmişimdir. VB’ciler sizleri Pardus’a bekliyoruz. Linux’a bekliyoruz 😉

Saygılarımla…

Yücel KILIÇ

http://yamci.com

Kaynak Kod:

İndirmek İçin Tıklayınız.

REFERANSLAR

1- http://gambas.sourceforge.net/en/main.html

2- http://en.wikipedia.org/wiki/Gambas

3-  http://tr.wikipedia.org/wiki/Gambas

4- http://www.ozgurlukicin.com/