May
29
2012

Java da Sık Duyulan Kavramlar

Merhaba arkadaşlar :) Java programlamada kullanılan bazı kavramların (Hibernate,MVC, JAX-WS, JAX-RPC, JAXB, EJB, JPA, JTA) ne işe yaradıklarından bahsedeceğim.Bende bu yazıyı hazırlamadan önce araştırarak öğrendim ve bir kısmını paylaşmak istedim.Java ile ilgilenenler için giriş niteliğinde özetleyeceğim ufak çapta bir yazı olacak.Java da bu kavramları duyduğunuzda kulak aşinalığı olması açısından ve eğer ilgilenirseniz bu alana yönelmeniz açısından sizin için de yararlı bir yazı olacağını düşünüyorum ^^
Evet kısa bir özet geçktikren sonra artık konuya geçelim :)
Öncelikle Hibernate kavramından başlamak istiyorum. Hibernate java platformunda yazılmış bir ORM(Object Relational Mapping) aracıdır. ORM, nesne odaklı (object oriented) dillerdeki nesnelerin, ilişkisel veritabanlarındaki (relational databases) kayıtlara nasıl karşılık geldiğini yürüten bir teknolojidir. NHibernate adında .NET çatısı için yeniden yazılmış bir türevi bulunur.
1)Hibernate gibi ORM araçlarıyla, bir nesneyi veritabanına kaydetmek, güncellemek ve sorgulama yapmak düz SQL bağlantılarına göre çok kolaydır.
2)Hibernate gibi ORM araçlarının en önemli faydası, kod yazımını kısaltmak veya kolaylaştırmaktan öte, yazılım bakımını kolaylaştırmasıdır.
3)Veritabanındaki bir kolonunun tipinin değişmesi, yeni bir kolon eklenmesi gibi değişiklikler, bütün veri erişim kodunu tekrar gözden geçirmeyi gerektirir. Hibernate ile bu gözden geçirmeden çok yüksek oranda tasarruf edilir.
4)Hibernate kullanılan yazılımlarda, veritabanındaki değişikliklerde yapılması gereken sadece nesnelerle tabloların birbirine nasıl eşleştirildiğinin (mapping) gözden geçirilmesidir.

MVC (Model View Controller)

MVC yazılımlarımıza daha esneklik katmamızı ve kodları birbirinden  rahatça ayırmanızı sağlar.

Model: Genel olarak kullanılan verinin iş mantığı tarafından kullanılması için biçimlendirilmiş halidir. Sözgelimi ORM ile veritabanını nesne tabanlı bir formata sokarsanız bu bir model olacaktır. Controller, modele erişim sağlayarak veri çeker, değiştirir, siler (crud) yani her türlü işlemi katmanlar ile yapar.
Model tek katmanlı da olabilir, çok katmanlı da olabilir.
View: Uygulamanın arabirimine ait olan her türlü bileşen (html, css, js…) view kapsamındadır. Bu bölümde algoritma bulunmaz (idealde). Böylece kod ile html birbirinden ayrılır ve değiştirilmeleri kolay hale gelir.
Controller: Bu bölümde iş mantığı, algoritma, kod ne derseniz artık o bulunur. Her view için bir controller bulunur. Her controller için bir view bulunmak zorunda değildir.
JAX-WS

Java API for XML Services; web servis geliştirmede kullanılan java ee platformuna ait bir api’dir.JAX RPC üzerine insa edilmistir. java ee5 ten itibaren jax-rpc’nin yerini almıstır.
JAX-RPC

Java API for XML-based Remote Procedure Call; Farklı makinelerdeki nesnelerin birbirleriyle XML konuşarak haberleşmesini sağlar.
JAXB

Java XML Binding; Java dili ile XML arasında köprü oluşturmak için kullanılan API.
EJB

Enterprise Java Bean; Kurumsal projelerde kullanılan Java komponent teknolojisidir.
JPA

Java Persistence API; Java uygulamaları ile veritabanları arasında köprü olusturmak için kullanılan API.
JTA

Java Transaction API; Veritabanı islemlerinde transaksiyon yönetimi sağlamak için kullanılan API.

JAVA DA SIK DUYULAN FRAMEWORKLER

  • Expresso
  • JPublish
  • Struts,
  • Tapestry
  •  Tiles
  •  Hibernate
  • Spring
  • Seam
  • JSF
  • Cocoon
  • Wicket…Ve daha birçok farklı seçenek vardır.

Yazar Hakkında

5 adet yazısı bulunuyor..

Print Friendly