22
Spring Core Semineri 9 Aralık 2014 Turkey JUG Lideri Senior Java Developer Bilgisayar Mühendisi Mimar Aslan www.mimaraslan.com [email protected] Core Turkey Java User Group

Işık Üniversitesi - Spring Core

Embed Size (px)

Citation preview

Page 1: Işık Üniversitesi - Spring Core

Spring Core Semineri 9 Aralık 2014

Turkey JUG Lideri Senior Java DeveloperBilgisayar Mühendisi

Mimar Aslan

[email protected]

Core

Turkey Java User Group

Page 2: Işık Üniversitesi - Spring Core

• 2006, Kırgızistan Türkiye Manas Üniversitesi, Bilgisayar Mühendisliğinden mezun oldum.

• Kendimi bildim bileli kurumsal Java projelerinde yazılım geliştiricisiyim.

• Teknik yazar, eğitmen, danışman ve konuşmacıyım.

• Turkey JUG (Java User Group) ve Turkey JBUG(JBoss User Group)’ın kurucusu ve lideriyim.

• Kurumsal firmalar için yazılım danışmanlık hizmetleri vermekteyim.

• Mesleki kariyerimi yurt içi ve yurt dışında sürdürmekteyim.

Mimar Aslan kimdir?

Page 3: Işık Üniversitesi - Spring Core

2010

2013 2014

20122011

2015

Teknik yazarlık serüvenim.

Page 4: Işık Üniversitesi - Spring Core

Online Video Eğitimlerim

www.udemy.com/u/mimaraslan

Page 5: Işık Üniversitesi - Spring Core

• Java’da nesneler ve içerdikleri veriler uygulama çalıştığı zaman bellekte tutulurlar.

• Her nesnein kendine özel durumları ve davranışları vardır.

Java Projelerinde Nesnelerin Kullanmı

• Nesnelerin davranışlarını metotlar belirler.

Konuş

Yürü

Bak

Alkışla

ŞımarGülümse

Page 6: Işık Üniversitesi - Spring Core

• Çalışması bittikten sonra kullanılmayan nesneleri, çöp toplayıcı otomatik olarak bellekten temizler.

• Kurumsal uygulamalarda nesnelerin tekrardan kullanımı için nesnelerin yaşam sürelerini belirlemek çok önemlidir.

Çöp Toplayıcı (Garbage Collector)

Page 7: Işık Üniversitesi - Spring Core

Presentation Layer Gösterim Katmanı

Business Layer İşletme Katmanı

Persistence Layer Kalıcılık Katmanı JPA

SPRING

EJB

JSF

JSP

• Uygulama içindeki İşletme Katmanı bizim için çok önemlidir. Spring çatısı bu katmanda vazife alırlar.

Kurumsal Java Uygulamalarının Mimarisi

Page 8: Işık Üniversitesi - Spring Core

Spring çatısının sahibi hangi firma yada firmalardır?

• Java topluluğu çok geniştir. İçerisinde yazılımcılar, donanımcılar, kurumlar, vakıflar ve üniversiteler yer almaktadır.

• Spring çatısı Java topluluğunun üyelerinden birisi olan Spring Source firmasına aittir.

Page 9: Işık Üniversitesi - Spring Core

Spring ücretli midir?

• Apache lisansına sahiptir.

• Tamamen açık kaynak kodludur.

• Ücretsizdir.

Page 10: Işık Üniversitesi - Spring Core

• 2003’te de Spring projesinin kodları açık kaynak olarak internette paylaşıldı. Ciddi manada ilk sürümü Mart 2004 yılında çıktı.

Spring çatısı nasıl ortaya çıktı?

• 1998 ve 2000 yılları arasında kurumsal projelerin daha kolay geliştirilmesi ve yönetilmesi için Sun firması tarafından çok ciddi yatırımlar yapıldı ama yine de istenilen sonuçlara ulaşılamadı.

• Spring’in mimarı Rod Johnson, kurumsal Java projelerinde edindiği tecrübeleri içeren “Expert One-on-One J2EE Design and Development” adındaki kitabını 2002 yılında yayınladı.

Page 11: Işık Üniversitesi - Spring Core

Spring sürümleri hakkında bizi bilgilendirir misiniz?

• Spring Framework 1.0.x Mart 2004

• Spring Framework 2.0.x Ekim 2006

• Spring Framework 2.5.x Kasım 2007

• Spring Framework 3.0.x Aralık 2009

• Spring Framework 3.1.x Şubat 2011

• Spring Framework 3.2.x Aralık 2012

• Spring Framework 4.1.x Aralık 2014 (Bu seminerin verildiği zamandaki son sürümü bu idi.)

• Sürümlerin yanındaki x’ler rakamları temsil etmektedir.

Page 12: Işık Üniversitesi - Spring Core

Spring’in modülleri hakkında biraz bilgi verir misiniz?

Page 13: Işık Üniversitesi - Spring Core

Çekirdek Spring’in içerisinde neler vardır?

• Core içerisinde IoC Container (Kap)

• Resources (Kaynaklar)

• Validation (Doğrulama)

• Data Binding (Veri Bağlama)

• Type Conversion (Tip Dönüştürme)

• Spring Expression Language (SpEL - İfade Dili)

• AOP API'leri

• Test birimleri

Page 14: Işık Üniversitesi - Spring Core

Spring çatısını sektörde öne çıkaran özellikler nelerdir?

• Spring, kurumsal Java uygulamalarını geliştirmeyi kolaylaştırarak zamandan kazandıran application framework (uygulama çatısı)dır.

• Spring, basit ve sadeleştirilmiş bir API sunar. Bu sayede Java teknolojilerini bir arada kolayca kullanmaya imkân verir.

Page 15: Işık Üniversitesi - Spring Core

• Spring, kendi çatısına ait olan kodları ile uygulamadaki kodlarının mümkün olduğunca çok az temas kurmasını sağlar.

Spring çatısını sektörde öne çıkaran özellikler nelerdir?

• Spring uygulamayı tamamıyla kendi kodları ile işgal etmez.

Page 16: Işık Üniversitesi - Spring Core

EJB (Enterprise JavaBeans)’in ortaya çıkış amacı nedir?

• EJB’lerin ilk çıktığı zamanlarda öğrenilmesi çok zor ve zahmetli olduğundan dolayı aradığı ilgi ve alakayı sektördeki yazılımcılar tarafından ne yazık ki bulamadı ve zamanla da cazibesini yitirdi.

• EJB’ler kurumsal projelerin ortak olan sorunlarına çözümler sunmak için üretildiler.

• EJB’ler transaction, uzak noktalardaki makinelerle haberleşmelerde ve verinin güvenliğinin sağlanmasında oldukça etkiliydi.

Page 17: Işık Üniversitesi - Spring Core

Spring çatısının ortaya çıkış amacı nedir?

• Spring kurumsal projelerin hemen hemen bütün sorunlarına çok daha zarif ve pratik olarak çözümler sunmayı başardı ve bir anda sektörün de-facto standartı oluverdi.

• Spring de EJB’ye alternatif olabilmek için üretilen çatılardan sadece birisidir.

Page 18: Işık Üniversitesi - Spring Core

EJB’in ve Spring’in iş ilanlarındaki durumu nedir?

• EJB ile Spring aynı işi yapıyorlar ama kurumsal Java iş ilanlarının birçoğunda Spring bilen kişileri ararlar.

• Zamanında firmalarda Spring ile yüzbinlerce kurumsal projeler kodlandığından dolayı Spring sektörde artık kalıcı olarak kabul görmüştür.

Page 19: Işık Üniversitesi - Spring Core

Spring IoC Container (Kap) nedir? Ne işe yarar?

Page 20: Işık Üniversitesi - Spring Core

IoC, DI ve Spring Container ilişkisi nedir?

• DI (Dependency Injection - Bağımlılık Enjeksiyonu) ile de oluşturulan bu nesneler kullanılacakları sınıfların içine enjekte ediliyor.

• IoC (Inversion of Control - Kontrolün Spring’e Çevrilmesi) ile Spring bean’leri yani Java nesneler oluşturuluyor.

Page 21: Işık Üniversitesi - Spring Core

Sorular & Cevaplar

Page 22: Işık Üniversitesi - Spring Core

seminerine katılıp

beni sabırla dinlediğiniz için sizlere çok teşekkür ederim.

Core

Turkey Java User Group

Turkey JUG Lideri Senior Java DeveloperBilgisayar Mühendisi

Mimar Aslan

[email protected]