Kurumsal Java & Web Teknolojileri

  • 785 views
Uploaded on

4/5/2013 tarihinde Mustafa Kemal Üniversitesi'nde verdiğim seminer

4/5/2013 tarihinde Mustafa Kemal Üniversitesi'nde verdiğim seminer

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
785
On Slideshare
0
From Embeds
0
Number of Embeds
4

Actions

Shares
Downloads
14
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Kurumsal Java&Web TeknolojileriÖmer ÖZKANomer@ozkan.info
  • 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● 2008den 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. JVMde Ç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
  • 11. Servlet Containers● Tomcat● Jetty● ...
  • 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ıPresentationBusinessPersistence
  • 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
  • 20. Spring
  • 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)
  • 27. Sorular?