Turkey JUG (Java User Group) Leader,
Turkey JBUG (JBoss User Group) Leader,
Computer Engineer, Senior Java Architect,
Software (Author, Speaker, Trainer)
Mimar Aslan
Kıbrıs Doğu Akdeniz Üniversitesi DAU - Java EE TeknolojileriMimar Aslan
Turkey JUG (Java User Group) Leader,
Turkey JBUG (JBoss User Group) Leader,
Computer Engineer, Senior Java Architect,
Software (Author, Speaker, Trainer)
Mimar Aslan
Bartın Üniversitesi - Spring JdbcTemplateMimar Aslan
Turkey JUG (Java User Group) Leader,
Turkey JBUG (JBoss User Group) Leader,
Computer Engineer, Senior Java Architect,
Software (Author, Speaker, Trainer)
Mimar Aslan
Mevlana Üniversitesi - JSF ve Primefaces UIMimar Aslan
Turkey JUG (Java User Group) Leader,
Turkey JBUG (JBoss User Group) Leader,
Computer Engineer, Senior Java Architect,
Software (Author, Speaker, Trainer)
Mimar Aslan
Bilginç IT Academy - JPA (Java Persistence API)Mimar Aslan
Turkey JUG (Java User Group) Leader,
Turkey JBUG (JBoss User Group) Leader,
Computer Engineer, Senior Java Architect,
Software (Author, Speaker, Trainer)
Mimar Aslan
İstanbul Üniversitesi - Swing Application FrameworkMimar Aslan
Turkey JUG (Java User Group) Leader,
Turkey JBUG (JBoss User Group) Leader,
Computer Engineer, Senior Java Architect,
Software (Author, Speaker, Trainer)
Mimar Aslan
Turkey JUG (Java User Group) Leader,
Turkey JBUG (JBoss User Group) Leader,
Computer Engineer, Senior Java Architect,
Software (Author, Speaker, Trainer)
Mimar Aslan
Kıbrıs Doğu Akdeniz Üniversitesi DAU - Java EE TeknolojileriMimar Aslan
Turkey JUG (Java User Group) Leader,
Turkey JBUG (JBoss User Group) Leader,
Computer Engineer, Senior Java Architect,
Software (Author, Speaker, Trainer)
Mimar Aslan
Bartın Üniversitesi - Spring JdbcTemplateMimar Aslan
Turkey JUG (Java User Group) Leader,
Turkey JBUG (JBoss User Group) Leader,
Computer Engineer, Senior Java Architect,
Software (Author, Speaker, Trainer)
Mimar Aslan
Mevlana Üniversitesi - JSF ve Primefaces UIMimar Aslan
Turkey JUG (Java User Group) Leader,
Turkey JBUG (JBoss User Group) Leader,
Computer Engineer, Senior Java Architect,
Software (Author, Speaker, Trainer)
Mimar Aslan
Bilginç IT Academy - JPA (Java Persistence API)Mimar Aslan
Turkey JUG (Java User Group) Leader,
Turkey JBUG (JBoss User Group) Leader,
Computer Engineer, Senior Java Architect,
Software (Author, Speaker, Trainer)
Mimar Aslan
İstanbul Üniversitesi - Swing Application FrameworkMimar Aslan
Turkey JUG (Java User Group) Leader,
Turkey JBUG (JBoss User Group) Leader,
Computer Engineer, Senior Java Architect,
Software (Author, Speaker, Trainer)
Mimar Aslan
Turkey JUG (Java User Group) Leader,
Turkey JBUG (JBoss User Group) Leader,
Computer Engineer, Senior Java Architect,
Software (Author, Speaker, Trainer)
Mimar Aslan
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.
Türkiye'nin en büyük e-ticaret platformu Hepsiburada'nın gerçekleştirmiş olduğu Micro Frontends dönüşümü ile ilgili Hepsitech etkinliğinde yapılan teknik sunum.
Türkiye Bilişim Derneği İstanbul Şubesi tarafından düzenlenen 3. İstanbul Bilişim Konferansı sona erdi.
Marmara Üniversitesi Nişantaşı Kampüsü Erdal İnönü Bilim ve Kültür Merkezi'nde 29-30-31 Mayıs tarihleri arasında düzenlenen ve sektörün önemli konularının tartışıldığı konferansta "Bilişimde Yönetişim" enine boyuna tartışıldı.
Sayın Ümit Vardar'ın Netbeans ve Sayın Kıvanç Erdem Oracle Yazılım Araçları sunumunu yaptığı Yazılım Araçları oturumunda ben de Eclipse anlatmaya çalıştım.
Kırgızistan Türkiye Manas Üniversitesi - Java Teknolojilerinde Kariyer Mimar Aslan
Kırgızistan Türkiye Manas Üniversitesi için Java teknolojilerinde kariyer semineri düzenledik. Java dünyasında en sık kullanılan teknolojileri anlattık. Birçok kişiye yol gösterecek verimli bir seminerdi.
TurkeyJUG organized a Career in Java Technologies Seminar for Kyrgyz Turkish Manas University. I explained the most used technologies in the Java world. It will guide many people. It was a very productive seminar.
Video: https://youtu.be/9ywxPCl9wb8
İstanbul Ticaret Üniversitesi - Blockchain (Blokzinciri) - Mimar AslanMimar Aslan
Blockchain Technology and Smart Contracts
Blockchain Teknolojisi ve Akıllı Kontratlar
Turkey Java User Group Leader, Jakarta EE Ambassador,
JCP Member, JSR Contributor, Author, MSc. Computer Engineer
Mimar Aslan
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.
Türkiye'nin en büyük e-ticaret platformu Hepsiburada'nın gerçekleştirmiş olduğu Micro Frontends dönüşümü ile ilgili Hepsitech etkinliğinde yapılan teknik sunum.
Türkiye Bilişim Derneği İstanbul Şubesi tarafından düzenlenen 3. İstanbul Bilişim Konferansı sona erdi.
Marmara Üniversitesi Nişantaşı Kampüsü Erdal İnönü Bilim ve Kültür Merkezi'nde 29-30-31 Mayıs tarihleri arasında düzenlenen ve sektörün önemli konularının tartışıldığı konferansta "Bilişimde Yönetişim" enine boyuna tartışıldı.
Sayın Ümit Vardar'ın Netbeans ve Sayın Kıvanç Erdem Oracle Yazılım Araçları sunumunu yaptığı Yazılım Araçları oturumunda ben de Eclipse anlatmaya çalıştım.
Kırgızistan Türkiye Manas Üniversitesi - Java Teknolojilerinde Kariyer Mimar Aslan
Kırgızistan Türkiye Manas Üniversitesi için Java teknolojilerinde kariyer semineri düzenledik. Java dünyasında en sık kullanılan teknolojileri anlattık. Birçok kişiye yol gösterecek verimli bir seminerdi.
TurkeyJUG organized a Career in Java Technologies Seminar for Kyrgyz Turkish Manas University. I explained the most used technologies in the Java world. It will guide many people. It was a very productive seminar.
Video: https://youtu.be/9ywxPCl9wb8
İstanbul Ticaret Üniversitesi - Blockchain (Blokzinciri) - Mimar AslanMimar Aslan
Blockchain Technology and Smart Contracts
Blockchain Teknolojisi ve Akıllı Kontratlar
Turkey Java User Group Leader, Jakarta EE Ambassador,
JCP Member, JSR Contributor, Author, MSc. Computer Engineer
Mimar Aslan
Fırat Üniversitesi - Endüstri 4.0 ve Big Data (Büyük Veri) - Mimar AslanMimar Aslan
Endüstri 4.0 ve Büyük Veri Semineri
Industry 4.0 and Big Data Seminar
Türkiye Java User Group Leader, Jakarta EE Ambassador,
JCP Member, JSR Contributor, Author, MSc. Computer Engineer
Mimar Aslan
Yalova Üniversitesi - (JavaServer Pages) JSPMimar Aslan
15 Mayıs 2013 tarihinde Yalova Üniversitesinde Java Web Teknolojileri Seminerine konuşmacı olarak katıldım ve (JavaServer Pages) JSP hakkında bir sunum yaptım.
Bilecik Şeyh Edebali Üniversitesi - (JavaServer Faces) JSFMimar Aslan
20 Mayıs 2013 tarihinde Bilecik Şeyh Edebali Üniversitesinde Java Web Teknolojileri Seminerine konuşmacı olarak katıldım ve (JavaServer Faces) JSF framework hakkında bir sunum yaptım.
Beykoz Meslek Yüksekokulu - (JavaServer Faces) JSFMimar Aslan
5 Nisan 2013 tarihinde Beykoz Meslek Yüksekokulunda Java Web Teknolojileri Seminerine konuşmacı olarak katıldım ve (JavaServer Faces) JSF framework hakkında bir sunum yaptım.
Kocaeli Üniversitesi - (JavaServer Faces) JSFMimar Aslan
8 Nisan 2013 tarihinde Kocaeli Üniversitesinde Java Web Teknolojileri Seminerine konuşmacı olarak katıldım ve (JavaServer Faces) JSF framework hakkında bir sunum yaptım.
1. Spring AOP Semineri
Turkey JUG Lideri
Senior Java Developer
Bilgisayar Mühendisi
Mimar Aslan
www.mimaraslan.com
mimaraslan@yandex.ru
AOP
24 Aralık 2014
Turkey
Java User Group
2. • 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?
6. Bu seminerde neler öğreneceksiniz?
• Spring Core ile kurumsal Java projelerini
• Kurumsal projelerden kullanılan çok katmanlı mimariyi
• AOP (Aspect Oriented Programming - İlgi Yönelimli
Programlama) kavramlarını
• OOP ve AOP ilişkisini
• Spring XML dosyaları ile AOP ilişkisini
• Java ile AOP ilişkisini
• AOP ile kullanılan annotation’lar
• AspectJ ve AOP ilişkisini
7. • 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ı.
8. 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.
10. • Spring nesne tabanlı olduğundan dolayı kodlarımızı
dilediğimiz an kolayca test edebilme imkânını da bize sunar.
Spring çatısını kullanmanın bize ne gibi katkıları olur?
• Spring, yazılım sektöründe kendini ispatlamıştır.
Bu nedenle de dünya genelinde milyonlarca kullanıcısı
vardır.
• IoC (Inversion Of Control) presnsibini kullanmaktadır. IoC
sayesinde çok güçlü bir container(kap) haline gelmiştir.
• Spring çatısı, diğer API ve çatıları için organize ve entegre
çalışmayı sağlayan birçok yardımcı araçlara sahiptir.
• Gereksiz exception(istisna) sınıflarını yazılımcılardan gizler.
Bu soyutlama ile daha temiz bir kod yazma imkânını sağlar.
11. Spring AOP nedir? Ne değildir?
• AOP'un en büyük amacı uygulamadaki modülerliği arttırmaktır.
Bu sayede kod bakımı kolaylaşır ve kendini tekrar eden kodlar en
aza indirilmiş olunur.
• Spring çatısının bize sunmuş olduğu bir web modülüdür.
• AOP, programın bir parçası olmayan metotların ve modüllerin
merkezi bir yerde toplandıktan sonra programdan bağımsız
olarak uygulanmasını sağlar.
• Projelerde AOP kullanılması zorunlu değildir ama günümüzde
kurumsal projelerde kullanması artık bir ihtiyaçtır.
AOP
• Projelerde transaction, loglama ve güvenlik gibi
program parçaları uygulamanın her katmanda kullanılır.
13. AOP ve OOP arasındaki ilişki nedir?
• AOP değişik tipteki nesnelere dağıtılmış bir metodun tek bir
yerde korunmasıdır.
• OOP’nin temeli sınıflar ve nesnelerdir. AOP’nin temeli ise
aspect (yön, bakış açısı)’dır.
• AOP’yi anlayabilmek için encapsulation (saklama, koruma,
kapsülleme)’yi de çok iyi anlamak lazımdır.
• Encapsulation'ın amacı içeriği saklamak değildir sadece
kontrolsüz ve gereksiz erişimlere mani olmaktır.
AOP, encapsulation’ın tamamlayıcısıdır.
• AOP yaklaşımı OOP’de transaction, loglama ve güvenlik gibi
alt yapısal ihtiyaçlar için kullanılır. AOP, OOP’yi tamamlar.
14. AOP kavramları nelerdir?
• Aspect - Değişik nesnelere dağıtılmış metotların tek bir yerde
toplanmasıdır.
• JoinPoint - Programın çalışması esnasındaki bir andır.
Mesela bir metoda girmeden hemen önceki yada bir metottan
çıktıktan hemen sonra gibi sadece bir anı ifade eder.
• PointCut - Çalışma anında eğer bir JoinPoint'e denk gelinirse
PointCut kendisiyle önceden ilişkili kodu devreye sokar.
Mesela loglama kodu istediğimiz bir esnada araya girer ve
çalıştırılır.
• JoinPoint - Programın doğal çalışma seyri içerisinde aspect
kodlarınızın ne zaman çalıştırılması gerektiğinin belirtilmesidir.
15. • Concern - Transactions (işlemler), logging (not alma),
exception handling (istisna işleme), security (güvenlik),
caching (ön bellek) bunların tümüne verilen isimdir.
AOP kavramları nelerdir?
• AspectJ - Spring AOP modülü ile XML’ler üzerinden AspectJ ile
de Java sınıflarından annotation’lar ile AOP işlemlerini
yapmaktayız.
• Cross-Cutting Concern -
Tüm katmanların hepsinin
dikey olarak
kesmesilmesidir ve AOP'un
merkezindedir.
16. • Advice - Belirli bir JoinPoint zamanında herhangi bir aspect
tarafından gerçekleştirilen iştir.
before Bir isteğin hemen öncesinde bir metodu çalıştır.
after Bir isteğin hemen sonrasında bir metodu çalıştır.
afterReturning Bir metodun geri dönüş değerinden hemen sonra
işletilecek metodu çalıştır.
afterThrowing Bir işlemde istisna meydana geldikten hemen sonra
işletilecek metodu çalıştır.
around Bir isteğin hemen öncesinde hem de sonrasında
işletilecek bir metodu çalıştır.
AOP kavramları nelerdir?
27.
seminerine katılıp
beni sabırla dinlediğiniz için
sizlere çok teşekkür ederim.
Turkey JUG Lideri
Senior Java Developer
Bilgisayar Mühendisi
Mimar Aslan
www.mimaraslan.com
mimaraslan@yandex.ru
AOP
Turkey
Java User Group