25 Mart 2009 Çarşamba

Adobe Flex RIA Dünyasının Gerçek Başlangıçı

Web 2.0 öncesi dinamik web sayfalarımız ve onlardan beklentilerimiz oldukça basitti. Daha önceden mevcut olan Javascript , XMLHTTPRequest in birleşimiyle AJAX icat oldu sayfalardan beklentilerimiz arttı. Adını bile sayamıyacağımız kadar javascript , AJAX kütüphaneleri çıktı karşımıza birkaç insan bu frameworklere gerek duymadan kendi başlarına modüler olmayan javascriptlerle işlerini gördüler. Ancak burda dananın kuyruğunun koptuğu nokta javascript , css kullanılarak yaratılan bu kütüphanelerin her ne kadar her türlü browser da çalışma iddiaları olsa da pratik anlamda pek öyle olmadığı görüldü. En azından desktop application'ı kıvamında web uygulamaları yazmanın bu frameworklerde ezziyet olduğunu gözüm kapalı söyleyebilirim.
***
Lütfen şimdi bu işlere derinlemesine bulaşmaktan kaçınmayacak dirty programmerlar ve kütüphane geliştirecek kadar iyi javascript , CSS bilgisi olan arkadaşlar ne saçmalıyor bu cahil demesinler. Benim baktığım RIA dünyasında görmek istediğim WYSIWYG'den ibaret ve bunu şu ana kadar en iyi yaptığını gördüğüm Adobe Flex , open source , arka plandaki server teknolojisinden bağımsız , tüm browserlarla uyumlu. Zorlukları ne actionscript , client side'ın bazı tecrübesiz programcılar tarafından saçma sapan şekilde yazılabilme ihtimali. Ancak tüm bunlara rağmen geleceğin en azından kapsamlı web uygulamalarının flex ve benzeri RIA araçları ile yapılacağını gururla , onurla , inançla söyleyebilirim. Vakit kaçmadan treni yakalasak iyi olacak...


2 Mart 2009 Pazartesi

JSF Richfaces

Son zamanlarda en büyük zevkim java web frameworklerin cicili bicili component explorerlarına göz atıp evet işte aradığım framework bu demek. Şirketimizdeki araştırmalar ve yakın çevremde benden bu konuda daha iyi bilgili insanların gazları sayesinde bir java standartı olan JSF üzerinde durmak gerektiği düşüncesi hakim oldu.
***
Tabi jsf in standart implementasyonları ve myfaces gibi implementasyonların istenilen ajax şovları için yetersiz olduğu malumunuz bu yüzden jboss'un Richfacesını denemeye karar kıldım. Standart bir jsf input component'ine ajax desteği kazandırmak ve sayfadaki elemanları idleriyle ile sayfayı tamamen refresh etmeden reRenderlamak başta güzel kolay basit gibi gözüktü ancak malesef swing ile yazmanız 1 gün sürecek bir ekranı uzunca bir sürede çalışmasından memnun kalacak şekilde bitirmek mümkün olmadı. Başta bunun kendi eksikliğimden kaynaklandığını düşünürken konu üzerinde biraz daha uğraşmam sonucu Richfaces'ın vaat ettiklerinin ardından developmentı insanı deli edecek kadar zorlaştıran bir framework olduğuna karar vermemle sonuçlandı.
***
Bu esnada Richfaces dışında bir iş arkadaşım da bir başka JSF kütüphanesi olan icefaces ile uğraşıyordu ve gözlemlediğim icefaces'in jsf in standart backbean yazma alışganlığını sürdürdüğünü ama Richfaces'a nazaran kullanıcıyı ıvır zıvır dertlerden çok daha fazla soyutlayan bir kütüphane olduğunu gördüm ancak bu bile başlı başına bu framework üzerinde çalışmak için yeterli bir sebep midir bilinmez.
***
Son 2 yıldır mükemmel bir webframeworkü arayan benim sanırım son durağım Flex olacak. Getirdiği actionscript angaryasına rağmen en azından insanın ellerini kirletip işin temeline inerek client side da istediği atı koşturmasına olanak sağlayacağına inandığım flex sayesinde JSF ve benzeri javascript , html, css tabanlı karmaşık frameworklerin anlamsızlıklarıyla uğraşmak zorunda kalmayacağımı umut ediyorum. Evet bir pop up açmak için JSF de javascript yazağıma ya struts , spring MVC gibi frameworkler kullanıp javascriptlerimi tamamen hakim olacak şekilde yazarım veya Flex , GWT gibi swing benzeri geliştirmeye sahip frameworkleri kullanarak acaba şunu yapabilir miyim sorusundan uzak yaşamayı tercih ederim... Cahilliğimden olabilir maruz görün ama JSF'de yanarlı dönerli bir sayfa yaptığınızda web sayfanız ve beanlerinizdeki karmaşıklığa nasıl tahamül ediyorsunuz ...