java, play framework, scala, yeni teknolojiler
Google 13 Mart tarihinde bazı uyuglamarını kapatacağını duyurudu. Bu uygulamalardan birisi olan google reader kapatılması ise birçok kişi gibi ben de garip karşıladım. Bu sıralarda ise feedly yeni keşfetmiştim. Neyseki feedly bir çalışma yapaçağını duyurdu. Benim gibi günde 500 den fazla blog’u takip eden birisi için güzel bir haber bu.
Ben uzun bir süre önce blog’umu wordpress’ten posterous taşımıştım. Posterous twitter tarafından satın alınmıştı. Bu nedenle posterous tercih etmiştim. Ne varki bir kapanış haberi de posterous’tan geldi. Bu esnada http://www.squarespace.com da...
Devamını Oku...
Yeni Türk Ticaret Kanunuyle birlikte borsaya kote olan firmaların genel kurullarını elektronik ortamda yapma zorunluluğu geldi. Bu projenin geliştirimesi Merkezi Kayıt Kuruluşu verildi. Bu kapsama geliştirdiğimiz Elektronik Genel Kurul projesi FSTech te “Best Use of Online Service” finale kaldı. Bu kapsamda 17 Nisan tarihinde Gala gecesine katılmak üzere Londra’ya davetliydik. 17 Nisan tarihinde Londra’da yapılan gala gecesinde, “Best Use of Online Service” dalında ödülü bizim geliştirdiğimiz EGK projesi kazandı. Oldukça yoğun bir çalışma sonrasında böyle bir ödül kazanmak, bütün çalışmamıza değdi açıkcası.


Scala ile bir asal sayının tespiti aşağıdaki gibi bir kod ile bulmak mümkün. Bu kod parçası scala’nın ne denli güçlü olduğunu göstermeye yeterli bence. Daha sonraki yazılarımızda scala ile daha detaylı bir yazı yazacağım.
Scala ile Asal Sayı Tespiti
27 Oct 2012 Yazan Ramazan AYYILDIZ
def isPrime(n:Int): Boolean = (2 until n) forall (d => n % d !=0)
Chicago da gerçekleştirilen SpringOne2GX etkinliği kapsamında epey ilginç ve de güzel seyler gördüm. Etkinliğin son gunü, paralel giden konferanslardan sonuncusunda herhangi bir bilgimin olmadigi ve diğer konuları beğenmediğinden dolayı Griffon a katılmayı tercih ettim. Hakkında çok az şey biliyordum. Ancak sunu soylemeliyim ki etkinlik kapsamında bu kadar beni şaşırtan konu olmamıştı. Bu nedenle hakkında bazı bilgileri paylaşma gereği duyuyorum.
Eğer Groovy ile program yazdıysanız, hele de grails ile proje geliştirdiyseniz, griffon size çok kolay gelecektir.
Griffon grails gibi proje geliştirmek için gelistirilmis bir proje. Griffon JSR 295 ve JSR 296 uyumlu. Su an itibariyle 170 ten fazla plugin e sahip.
... Devamını Oku...
Uzun süredir beklediğim SpringOne 2GX ilk gunü geride kaldı. Katılımın yüksek olacağı bir etkinliğe benziyor. Bugün gerçekleştirilen “Keynote” çok kalabalıktı .Bu kadar kalabalık olacağını tahmin etmemiştim.
“Keynote” bir hosgeldiniz ve etkinlik kapsamında hangi konuların islenecegi bilgisinin verildiği bir toplantiydi.

SpringOne ilk süprizini Keynote da öğrendik. Rod Johnson kolunu kırmış olması ve doktorunun uçma yasağı nedeniyle etkinliğe katılamamasiydi. Ben SpringOne ilk kez katılıyorum ama ben bile etkinliğin Rod olmadan başladığını hatırlamıyorum. Bu Rod un katılmadığı ilk etkinlik olacak. Bunun yaninda Graeme Rocher soğuk algınlığı almış herhalde, sesi çok kötüydü.
Etkinlik kapsamında başlıca islenilecek konular: Spring...
Devamını Oku...
24 Ekim de başlayıp 28 Ekim tarihleri arasında sürecek olan SpringOne 2GX katılmak üzere Chicago ya geldim. Açıkcası Amerika gibi bir ülkeye gelmek bir nebzede olsa insanı geriyor. Bilmediğin bir yer oluşu, gerek yemek gerekse yasam tarzının farklılığı, dil gibi konularda dusunuyorsun. Bütün bunları düşünürken süren 11 saatlik uzun bir uçak yolculugu ise ayrı bir zorluk.
İlk geldiğim gün hiçbir yeri tanimayisimdan dolayı zorluk çektim elbette. O ilk gunün ardından ise sehri tanımaya başlayınca anladım ki çok da farklı bir yer değil burası. Tam tersine İstanbul da sahip olamadığımız o kadar çok güzellikleri var ki burada; kesinlikle görülmesi gereken yerlerden...
Devamını Oku...
Daha önceki yazımda groovy ve grails’in nasıl kurulacağı bilgisini vermiştim. Bu yazımda ise groovy programlamaya başlayacağız.
Groovy java programlama diline alışkın kişilerin, Python, Ruby, Smalltalk yer alan özellikleri kullanabilmesine olanak sunan agile bir programlama dili olarak tanımlanıyor.
Groovy JVM üzerinde çalışır ve tüm groovy nesneleri java.lang.Object ten türemiştir. Groovy ile yazılan bir nesne derlendikten sonra bytecode a cevrilir. Oluşan *.class dosyasını classpath’inize eklenerek java tarafından kullamabilirsiniz. Yani java’dan groovy’ye, groovy den ise java’ya erişmek cok kolaydır.
Groovy’ de “;” kullanma zorunluğu yoktur. Groovy mevcut dilin kütüphanelerin dışında, diğer kütüphaneler ve JDK yer alan özelliklerin yer aldığı GDK’den oluşmaktadır
Groovy...
Devamını Oku...
javada, Vector ve ArrayList arasındaki farkın ne olduğunu sorulduğunda, genel olarak şunları söyleriz
Burada en çok Vector’un thread-safe özelliği öne çıkar. Yani Vector; ArrayList e göre, içindeki verinin doğruluğunu garanti eder. Hız olarak nasıl bir etkisi olduğuna ise inceleyelim.
Peki vector ve ArrayList performans olarak nasıl bir farkı vardır. Bunun için örnek yazdığım uygulamayı http://github.com/rayyildiz/PerformanceTest inceleyebilirsiniz.
Performans karşılaştırılmasında 100.000 tane rastgele oluşturulmuş sayılar eklenip, işlem yapılmaktadır.
... Devamını Oku...
Tasarım desenleri hakkında giriş mahiyetindeki yazıma buradan ulaşabilirsiniz. Bu tasarım desenlerinden yaratım desenleri grubundaki ikinci desen yapıcı tasarım desenidir (Builder Design Pattern).
Yapıcı tasarım deseni, nesnelerin yapıcı metotlarını soyutlamak suretiyle gerçekleştirilmilerin farklı şekilde vekalet edilmesine sağlar. Peki bu nasıl olmaktadır, bunu bir örnekle pekiştirelim. Örneğin kahve yapıyorsunuz, kahve bildiğiniz gibi her ülkede farklı yapılır. Türkiye’de kahve küçük fincanda, genellikle şekerli olurken,- Brezilyadaki kahve aynı şekilde servis edilmez. Daha sonra yazılarımda göreceğiniz gibi Yapıcı tasarım modeli fabrika tasarım modeline benzer. Hatta soyut fabrika tasarım modeli ile de aynı şekilde yapabilirsiniz. Ancak bazı farklar vardır. Mesela yapıcı tasarım modelinde product dediğimiz nesnelerimiz...
Devamını Oku...
JDK6 da Dependency Injection (ServiceLoader)
DI ne olduğuna dair bir yazıyı buradan ulaşabilirsiniz. JDK6 da ise ServiceLoader gelmektedir. ServiceLoader sayesinde bir nevi DI sağlamış olmaktayız. Bunun nasıl yapacağımızı bir örnekle gösterelim.
Uygulamanın örnek test kodlarını github üzerinden bulabilmeniz mümkündür.
Bu örneği yapabilmek için 3 tane proje oluşturalım. Bu 3 proje ve açıklaması şu şekildedir:
UserAuth : Arayüzün yer aldığı proje.IUserAuthService diye bir arayüz yer almakta ve bu arayüz login diye bir metot tanımı içermektedir.
UserAuthImpl: Uygulamanın gerçekleştirildiği sınıf yer alır.
UserAuthTest: Main sınıfının yer aldığı örnek uygulamadır.

Arayüzün yer aldığı UserAuth projesinde...
Devamını Oku...