13 Aralık 2014 Cumartesi

REBOL Örnekleri

REBOL programlama dili birçok ihtiyacınızı karşılayacak programlar yazmada size yardımcı olabilir.

Editör olarak Programmers Notepad kullanabilirsiniz. Bu editörü indirdikten sonra add-on olarak Rebol dilinin scheme'sini indirip editör programını yerleştirdiğiniz klasörde diğerlerinin yanına koyarsanız Rebol diline uygun renklendirme yapacaktır.

Minimum Uygulama

Aşağıda bir pencere açıp üzerine kısa bir yazı yazan tek satırlık programı görüyorsunuz:
view layout [text "Merhaba REBOL!"]
 Programı çalıştırınca böyle bir pencere çıkar.


Bu kodu REBOL konsolda yazıp enter basarsanız direk çalışır. Ama bir dosyaya kaydedip çalıştırmak isterseniz biz REBOL başlık satırına ihtiyaç duyar:

REBOL [Title: "Örnek VID Script"]

view layout [text "VID Örneği!"]


Tamam öğrendik. Şimdi buton falan da ekleyelim uygulamaya yavaş yavaş.

view layout [
    vh2 "Dosya Listesi:"
    text-list data read %.
    button "Harika!"
]

Maşallah maşallah aldık başımızı gidiyoruz. Kodu sonra anlarız devam.


5 Mart 2011 Cumartesi

Prototype AJAX (keşke projax diye bir gem olsaydı)

Daha önce Prototype Ajax kabiliyetlerinden bir kısmını kurcalamıştım. Biraz daha derinlere dalmaya ancak fırsat bulabildim. Biraz da server tarafta betik koşturmaca yapayım dedim.

Twit gibi birşeyler


Ajax çağrıları aslında daha önce yaptığımız html yada text erişimleri yerine dinamik erişimlerde kullanılır. Yani gelecek olan cevap aslında gönderilen veriyle bağlı olarak server tarafta işlenerek oluşturulur.
Html formlarından server'a veri gönderip almakta kullanılan GET ve POST metodlarını kullanacağız. Ajax bu metodların ikisini de veri göndermek için kullanabilir.

Yeni denememizde twitter gibi yaptıklarımızı not alacağız (biraz benzer belki). Şimdi bir tane "twit.html.haml" dosyası oluşturalım ve daha önceki "index.html.haml" ile aynı klasöre koyalım :

7 Ocak 2011 Cuma

RubyQt ile Küçük Bir Zamanlayıcı

Özgürlük İçin... Pardus...
Qt Designer ile Ruby program denemelerim devam ediyor. Daha önce wxRuby ile yaptığım ve çok kullandığım bir uygulamayı Qt designer ile yapmaya karar verdim. Zamanlayıcı uygulamasını işlerimi "multitasking" yönetebilmek için tasarlamıştım. Program aslında çok basit bir geri sayıcı, ayarlanan süre sonunda beni uyarsın diye kuruyorum. Verilen süreyi geriye doğru saydıktan sonra sıfıra gelince uygulama penceresini minimize edip büyüterek uyarıyor. Faydalı bir eser , aynı işte takılıp kalmamı engellemek için kullanıyorum.

22 Aralık 2010 Çarşamba

Protototototype Ajax Antremanı (Akıllı adamlar bulmuş)

Özgürlük İçin... Pardus...

Tok nefs sarhoş kafa gibidir, hiçbir şeyi düzgün yapamaz. Nefs dediğin aç olmalı , aç nefsin olunca bilincin açılır. Nefsi fazla doyurmayacaksın , burnunun dibindekini göremezsin.
Rails'de javascript yardımcısı olarak ana pakette Prototype ve Script.aculo.us javascript kütüphaneleri kullanılmış. Ajax konusunda araştırma yaparken güzel bir yazı buldum paylaşmak isterim.

Malzeme Listesi

1 Adet Pardus
1 Adet Ruby
1 Adet HAML gem
1 Adet Serve gem
1 Adet Prototype.js
1 Adet Firefox Tarayıcı
1 Adet Firebug Eklentisi

Tarif

3 Kasım 2010 Çarşamba

QT Designer Bölüm-2

Özgürlük İçin... Pardus...


Önceki yazıda RGB elde etmek için spinbox'lar ve slider'lar koyduk, ne güzel birbirine de bağladık. Bağladık ta ne renk olduğunu görmedik. Yaptık bi uygulama bari bir işe yarasın.


Qt kütüphanesi kullanırken nesneleri signal-slot bağlantıları ile birbirine bağlayabildiğimizi gördük. Peki biz bu sürgülerin gösterdiği değere karşı gelen rengi bir yerde görmek istersek ne olacak. 3 slider değerini tek bir nesnenin arkaplan rengine designer kullanarak bağlamamız mümkün değil. Bu durumda biraz kod yazmamız gerekecek.


Bu yazıda QtDesigner ile hazırlanan Ruby dosyası ile ayrı bir dosyada hazırladığımız kodları birleştireceğiz. İlk önce renklendirme yapmak için ekrana bir label ekleyeceğiz. Ardından bize lazım olan nesneleri isimlendireceğiz ve program yazacağız.

Önce QtDesigner'da eski "first.ui" dosyasını açalım ve "second.ui" adıyla kayıt edelim. Düzenleme modunda "Display Widgets" içinden bir Label'ı tutup formun en sağ kenarına çekip bırakalım. Sonra Label'ı çift tıklatıp yazısını silelim. Aşağıdaki şekil oluşacak: