Azerbaycan Qafqaz Üniversitesi - (Java Persistence API) JPA ve Hibernate ile ORMMimar Aslan
25 Mayıs 2013 tarihinde Azer JUG (Java User Group) , Azer OUG (Oracle User Group)'un birlikte düzenledikleri Java Web Teknolojileri Seminerine Azerbaycan Qafqaz Üniversitesinde konuşmacı olarak katıldım ve (Java Persistence API) JPA ve Hibernate framework ile ORM hakkında bir sunum yaptım.
Azerbaycan Qafqaz Üniversitesi - (Java Persistence API) JPA ve Hibernate ile ORMMimar Aslan
25 Mayıs 2013 tarihinde Azer JUG (Java User Group) , Azer OUG (Oracle User Group)'un birlikte düzenledikleri Java Web Teknolojileri Seminerine Azerbaycan Qafqaz Üniversitesinde konuşmacı olarak katıldım ve (Java Persistence API) JPA ve Hibernate framework ile ORM hakkında bir sunum yaptım.
ASP.NET MVC'den ASP.NET Core MVC'ye Geçiş SüreciSinan Bozkuş
BilgeAdam İzmir'de "ASP.NET MVC'den ASP.NET Core MVC'ye Geçiş Süreci" ile ilgili verdiğim seminerin sunumu.
Kaynak kodları: https://github.com/sinanbozkus/BilgeAdam_Izmir_AspNetCore_Workshop
Turkey JUG (Java User Group) Leader,
Turkey JBUG (JBoss User Group) Leader,
Computer Engineer, Senior Java Architect,
Software (Author, Speaker, Trainer)
Mimar Aslan
ASP.NET MVC'den ASP.NET Core MVC'ye Geçiş SüreciSinan Bozkuş
BilgeAdam İzmir'de "ASP.NET MVC'den ASP.NET Core MVC'ye Geçiş Süreci" ile ilgili verdiğim seminerin sunumu.
Kaynak kodları: https://github.com/sinanbozkus/BilgeAdam_Izmir_AspNetCore_Workshop
Turkey JUG (Java User Group) Leader,
Turkey JBUG (JBoss User Group) Leader,
Computer Engineer, Senior Java Architect,
Software (Author, Speaker, Trainer)
Mimar Aslan
1. Hazırlayan: Barış Dere
www.barisdere.com @BarisDere
baris.dere@gmail.com
Spring Framework
Eğitimi
Ders 1: Genel bir bakış
Http://www.youtube.com/barisdere
2. Ajanda
● Eğitim konuları
● Spring Framework nedir?
● Inversion Of Control (Container)
● Modüller
● Neden Spring kullanmalıyız?
● Tavsiye linkler
Spring Framework Eğitimi Genel bakış
www.barisdere.com
3. Eğitim konuları
● Spring Framework
● Spring ORM
● Spring JDBC
● Spring AOP
● Spring Web
● Spring WebFlow
● Spring Roo
Spring Framework Eğitimi Genel bakış
www.barisdere.com
4. Spring Framework nedir?
● Kurumsal Java uygulamalarını geliştirmeyi
kolaylaştıran ve hızlandıran uygulama
geliştirme çatısı (Application framework)
● Açık kaynak kodlu
● POJO – nesne tabanlı
Spring Framework Eğitimi Genel bakış
www.barisdere.com
5. Spring Framework nedir? (2)
● Mimarı Rod Johnson
● Ekim 2002 - Expert One-on-One J2EE Design
and Development kitabı çıktı
● İlk versiyonu (1.0) 2003 tarihinde Rod Johnson
tarafından çıkarıldı
● Apache License 2.0
● En son versiyonu 3.1.0 Aralık 2011 itibariyle
Spring Framework Eğitimi Genel bakış
www.barisdere.com
6. Spring Framework nedir? (3)
● Spring bir çok problem alanına çözümler
sunuyor
– Modern Web (REST, HTML5, AJAX)
– Data Access (RDBMS, NoSQL, Map Reduce,
Cloud)
– Integration (Enterprise Orchestration,
Messaging, Batch applications)
– Mobile (Android, Iphone)
– Sosyal ağlarla entegrasyon (Facebook, Twitter,
Linkedin)
Spring Framework Eğitimi Genel bakış
www.barisdere.com
7. Spring Framework nedir? (4)
● (Devam...) Spring bir çok problem alanına
çözümler sunuyor
– Security (Authorization ve Authentication
entegrasyonu
– Cloud Ready (Google App Engine, Amazon
EC2, Cloud Foundry)
Spring Framework Eğitimi Genel bakış
www.barisdere.com
8. Inversion of Control
(Dependency Injection)
● En kısa anlatımıyla 'Bağımlılıkları yok etmek'
● Ne yapılacağını ne zaman yapılacağından
ayırmak
● Kontrolün yer değiştirmesi
● Ilk 1988 Martin Fowler tarafından ortaya atıldı
● Dependency Injection olarak yeniden
tanımlandı
Spring Framework Eğitimi Genel bakış
www.barisdere.com
9. Inversion of Control
(Dependency Injection) (2)
Kontrol sizde Kontrol sistemde
#ruby require 'tk'
puts 'What is your name?' root = TkRoot.new()
name = gets name_label = TkLabel.new() {text "What is Your Name?"}
process_name(name) name_label.pack
puts 'What is your address?' name = TkEntry.new(root).pack
address = gets name.bind("FocusOut") {process_name(name)}
process_address(address) addr_label = TkLabel.new() {text "What is Your Address?"}
addr_label.pack
address = TkEntry.new(root).pack
address.bind("FocusOut") {process_address(address)}
Tk.mainloop()
Spring Framework Eğitimi Genel bakış
www.barisdere.com
10. Inversion of Control
(Dependency Injection) (3)
● Inversion of Control uygulamaları:
– using a factory pattern
– using a service locator pattern
– using a constructor injection
– using a setter injection
– using an interface injection
– using a contextualized lookup
Spring Framework Eğitimi Genel bakış
www.barisdere.com
11. Inversion of Control container
Nesnelerin
– hayat döngüsünü yönetmek
– bağımlılıklarını yönetmek
– konfigürasyonunu sağlamak
– beraber bir bütün halinde çalışmasını sağlamak
– tasarım kalıplarının kullanışını kolaylaştırmak
Spring Framework Eğitimi Genel bakış
www.barisdere.com
12. Inversion of Control container
(Dependency Injection) (2)
Spring Framework Eğitimi Genel bakış
www.barisdere.com
14. Neden Spring Framework?
● Kendini ispatlamış (Dünya çapında milyonlarca
kullanıcısı var)
● Inversion Of Control gücü
● Kolay test edilebilir
● Gereksiz Exceptions sınıfları gizlenmiş
● Diğer API veya frameworklar için işimizi
kolaylaştıran araçlar
Spring Framework Eğitimi Genel bakış
www.barisdere.com
15. Neden Spring Framework? (2)
● AOP entegrasyonu ve bununla gelen
kolaylaştırılmıs:
– Auditing
– Declarative Transaction Management
– Caching
– Exception Handling
– Recovery (Retry)
– Security
Spring Framework Eğitimi Genel bakış
www.barisdere.com
16. Tavsiye linkler
● http://martinfowler.com/bliki/InversionOfControl.
html
● http://www.springsource.org/
● http://martinfowler.com/articles/injection.html
Spring Framework Eğitimi Genel bakış
www.barisdere.com
17. Ders notları
● Presentasyon dosyalarını download etmek için:
www.barisdere.com
● Tüm Full HD videolar için:
http://www.youtube.com/barisdere
● Takip etmek için: @BarisDere
● Bana ulaşmak için: baris.dere@gmail.com
Spring Framework Eğitimi Genel bakış
www.barisdere.com