2009′un ilk günlerinde biz yazılımcılar yazılım dünyasında ne gelişmeler olacağını merak ediyoruz. Bunun için 2008′e şöyle bir bakmak gerek. Biraz 2008′de uğraştığım teknolojiler,okuduğum makaleler, biraz da Devoxx 2008′de izlediğim sunumların etkisiyle 2008′de gözde olan teknolojilerin, 2009′da neler olacağının muhabbetini yapmak istedim.
1.OSGi
OSGi yeni bir teknoloji değil. Ancak son yıllarda özellikle popüler olmuş durumda. Eclipse ‘in alt yapısını oluşturan Eclipse Equinox frameworkunun OSGi implementasyonu olması OSGi ‘nin java uygulama geliştirenler açısından ne kadar önemsendiğini gösteren sebeplerden sadece biri. Ama OSGi 2009 listeme almamdaki asıl sebep OSGi ‘nin uygulama sunucularında yaygın olarak kullanılması ile iteratif yazılım geliştirme süresini önemli ölçüde azaltacak olması.SpringSource dm Server bu iddayla yola cıkan ilk uygulama sunucusu olarak Ağustos ayında uygulama sunucusu dünyasına giriş yaptı. Uygulama sunucusu dünyasının “baba” larından JBoss ve Sun da bu yönde yenilikler yaptı. GlassFish v3 Prelude OSGi tabanlı yazıldı. JBoss cephesinde ise JBoss AS 5.0.0 GA kendi component mimarisinin yanında OSGi destekleyecek şekilde yakın zamanda çıktı.
2.RESTful web services
2008′de Service Oriented Architecture yanında Resource Oriented Architecture da konuşulur oldu.JAX-RS: Java API for RESTful Web Services (JSR-311) RESTful web servisleri konusunda çalışan JSR. Bense Devoxx 2008′de izlediğim Kauri frameworkunden bahsetmek istiyorum biraz. Kauri, Restlet, Spring, Maven and jQuery i kullanan ve RESTful web servisleri, web uygulamaları geliştirmeye yarayan bir framework. Resource lar URL ‘ler şeklinde sunuluyor. Gerçekleştirilen her bir modul maven repository sinde bir jar olarak install ediliyor, ve daha sonraki web uygulamalarında kolaylıkla kullanılabiliyor. Bu şekilde arama yapan bir “search” servisini 1 kere yazıp tüm web uygulamalarında kullanabilmek mümkün.
3.Java SE 7 ve Universal VM
Java SE 6′dan Java SE 7′ye geçişin etkisinin, J2SE 1.4 ‘ten J2SE 5 ‘e geçişin etkisine oranla çok daha büyük olacağını düşünüyorum. Java SE 7 ile gelmesi beklenen yeni özelliklerin (daha kesinleşmiş bir özellik seti yok) dışında en büyük yeniliğin platform bazında olacağını bekliyorum.
JVM doesn’t know anything about Java
JVM Specification,1997
Aslında şu anki durumda da Java ile birlite scripting dillerini kullanmak mümkün. Ama ilk defa Sun bu dinamik diller için hafıza yönetimi, güvenlik gibi özellikleri JVM’e ekleyecek. Bunun için “invokedynamic” adlı yeni bir bytecode’un JVM’e eklenmesi bekleniyor. JSR-292 ile Java platformunda Java dışında dillerin çalıştırılması kolaylaşacak, bu da Java geliştiricelerinin işine yarayacak. JVM artık sadece Java diline hizmet etmekten çıkacak.
4.Java FX
Asıl mesele RIA(Rich Internet Applications)…Flash,Flex, Silverlight kullanmamış biri olarak Java FX’i beğendiğimi söyleyebilirim:) Devoxx 08′de izlediğim Java FX keynote ‘u nu oldukça beğendim. Joshua Marinacci demo sırasında firefox içinde çalışan MoviePuzzle uygulamasını firefoxtan çıkarıp masaüstüne çektiğinde salondan alkışlar yükseldi:) Üstelik firefox’u kapatmasına rağmen uygulamanın masaüstünde çalışmaya devam etmesi ayrı güzeldi. Javaya benzer syntax i, grafikçilerin beğenerek kullandığı toollardan ( şu an sadece Adobe Photoshop,Adobe Illustrator için) import pluginleri sunması başarılı olacağına inanmamı sağlayan sebeplerden ikisi. Bir diğeri, belki de en önemlisi, Sun ‘ın artık Swing’i desteklemeyeceğini JVM Language Summit 2008′de açıklamış olması. Bu da Sun’ın istemci teknolojisi kısmında Java FX’e verdiği önemi gösteriyor. İlgilenenlere NetBeans 6.5 la gelen örneklerle göz atabilirler.
Kaynaklar
Bu yazımızda JSF Richfaces Hibernate Spring teknolojilerini kullanarak bir ToDo uygulaması yapacağız. Bu uygulamada yapılacaklar listesi tutulacak ve bu liste arasında arama yapabileceğiz. Bu yapacağımız uygulamanın en güzel özelliği ise herşeyi AJAX ile yapıyor olmamız.




Son Yorumlar