Yazılım Notları

uordek.esiyo.each

Archive for December, 2006

Ruby ile Dosya İşlemleri

Merhabalar, Bugün ruby’de dosya işlemleri ve ‘standart input/output’ olarak bildiğimiz konuyu işleyeceğiz. Öncelikle çok basit bir örnek verelim, ekrandan isim ve yaş bilgilerini alarak tekrar ekrana yazalım. Ve bunu yaparken tüm bu ‘input/output’ işlemlerine örnek vermiş olalım. [ruby] $stdout.sync = true # İşlemleri yaparken buffer kullanmaz, verilen işlemi anında yapar. p “Lütfen adınızı giriniz: ” [...]

Ruby’nin Çalışma Zamanı

Merhabalar, Bugünkü konumuz biraz daha ruby on rails’e yaklaşmak, ruby’nin dosyalar, çalışma ve tasarım zamanları ile ilgili bir kaç bilgi vermek olacak. Öncelikle bir konudan bahsetmek istiyorum, diğer birçok dilde çalışma zamanı ile tasarım zamanı birbirinden farklı ve ayrı kavramlardır. Örneğin C#’da programınızın derlenmesi ve çalışması ayrı zamanlarda gerçekleşir. Fakat Ruby’de bu kavram arasında herhangi [...]

Ruby’de Modül Yapısı – 2

Merhabalar bir önceki yazımızda module kavramına değinmiş ve basit anlamda kullanımını işlemiş be bu yazımızda da çok güzel bir mudule mixin örneği olduğunu söylemiştik. Şimdiki yazımızda Module kavramını daha da derinden işleyeceğiz. Öncelikle module ile class arasındaki farktan bahsedelim. Evet fark diyorum çünkü sadece bir-iki küçük fark var. Elbette temelde birbirinden çok farklı yapılar ama, [...]

Ruby Modülleri (Ruby Modules)

Merhabalar, Bugün Ruby’nin çok güçlü olduğu bir konuya değineceğim, modüller. Özellikle çok büyük uygulamalar yazarken, bazı durumlarda ‘Object Oriented’ tasarım yaklaşımının sınırlarını zorlamak gerekir. Günümüzdeki pek çok programlama dilinde olduğu gibi Ruby’nin tasarımcıları da ‘multiple inheritance’ kavramını desteklememiştir. Fakat bu özelliğin bulunmaması elbetteki bazı kısıtlamaları beraberinde getirmiştir. Bu engelleri ortandan kaldırmak için modüllerin kullanımı ve [...]

Yazılım Alt Yapıları (Software Frameworks)

Merhabalar, Yazdığımız programlar büyüdükçe, eğer herhangi bir methodoloji kullanmıyor isek, değişiklik veya eklenti yapmak gittikçe zorlaşır. Yazılımcılar, bu tür problemleri aşmak için “framework”ler üretmeye başladılar. Günümüzde, “framework” deyince çok geniş bir yelpaze karşımıza çıkmakta. Bu geniş yelpaze içerisinde istenilen özelliklere uygun bir yapı bulmak gittikçe zorlaşmakta. Belki bu yelpazeyi biraz olsun daraltmak ve kategorilere ayırmaya [...]

Ruby ile Başlangıç – Hata Yakalama – 2

Marhabalar, Daha önceki yazımızda belirttiğimiz hata yakalama sizlere yetmemiş olabilir. Bazı durumlarda tüm bu hata yakalama işlemlerinden daha sert bir şeye ihtiyacınız olabilir. İşte bu yazının yazılma nedeni bu :) Bir önceki yazımızda, diğer dillerde yer alan try..catch..finally kavramını tamamen destekleyen hatta fazlasını veren begin..rescue..else..ensure kavramı ile tanışmıştık. Daha fazla bilgi için. Bu yazımızda daha [...]

Ruby ile Başlangıç – Hata Yakalama – 1

Merhabalar, Ruby ile ilgili yeni yazıma başlamadan önce, The Marmara Pera’nın üstünde bulunan dev ekrana pazar günü saat 22:00 gibi “When you see that I hope, you know I loved you” yazan, aşık arkadaşı tebrik etmek isterim. Ben gördüm umarım görmesini istediğin kişi de görmüştür :) Bugünkü konumuz başlıktan anlaşılacağı gibi durum kötü giderse yapılacak [...]

Eclipse 3.3M4 Yayımlandı

Efsanevi editör Eclipse’in 3.3M4 versiyonu yayımlandı. Sanırım bir sonraki yayımlamada nihayi 3.3′ü duyuracaklar ama şimdilik M4 şeklinde yayımlanmış. Yüklemek için windows sistemlerde bu, mac sistemlerde bu, linux sistemlerde de bu linki kullanabilirsiniz. Bu habere ek olarak, eğer halen Eclipse ile tanışmadıysanız, tanışmanızı tavsiye ederim. Bu adresden 3.2 nihayi sürümüne ulaşabilirsiniz. Özellikle RadRails ile RoR (Ruby [...]

Ruby ile Başlangıç – Diziler

Ruby’nin en güçlü yanlarından biri dizilerdir. Dizilere erişim gerçekten çok rahat ve güçlüdür. Diziler C ve Java’da olduğu gibi ’0′ tabanlıdır. Bazı özelliklerine değinecek olursak; [ruby] # (“) isareti yerine baska bir isaret de kullanilabilir, (|) gibi. %w”Uordek israf karsisinda deli olur”.each { |item| p item } arr = Array.new # veya arr = [] [...]

DirectX Aralık Sürümü

Microsoft, DirectX’in Aralık sürümünü duyurdu. Bu sürümün diğer sürümlerden bir farkı var, bu sürüm içerisinde DirectX 10 mevcut. Elbette D3DX methodlarını gene değiştirmişler! Bu nedenle sizlere ufak da olsa bir örnek sunamıyorum. Ama SDK’nın download işlemini bitirir bitirmez bir “Hello World..!” tadında bir örneği buraya eklemeyi düşünüyorum. XACT haricinde diğer modülleri %100 Vista uyumlu olan [...]

Ruby ile başlangıç – Döngüler

Ruby ile Veri Tabanı serisi ve Ruby ile Resim İşlemleri yazılarının üzerine hiç yakışmıyor ama, yeni başlayanlar ve/veya Ruby ile çalışanlar için bazı ipuçlarıda barındıracak bir yazı yazmam istendi :) emir büyük yerden geldi öyle bakmayın :) Bu yazıdaki çerez konumuz ruby’de döngüler; Standart bir döngü.. # 0′dan 14′e döngü 15.times { |index| p index [...]

“Reflection” kullanırken “ref” parametreler kullanmak

Önceki bloğumda yazdığım bir yazıyı gelen sorular üzerine buraya da yazdım. Daha önceden okumuş arkadaşlara verdiğim rahatsızlıktan ötürü özür dilerim.. :) Bugün bir arkadaşımdan email aldım, kendisi “reflection” kullanırken nasıl parametrelerden birini veya birkaçını “ref” olarak nasıl geçebileceğini soruyordu. İnternet üzerinden araştırdığı söyledi fakat bulamamış, kendisine emaille yardımcı oldum. Zamanım da var enerjim de bir [...]

Ruby ile Veri Tabanı – 5

Gelen yoğun istek nedeni ile :p şu veri tabanı yazılarıma devam etme gereğini duydum.. Ama bu sefer az laf çok kod şeklinde bir yazı yazacağım yoksa yazıların sonu gelmiyor :). Önceki yazımızda “DbTool.rb” isimli çok güzel bir program parçası kullanmıştık, şimdi de onu kullanacağız. [ruby] require ‘DbTool.rb’ # Northwind veri tabanina baglanti kuruluyor. NorthwindConn = [...]

Ruby ile Resim İşlemleri

Ruby ile resim işlemleri (Image processing with Ruby) konusunda bir yazı yazma gereği hissetmemin nedeni, bazı arkadaşlarımın bana resim işlemlerinin nasıl olacağını sorması ve bununla beraber yüksek kaliteli ve bir klasör altındaki birçok resmin boyutlarını değiştiren bir programa (Multiple Image Resizer) ihtiyaç duymam oldu. Bu programa ihtiyaç duymamın rengi, arkadaşımın yeni aldığı dijital fotoğraf makinasının [...]

Ruby kodlarının renklendirilmesi

Geçen geçe internette gezerken yolum ruby corner‘a denk geldi.. Türkçe iki adet blog olduğunu görmek açıkcası biraz beni sevindirdi ve diğer bloğun kim olduğunu merak ettim ve inceledim. Bu arkadaşımız son yazısında Ruby kodlarını renklendirmekten bahsetmiş, çok da güzel bir örnek vermiş, ben de benimkisini nasıl yaptığımı açıklıyayım dedim. Standart ve güzel bir eklenti olan [...]