1. Oracle ADF Nedir

PaylaşTweet about this on TwitterShare on FacebookEmail this to someoneShare on Google+Share on LinkedInShare on TumblrShare on RedditPin on PinterestDigg thisFlattr the authorShare on StumbleUponBuffer this page

Oracle Application Development Framework(Oracle ADF) JEE standartları ve open-source teknolojilerini kullanan java tabanlı uçtan uca uygulama geliştirmemiz için geliştirilmiş bir frameworkdür. Uçtan uca kavramı desing dan deployment a kadar olan süreci belirtir. Jdeveloper ile ADF birleşimi sayesinde projenizin dizaynından test/live ortama deployment aşamasına kadar her adımı kolaylıkla gerçekleştirebiliyorsunuz. Hatta Jdev&ADF ile kurumsal uygulamaların her adımı için her zaman geçerli olmasada drag&drop şeklinde ortalama bir uygulama geliştirebileceğinizi söylemek mümkün. Uygulamamamızda istenilen çok spesifik özellikler için kod içerisine girip bir takım müdahalelerde bulunmamız gerektiği gerçeğini göz ardı edemeyiz.

ADF Mimarisi

Fusion web uygulamalarında, genel kabul görmüş olan Model-View-Controller (MVC) kalıbını görüyoruz. Bu kalıp sayesinde, business logic, page navigation, UI birbiri ile ilişkili ancak bağımsız farklı katmanlarda yer alır.

MVC kalıbı için mimari;

mvc

Model layer, o an çalıştığımız dataları temsil eder.

View layer, UI elemanlarımızın bulunduğu katmandır.

Control layer, kullanıcının giriş yaptığı dataları ve sayfa yönlendirmelerini(navigatio layer) kontrol eden katmandır.

Business Service, data erişimi kontrol eder ve model layer ile veri kaynağımız arasındaki bağı kurar diyebiliriz.

Bu yazı içerisinde daha fazla değinmeyeceğim ancak oldukça önemli olan MVC hakkında daha detaylı bilgi için;

http://en.wikipedia.org/wiki/Model-view-controller

http://en.wikibooks.org/wiki/Computer_Science_Design_Patterns#Model-View-Controller_Pattern

Daha sonra googledan devam edebilirsiniz. Çok kısa mvc bilgisinden sonra gelelim asıl konumuz olan ADF mimarisine ve ADF frameworkünün MVC katmanlarının neresinde bulunduğuna.

ADF_Architecture

ADF Model, framerwork ün çekirdeğidir diyebiliriz. Kullanıcı arayüzünde bulunan itemların bind işlemine aracılık eden katmandır. Herhangi bir item ile herhangi bir veri kaynağında bulunan bir veri arasında köprü vazifesi görür ve bunuda hemen hemen hiç kod yazmadan yapabiliyoruz. ADF Business Components(ADFbc), ADF Faces, ADF Controller da framework ün diğer katmanlarıdır. Sırayla bunların ne işe yaradıklarına bakalım.

ADF Business Components(ADFbc): Service-Oriented bir uygulama geliştirirken Business logic gereği bir veya daha fazla sayıda business serviceten besleyebiliriz, bu servisler de kullanıcılara veriler üzerinde sorgulama, silme, ekleme, güncelleme imkanı sunar. ADFbc bize bu işlemleri yapabilmemizi sağlayan, performanslı, fonksiyonel, javaEE design pattern yapılarına ve best practicelere uygun nesneler sunar. Bu nesneler üç farklı şekilde karşımıza çıkar;

                    Entity Object: Database tablosunu uygulamamız içerisinde temsil eden nesnedir, DML işlemlerini bizim yerimize yönetir. Database üzerinde tablolar arasında kurduğumuz PK-FK ilişkilerini entityler arasında kurabiliri. Eğer uygulamamıza dahil ettiğimiz tablolar arasında relation varsa bu ilişki otomatik olarak entitiyler ile birlikte gelir, yoksa “association” tanımlayarak bu ilişkiyi biz kurabiliriz.

                    View Object: Entity nesneleri için db tablolarını temsil eder demiştim, view objectleride bu entity nesnlerini kullanarak oluşturulmuş SQL queryleri gibi düşünebiliriz. View nesneleri arasında da entity nesnelerinde olduğu gibi ilişki kurabiliriz, bu sayede master-detail yapıları oluşturabiliriz. Kullanıcılar arayüzden değişiklik yaptıkları zaman view object üzerinden entity objectler ile birlikte datanın bütünlüğü vb. Kontrol ederek istenilen işlemi gerçekleştirirler.

                    Application Module: Kullanıcı isteğine göre birbiri ile alakalı mantıksal birimleri barındıran transactional birimdir.

ADF Model Layer: Business service oluşturan birçok kaynağa tek bir arayüzden erişilmesini sağlayan katmandır. Bu arayüzler “Data controls” adı verilen yapılar ile sağlanmaktadır, data controller business service’e ait metadata, operation, property, methods gibi özellikleri developer’ın kullanımına sunar.

Jdev. İle geliştirme yaparken ekran üzerine sürükleyip bıraktığımız data control otomatik olarak istediğimiz bir UI component ine dönüşür ve otomatik olarak ilgili business service elemanına bind edilir. Bu binding işlemini ekran üzerine yerleştirdiğimiz component’in özellikleri üzerinden manuel olarakta yapabiliriz. ADF Model katmanı aşağıdaki teknolojileri desteklemektedir;

·        Enterprise JavaBeans(EJB) session beans ve JPA entities

·        JavaBeans

·        Web servies

·        XML

·        CSV Files

ADF Controller: Navigation, state management gibi işlemleri kontrol edebilmemizi sağlayan katmandır. Uygulamamızda bulunan page flow ları aracılığıyla bu işlemleri gerçekleştirebiliriz. (page flow ları başka bir yazımda anlatacağım).

ADF Faces Rich Client (ADF Faces): ADF faces 150 nin üzreinde AJAX destekli component sunmaktadır. Hierarchical data tables, tree menus, in-page dialogs, accordions gibi componentların yanısıra, görsel olarakta zengin olan Data visualization componentlarda kullanımımıza sunulmuştur.

ADF Faces aynı zamanda şu teknolojileride desteklemektedir;

·        Apache MyFaces Trinidad

·        Java Swing & ADF Swing

·        ADF Mobile

·        MS Excel

PaylaşTweet about this on TwitterShare on FacebookEmail this to someoneShare on Google+Share on LinkedInShare on TumblrShare on RedditPin on PinterestDigg thisFlattr the authorShare on StumbleUponBuffer this page
NQSConfig.ini dosyası nedir
2. ADF ile Uygulama Geliştirme

Your comments

Loading Facebook Comments ...

Leave a Reply