SlideShare a Scribd company logo
1 of 27
Download to read offline
Kurumsal Java
&
Web Teknolojileri
Ömer ÖZKAN
omer@ozkan.info
Seminer Hakkında
● Java ve Kısa Tarihçesi
● Java ile İlgili Kavramlar
● Java Versiyonları
● JavaEE ve Web
● 3 Katmanlı Mimari
● Gösterim Katmanı Uygulama Çatıları
● İşletme Katmanı (Orta Katman) Uygulama Çatıları
● Veri Katmanı Uygulama Çatıları
● Geliştirme Araçları
● Java Sunucuları
● Çevik Yöntemler
● Test Güdümlü Yazılım Geliştirme
Ömer Özkan Hakkında
● 1990, Adana doğumlu
● Bilgisayar Mühendisliği öğrencisi
● Jr. Yazılım Geliştiricisi (Jr. Software Developer)
● JavaEE, Kurumsal Uygulama Geliştiricisi
● LKD ve Özgür Yazılım Vakfı (Free Software Foundation) üyesi
● 2008'den beri GNU/Linux kullanıcısı
Ulaşmak isterseniz
● http://ozkan.info
● http://omerozkan.net - Kişisel Web Günlüğü
● http://www.twitter.com/omerozkan_
● http://www.linkedin.com/in/omerozkan
● omer@ozkan.info
● omer.ozkan@linux.org.tr
Java ve Kısa Tarihçesi
● 1995 – James Gosling
● Bir kere yaz heryerde çalışsın (Write Once Run Everywhere)
● Sanal Makine (Virtual Machine)
● Çöp Toplayıcı (Garbage Collector)
● JavaDoc
● Standartlar
Java Dünyası
● JCP – Java Community Process
● JSR – Standart Dökümantasyonu (Java Specification Request)
● Farklı sürümleri vardır:
– Java SE
– Java EE
– Java ME
– Java Card
Java Kavramları
● JVM (Java Virtual Machine)
● JRE (Java Runtime Environment)
● JDK (Java Development Kit)
JVM'de Çalışan Diller
● Java
● Scala
● Groovy (Grails)
● JRuby
● Jython
● Clojure
● ...
Java EE
● Kurumsal Java versiyonu
● Güncel versiyon JavaEE6
● Servlet 3.0
● JSF 2.0
● CDI
● EJB 3.1
● EJB Lite
● JPA 2.0
● JAX-RS
● Bean Validation
JavaEE 7
● JSF 2.2
● Expression Language 3.0
● Servlet 3.1
● JPA 2.1
● CDI 1.1
● EJB 3.2
● JAX-RS 2.0
● Bean Validation 1.1
● JMS 2.0
● JCache
● JASPIC 1.1
Servlet Containers
● Tomcat
● Jetty
● ...
Uygulama Sunucuları
● Jboss AS – Red Hat
● Glassfish – Sun/Oracle
● Geronimo – Apache
● WebSphere – IBM
● WebLogic – Oracle
● ...
3 Katmanlı Mimari
● Presentation – Gösterim Katmanı
● Business – İşletme Katmanı
● Persistence – Veri Katmanı
Presentation
Business
Persistence
Presentation
● Servlets
● JSP (Java Server Page)
● JSF (Java Server Faces)
● Struts
● Wicket
● Google Web Toolkit
● Vaadin
● ...
JSF
● PrimeFaces
● Jboss RichFaces
● IceFaces
● ...
Business
● EJB
● Spring
● Seam
● CDI
● ...
EJB
● Enterprise Java Bean
● Dağıtık Mimari
● Transaction Yönetimi
● Güvenlik Yönetimi
● Thread Yönetimi
● Memory Yönetimi
EJB
● Session Bean
– Stateful
– Stateless
– Singleton
● Message Driven Bean (MDB)
CDI
● Context and Dependency Injection
● Nesnelere JavaEE Context üzerinden erişim sağlar
● Genişleyebilir modüler yapı
● Tüm sistemlerde çalışabilir
● Farklı implementasyonları vardır:
– Jboss Weld
– Apache OpenWebBeans
Spring
Seam
Persistence
● ORM – Object Relation Mapping
● JPA
● Hibernate
● Toplink
● IBatis
● EclipseLink
● JDBC
● ...
Geliştirme Araçları - IDE
● Eclipse
● Netbeans
● IntelliJ Idea
● JDeveloper
Geliştirme Araçları
● Derleme Sistemleri
– Ant
– Maven
● Nexus (Repository)
● Redmine (İş Takip sistemi)
● Git (Sürüm Takip Sistemi)
● Jenkins (Sürekli Entegrasyon)
● Sonar (Kod Analiz Aracı)
Test Araçları
● JUnit
● TestNG
● JSFUnit
● DBUnit
● Selenium
● Arquillian
● ...
Çevik Yöntemler
● Extreme Programming
● Scrum
● Test Driven Development (Test Güdümlü Geliştirme)
● Continuous Integration (Sürekli Entegrasyon)
● Pair Programming (Eşli Programlama)
● Small Releases (Küçük Sürümler)
● Refactoring (Yeniden Yapılandırma)
● Planning Game (Planlama Oyunu)
Sorular?

More Related Content

What's hot

Node js part 2 shared
Node js part 2 sharedNode js part 2 shared
Node js part 2 sharedEngin Yelgen
 
AngularUI-Router ile Zincirlenmiş Ekranlar Oluşturmak
AngularUI-Router ile Zincirlenmiş Ekranlar OluşturmakAngularUI-Router ile Zincirlenmiş Ekranlar Oluşturmak
AngularUI-Router ile Zincirlenmiş Ekranlar OluşturmakOmer Buyukoglu
 
Neden Backbone.js'ten AngularJS'e Geçtik?
Neden Backbone.js'ten AngularJS'e Geçtik?Neden Backbone.js'ten AngularJS'e Geçtik?
Neden Backbone.js'ten AngularJS'e Geçtik?Omer Buyukoglu
 
Java 9 Project Jigsaw
Java 9 Project JigsawJava 9 Project Jigsaw
Java 9 Project JigsawRahman USTA
 
Java EE Nedir? (Baku JUG)
Java EE Nedir? (Baku JUG)Java EE Nedir? (Baku JUG)
Java EE Nedir? (Baku JUG)Rahman USTA
 
ASP.NET MVC'den ASP.NET Core'a Geçiş
ASP.NET MVC'den ASP.NET Core'a GeçişASP.NET MVC'den ASP.NET Core'a Geçiş
ASP.NET MVC'den ASP.NET Core'a GeçişSinan Bozkuş
 
ASP.NET MVC'den ASP.NET Core MVC'ye Geçiş Süreci
ASP.NET MVC'den ASP.NET Core MVC'ye Geçiş SüreciASP.NET MVC'den ASP.NET Core MVC'ye Geçiş Süreci
ASP.NET MVC'den ASP.NET Core MVC'ye Geçiş SüreciSinan Bozkuş
 
SLC ASP.NET Framework and BPM (TR)
SLC ASP.NET Framework and BPM (TR)SLC ASP.NET Framework and BPM (TR)
SLC ASP.NET Framework and BPM (TR)Selcuk Celik
 
Node.js'e Hızlı Bir Bakış
Node.js'e Hızlı Bir BakışNode.js'e Hızlı Bir Bakış
Node.js'e Hızlı Bir BakışMustafa Dağdelen
 
Test Driven Development
Test Driven Development Test Driven Development
Test Driven Development Nezir Yürekli
 
Java 8 Nashorn ve Avatar.js
Java 8 Nashorn ve Avatar.jsJava 8 Nashorn ve Avatar.js
Java 8 Nashorn ve Avatar.jsRahman USTA
 
Symfony2 ve Doctrine ile PostgreSQL'i Kullanarak Performanslı Mimari Oluşturma
Symfony2 ve Doctrine ile PostgreSQL'i Kullanarak Performanslı Mimari OluşturmaSymfony2 ve Doctrine ile PostgreSQL'i Kullanarak Performanslı Mimari Oluşturma
Symfony2 ve Doctrine ile PostgreSQL'i Kullanarak Performanslı Mimari OluşturmaHüseyin Mert
 
Mvc 4 Eğitim Sunusu
Mvc 4 Eğitim SunusuMvc 4 Eğitim Sunusu
Mvc 4 Eğitim SunusuFatih Coşkun
 

What's hot (20)

Node js part 2 shared
Node js part 2 sharedNode js part 2 shared
Node js part 2 shared
 
AngularUI-Router ile Zincirlenmiş Ekranlar Oluşturmak
AngularUI-Router ile Zincirlenmiş Ekranlar OluşturmakAngularUI-Router ile Zincirlenmiş Ekranlar Oluşturmak
AngularUI-Router ile Zincirlenmiş Ekranlar Oluşturmak
 
Neden Backbone.js'ten AngularJS'e Geçtik?
Neden Backbone.js'ten AngularJS'e Geçtik?Neden Backbone.js'ten AngularJS'e Geçtik?
Neden Backbone.js'ten AngularJS'e Geçtik?
 
Modern Frontend
Modern FrontendModern Frontend
Modern Frontend
 
Java 9 Project Jigsaw
Java 9 Project JigsawJava 9 Project Jigsaw
Java 9 Project Jigsaw
 
Jsf
JsfJsf
Jsf
 
Radore Workshop: Wordpress Nereye Koşuyor?
Radore Workshop: Wordpress Nereye Koşuyor? Radore Workshop: Wordpress Nereye Koşuyor?
Radore Workshop: Wordpress Nereye Koşuyor?
 
Java EE Nedir? (Baku JUG)
Java EE Nedir? (Baku JUG)Java EE Nedir? (Baku JUG)
Java EE Nedir? (Baku JUG)
 
ASP.NET MVC'den ASP.NET Core'a Geçiş
ASP.NET MVC'den ASP.NET Core'a GeçişASP.NET MVC'den ASP.NET Core'a Geçiş
ASP.NET MVC'den ASP.NET Core'a Geçiş
 
ASP.NET MVC'den ASP.NET Core MVC'ye Geçiş Süreci
ASP.NET MVC'den ASP.NET Core MVC'ye Geçiş SüreciASP.NET MVC'den ASP.NET Core MVC'ye Geçiş Süreci
ASP.NET MVC'den ASP.NET Core MVC'ye Geçiş Süreci
 
SLC ASP.NET Framework and BPM (TR)
SLC ASP.NET Framework and BPM (TR)SLC ASP.NET Framework and BPM (TR)
SLC ASP.NET Framework and BPM (TR)
 
Node.js'e Hızlı Bir Bakış
Node.js'e Hızlı Bir BakışNode.js'e Hızlı Bir Bakış
Node.js'e Hızlı Bir Bakış
 
sunu (Asp.net -1)
sunu (Asp.net -1)sunu (Asp.net -1)
sunu (Asp.net -1)
 
Spring Framework
Spring FrameworkSpring Framework
Spring Framework
 
ASPNET Web API
ASPNET Web APIASPNET Web API
ASPNET Web API
 
Test Driven Development
Test Driven Development Test Driven Development
Test Driven Development
 
Java 8 Nashorn ve Avatar.js
Java 8 Nashorn ve Avatar.jsJava 8 Nashorn ve Avatar.js
Java 8 Nashorn ve Avatar.js
 
Symfony2 ve Doctrine ile PostgreSQL'i Kullanarak Performanslı Mimari Oluşturma
Symfony2 ve Doctrine ile PostgreSQL'i Kullanarak Performanslı Mimari OluşturmaSymfony2 ve Doctrine ile PostgreSQL'i Kullanarak Performanslı Mimari Oluşturma
Symfony2 ve Doctrine ile PostgreSQL'i Kullanarak Performanslı Mimari Oluşturma
 
Mvc 4 Eğitim Sunusu
Mvc 4 Eğitim SunusuMvc 4 Eğitim Sunusu
Mvc 4 Eğitim Sunusu
 
NodeJS Nedir
NodeJS NedirNodeJS Nedir
NodeJS Nedir
 

Similar to Kurumsal Java & Web Teknolojileri

Bilgisayar Mühendisleri Odası - Java EE Teknolojileri Semineri
Bilgisayar Mühendisleri Odası - Java EE Teknolojileri SemineriBilgisayar Mühendisleri Odası - Java EE Teknolojileri Semineri
Bilgisayar Mühendisleri Odası - Java EE Teknolojileri SemineriMimar Aslan
 
Bilgisayar Mühendisleri Odası - PrimeFaces Framework Semineri
Bilgisayar Mühendisleri Odası - PrimeFaces Framework SemineriBilgisayar Mühendisleri Odası - PrimeFaces Framework Semineri
Bilgisayar Mühendisleri Odası - PrimeFaces Framework SemineriMimar Aslan
 
Java ee kursu-izmir
Java ee kursu-izmirJava ee kursu-izmir
Java ee kursu-izmirsersld60
 
Kıbrıs Doğu Akdeniz Üniversitesi DAU - Java EE Teknolojileri
Kıbrıs Doğu Akdeniz Üniversitesi DAU - Java EE TeknolojileriKıbrıs Doğu Akdeniz Üniversitesi DAU - Java EE Teknolojileri
Kıbrıs Doğu Akdeniz Üniversitesi DAU - Java EE TeknolojileriMimar Aslan
 
Java ee kursu-gungoren
Java ee kursu-gungorenJava ee kursu-gungoren
Java ee kursu-gungorensersld60
 
Caylak Javacilara Yol Haritasi
Caylak Javacilara Yol HaritasiCaylak Javacilara Yol Haritasi
Caylak Javacilara Yol Haritasimehmetbicak
 
Caylak Javacilara Yol Haritasi
Caylak Javacilara Yol HaritasiCaylak Javacilara Yol Haritasi
Caylak Javacilara Yol Haritasimehmetbicak
 
Xsteel odev-sitesi
Xsteel odev-sitesiXsteel odev-sitesi
Xsteel odev-sitesisersld85
 
Java ee kursu-umraniye
Java ee kursu-umraniyeJava ee kursu-umraniye
Java ee kursu-umraniyesersld60
 
Spring application framework
Spring application frameworkSpring application framework
Spring application frameworkKenan Sevindik
 
Oracle kursu-gaziantep
Oracle kursu-gaziantepOracle kursu-gaziantep
Oracle kursu-gaziantepsersld83
 
Java ee kursu-esenyurt
Java ee kursu-esenyurtJava ee kursu-esenyurt
Java ee kursu-esenyurtsersld60
 
Işık Üniversitesi - Spring Core
Işık Üniversitesi - Spring CoreIşık Üniversitesi - Spring Core
Işık Üniversitesi - Spring CoreMimar Aslan
 
Java ee kursu-bagcilar
Java ee kursu-bagcilarJava ee kursu-bagcilar
Java ee kursu-bagcilarsersld60
 
Solarwinds SAM ve Patch Manager
Solarwinds SAM ve Patch ManagerSolarwinds SAM ve Patch Manager
Solarwinds SAM ve Patch ManagerKavi International
 
BizimAlem.com – Java İle Yüksek Performanslı Web Platformu
BizimAlem.com – Java İle Yüksek Performanslı Web Platformu BizimAlem.com – Java İle Yüksek Performanslı Web Platformu
BizimAlem.com – Java İle Yüksek Performanslı Web Platformu Özcan Acar
 
Java me kursu-gungoren
Java me kursu-gungorenJava me kursu-gungoren
Java me kursu-gungorensersld61
 
Oracle kursu-izmir
Oracle kursu-izmirOracle kursu-izmir
Oracle kursu-izmirsersld83
 
Oracle kursu-sultangazi
Oracle kursu-sultangaziOracle kursu-sultangazi
Oracle kursu-sultangazisersld83
 

Similar to Kurumsal Java & Web Teknolojileri (20)

Web development
Web developmentWeb development
Web development
 
Bilgisayar Mühendisleri Odası - Java EE Teknolojileri Semineri
Bilgisayar Mühendisleri Odası - Java EE Teknolojileri SemineriBilgisayar Mühendisleri Odası - Java EE Teknolojileri Semineri
Bilgisayar Mühendisleri Odası - Java EE Teknolojileri Semineri
 
Bilgisayar Mühendisleri Odası - PrimeFaces Framework Semineri
Bilgisayar Mühendisleri Odası - PrimeFaces Framework SemineriBilgisayar Mühendisleri Odası - PrimeFaces Framework Semineri
Bilgisayar Mühendisleri Odası - PrimeFaces Framework Semineri
 
Java ee kursu-izmir
Java ee kursu-izmirJava ee kursu-izmir
Java ee kursu-izmir
 
Kıbrıs Doğu Akdeniz Üniversitesi DAU - Java EE Teknolojileri
Kıbrıs Doğu Akdeniz Üniversitesi DAU - Java EE TeknolojileriKıbrıs Doğu Akdeniz Üniversitesi DAU - Java EE Teknolojileri
Kıbrıs Doğu Akdeniz Üniversitesi DAU - Java EE Teknolojileri
 
Java ee kursu-gungoren
Java ee kursu-gungorenJava ee kursu-gungoren
Java ee kursu-gungoren
 
Caylak Javacilara Yol Haritasi
Caylak Javacilara Yol HaritasiCaylak Javacilara Yol Haritasi
Caylak Javacilara Yol Haritasi
 
Caylak Javacilara Yol Haritasi
Caylak Javacilara Yol HaritasiCaylak Javacilara Yol Haritasi
Caylak Javacilara Yol Haritasi
 
Xsteel odev-sitesi
Xsteel odev-sitesiXsteel odev-sitesi
Xsteel odev-sitesi
 
Java ee kursu-umraniye
Java ee kursu-umraniyeJava ee kursu-umraniye
Java ee kursu-umraniye
 
Spring application framework
Spring application frameworkSpring application framework
Spring application framework
 
Oracle kursu-gaziantep
Oracle kursu-gaziantepOracle kursu-gaziantep
Oracle kursu-gaziantep
 
Java ee kursu-esenyurt
Java ee kursu-esenyurtJava ee kursu-esenyurt
Java ee kursu-esenyurt
 
Işık Üniversitesi - Spring Core
Işık Üniversitesi - Spring CoreIşık Üniversitesi - Spring Core
Işık Üniversitesi - Spring Core
 
Java ee kursu-bagcilar
Java ee kursu-bagcilarJava ee kursu-bagcilar
Java ee kursu-bagcilar
 
Solarwinds SAM ve Patch Manager
Solarwinds SAM ve Patch ManagerSolarwinds SAM ve Patch Manager
Solarwinds SAM ve Patch Manager
 
BizimAlem.com – Java İle Yüksek Performanslı Web Platformu
BizimAlem.com – Java İle Yüksek Performanslı Web Platformu BizimAlem.com – Java İle Yüksek Performanslı Web Platformu
BizimAlem.com – Java İle Yüksek Performanslı Web Platformu
 
Java me kursu-gungoren
Java me kursu-gungorenJava me kursu-gungoren
Java me kursu-gungoren
 
Oracle kursu-izmir
Oracle kursu-izmirOracle kursu-izmir
Oracle kursu-izmir
 
Oracle kursu-sultangazi
Oracle kursu-sultangaziOracle kursu-sultangazi
Oracle kursu-sultangazi
 

Kurumsal Java & Web Teknolojileri

  • 2. Seminer Hakkında ● Java ve Kısa Tarihçesi ● Java ile İlgili Kavramlar ● Java Versiyonları ● JavaEE ve Web ● 3 Katmanlı Mimari ● Gösterim Katmanı Uygulama Çatıları ● İşletme Katmanı (Orta Katman) Uygulama Çatıları ● Veri Katmanı Uygulama Çatıları ● Geliştirme Araçları ● Java Sunucuları ● Çevik Yöntemler ● Test Güdümlü Yazılım Geliştirme
  • 3. Ömer Özkan Hakkında ● 1990, Adana doğumlu ● Bilgisayar Mühendisliği öğrencisi ● Jr. Yazılım Geliştiricisi (Jr. Software Developer) ● JavaEE, Kurumsal Uygulama Geliştiricisi ● LKD ve Özgür Yazılım Vakfı (Free Software Foundation) üyesi ● 2008'den beri GNU/Linux kullanıcısı
  • 4. Ulaşmak isterseniz ● http://ozkan.info ● http://omerozkan.net - Kişisel Web Günlüğü ● http://www.twitter.com/omerozkan_ ● http://www.linkedin.com/in/omerozkan ● omer@ozkan.info ● omer.ozkan@linux.org.tr
  • 5. Java ve Kısa Tarihçesi ● 1995 – James Gosling ● Bir kere yaz heryerde çalışsın (Write Once Run Everywhere) ● Sanal Makine (Virtual Machine) ● Çöp Toplayıcı (Garbage Collector) ● JavaDoc ● Standartlar
  • 6. Java Dünyası ● JCP – Java Community Process ● JSR – Standart Dökümantasyonu (Java Specification Request) ● Farklı sürümleri vardır: – Java SE – Java EE – Java ME – Java Card
  • 7. Java Kavramları ● JVM (Java Virtual Machine) ● JRE (Java Runtime Environment) ● JDK (Java Development Kit)
  • 8. JVM'de Çalışan Diller ● Java ● Scala ● Groovy (Grails) ● JRuby ● Jython ● Clojure ● ...
  • 9. Java EE ● Kurumsal Java versiyonu ● Güncel versiyon JavaEE6 ● Servlet 3.0 ● JSF 2.0 ● CDI ● EJB 3.1 ● EJB Lite ● JPA 2.0 ● JAX-RS ● Bean Validation
  • 10. JavaEE 7 ● JSF 2.2 ● Expression Language 3.0 ● Servlet 3.1 ● JPA 2.1 ● CDI 1.1 ● EJB 3.2 ● JAX-RS 2.0 ● Bean Validation 1.1 ● JMS 2.0 ● JCache ● JASPIC 1.1
  • 12. Uygulama Sunucuları ● Jboss AS – Red Hat ● Glassfish – Sun/Oracle ● Geronimo – Apache ● WebSphere – IBM ● WebLogic – Oracle ● ...
  • 13. 3 Katmanlı Mimari ● Presentation – Gösterim Katmanı ● Business – İşletme Katmanı ● Persistence – Veri Katmanı Presentation Business Persistence
  • 14. Presentation ● Servlets ● JSP (Java Server Page) ● JSF (Java Server Faces) ● Struts ● Wicket ● Google Web Toolkit ● Vaadin ● ...
  • 15. JSF ● PrimeFaces ● Jboss RichFaces ● IceFaces ● ...
  • 16. Business ● EJB ● Spring ● Seam ● CDI ● ...
  • 17. EJB ● Enterprise Java Bean ● Dağıtık Mimari ● Transaction Yönetimi ● Güvenlik Yönetimi ● Thread Yönetimi ● Memory Yönetimi
  • 18. EJB ● Session Bean – Stateful – Stateless – Singleton ● Message Driven Bean (MDB)
  • 19. CDI ● Context and Dependency Injection ● Nesnelere JavaEE Context üzerinden erişim sağlar ● Genişleyebilir modüler yapı ● Tüm sistemlerde çalışabilir ● Farklı implementasyonları vardır: – Jboss Weld – Apache OpenWebBeans
  • 21. Seam
  • 22. Persistence ● ORM – Object Relation Mapping ● JPA ● Hibernate ● Toplink ● IBatis ● EclipseLink ● JDBC ● ...
  • 23. Geliştirme Araçları - IDE ● Eclipse ● Netbeans ● IntelliJ Idea ● JDeveloper
  • 24. Geliştirme Araçları ● Derleme Sistemleri – Ant – Maven ● Nexus (Repository) ● Redmine (İş Takip sistemi) ● Git (Sürüm Takip Sistemi) ● Jenkins (Sürekli Entegrasyon) ● Sonar (Kod Analiz Aracı)
  • 25. Test Araçları ● JUnit ● TestNG ● JSFUnit ● DBUnit ● Selenium ● Arquillian ● ...
  • 26. Çevik Yöntemler ● Extreme Programming ● Scrum ● Test Driven Development (Test Güdümlü Geliştirme) ● Continuous Integration (Sürekli Entegrasyon) ● Pair Programming (Eşli Programlama) ● Small Releases (Küçük Sürümler) ● Refactoring (Yeniden Yapılandırma) ● Planning Game (Planlama Oyunu)