JSP ve Struts etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
JSP ve Struts etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

6 Kasım 2009 Cuma

Struts ve JSP nedir?

Struts bir Frameworktür yani bizim yazdığımız kodun akışını kontrol eden yapıdır. Mesela bir java uygulaması nasıl kütüphanelerdeki fonksiyonları kullanıyorsa, frameworkde bizim yazdığımız kodları kullanır. Peki java'nın struts frameworküne neden ihtiyacı var? Object-Oriented yani nesnesel programlamada neden classlara ihtiyacımız varsa aynı nedenden ötürü Struts Frameworküne ihtiyacımız vardır.


Framework'ü Daha İyi Anlamak İçin Örnek
Örneğin bir hesap makinesi programı yapıyorsunuz, bu programı 2 şekilde yazabilirsiniz;
1) Kullanıcının yapmak istediği işlemi saptamak için iç içe "if() else" statementları kullanırsınız ve doğru if e geldiğinde programın hesaplama işlemini yapmasını sağlarsınız yada,
2) Bu işlemlerin türünü(+,-,/*) belirlemek için bir class mesela,
public class TürBelirle(String); classı olsun
İşlemin hesaplamasını gerçekleştirecek classı belirleyen ayrı bir class bunada,
public class hesap(char); diyelim
ve son olarak hesaplamayı yapan ayrı classlar kullanırsınız(public class Toplama(String, String)).

Buna göre ikinci yöntem çok çok daha avantajlıdır çünkü;
  • 1. yöntemde program doğru if bloğunu bulmak için ondan önce gelen bütün blokları kontrol etmelidir, bu işlem bilgisayarı yavaşlatır ancak 2. yöntemde ise her adım için ayrı class vardır. Yani görev ayrımı yapılmıştır. Böylece her adım için class ların içindeki fonksiyonlar kullanılır( parameter passing) böylece bilgisayarın işleme gücü(hızı) artar.
  • Diğer bir artısı kodun kullanılabilirliği artar. Yani eğer biz + işlemini yeniden tanımlamak istersek tek yapmamız gereken + işlemini yapan classı değiştirmek olacaktır programın diğer kısımlarına ellemeye gerek olmayacaktır.
  • Ayrıca kodun daha düzenli olmasını sağlar ve dışarıdan projeye dahil olacak adamın anlaması kolaylaşır.
Struts'a Neden İhtiyaç Var?

Şimdi toparlayacak olursak, Hastane Bilgi Yönetim Sistemi(HBYS), Web Tabanlı Öğrenci Bilgi Sistemi, web tabanlı kurumsal projeler geliştirmek için projeyi bölümlemek gerekir Neden?;
1) her takım kendi alanındaki bölümle ilgilenir işin karmaşık alt tarafıyla ilgilenmez,
2) takım daki değişiklikleri tolere etmek için projeyi bilen değil o bölümde uzmanlaşmış bir takım arkadaşı bulmak yeterli hale gelir;
3) Uygulamanın hızı artar(bkz: Örnek).

İşte bu bölümlemeyi yapacak arkadaşda bizim Struts Frameworkü dür.

Struts aslında daha önce var olan MVC (Model View Controller) kalıbı baz alınarak geliştirilmiştir.

MVC Nedir?
Öncelikle programlama dünyasında amaç büyük uygulamalar geliştirirken karmaşıklığı azaltmak. Daha kolay ve kısa sürede proje geliştirmek. Bunu yapmak içinde Object Oriented mantığını kullanmak. MVC nin olayıda Object_oriented mantığını Client-Server(Kullanıcı-Sunucu) Modelinin her tarafına uygulanmasını sağlamak.
Peki bu nasıl sağlanıyor? Web Tabanlı Projenin Model, View ve Controller olarak üçe ayırılmasıyla.



VIEW
Kullanıcının tarayıcısından gördüğü kısım yani JSP. JSP, HTML ve Java kodlarından oluşan bir java teknolojisidir.

MODEL
İş mantığını içeren Java Sınıflarıdır (Servlet).

CONTROLLER
Denetleyici (Controller) olarak atanan Servlet, gelen isteği(JSP) inceledikten sonra gerekli iş
mantığını yürütecek ilgili sınıfı çağırır.

Ana hatlarıyla MVC yapısını anlatmaya çalıştım. Umarım başarılı olmuşumdur, yorumlarınızı bekliyorum...

Bir sonraki yazımda ise Struts'ın Nasıl MVC'ye uyarlandığını ve Struts yapısını daha ayrıntılı şekilde açıklayacağım.

Herkese iyi çalışmalar.

Struts ve JSP

Evet arkadaşlar Struts ve JSP çalışmalarıma başlamış bulunmaktayım. Ben Struts'ı ilk defa ikinci stajımı yaptığımda görmüştüm ancak sadece görmüştüm :) JavaBeans class ları yazmıştım ve ActionServlet Classının yapısını görmüştüm bide struts-config.xml dosyasına tanımlama yapmıştım.

Şimdi ilk başlayanlar tabi bu anlattıklarımı anlamayacaklardır.
Ama size iyi bir haberim var!! JSP ve Struts'ı araştırmalarım doğrultusunda burada anlatmaya çalışacağım.

JSP ve Struts' ı öğrenmek için öncelikle temel bir Java bilginiz olmalıdır.Java öğrenmek isteyenler buradan java'nın resmi sitesinden tutoriallleri takip edebilirler.

Eğitim aşamaları şu şekilde olacak:
  • Öncelikle Struts'ın ve JSP nin ne olduğu, hangi ihtiyaçlara çözüm olabileceği, artıları eksileriyle başlayacağız (Struts ve JSP nedir?)
  • Sonracığıma, kurulum bilgilerine geçeceğim (Struts kurulumu),
  • Sonrada, database ile Struts örnekleri yapacağız (Struts Dersleri).
Linkler:
http://www.ceviz.net/java-jsp-jsf/strutsa-giris-i_a408.html
http://struts.apache.org/primer.html
http://jspdersi.wordpress.com/