Design Patterns (GoF) for Java Eğitimi
Design Patterns (GoF) for Java, Gang of Four (GoF) tarafından önerilen, yerleşik kalıpları kullanarak tekrarlayan yazılım tasarım sorunlarını çözmek için yapılandırılmış bir yaklaşımdır.
Bu eğitmen liderliğindeki, canlı eğitim (çevrimiçi veya yerinde), yazılım yapısını, sürdürülebilirliği ve ölçeklenebilirliği iyileştirmek için tasarım kalıplarını uygulamak isteyen orta düzey Java geliştiricilerine yöneliktir.
Bu eğitimin sonunda katılımcılar şunları yapabilecektir:
- Tasarım kalıplarının amacını ve faydalarını anlayın.
- Creational, Structural ve Behavioral kalıplarını Java içinde etkili bir şekilde uygulayın.
- Kodun yeniden kullanılabilirliğini, ölçeklenebilirliğini ve sürdürülebilirliğini artırın.
- Tasarım kalıplarını kullanarak mevcut kod tabanlarını yeniden düzenleyin.
Kurs Formatı
- Etkileşimli ders ve tartışma.
- Çok sayıda alıştırma ve uygulama.
- Canlı laboratuvar ortamında uygulamalı uygulama.
Kurs Özelleştirme Seçenekleri
- Bu kurs için özelleştirilmiş bir eğitim talep etmek için lütfen bizimle iletişime geçin.
Eğitim İçeriği
Tasarım Kalıplarına Giriş Design Patterns
- Tasarım kalıpları nedir?
- Tasarım kalıplarını neden kullanmalıyız?
- Gang of Four (GoF) ve kalıp sınıflandırması
- Yaygın tasarım ilkeleri (SOLID, DRY, KISS, YAGNI)
Oluşturucu Design Patterns
- Fabrika Metodu
- Soyut Fabrika
- Tekilton (Singleton)
- İnşacı (Builder)
- Prototip
Yapısal Design Patterns
- Uyarlayıcı (Adapter)
- Köprü (Bridge)
- Bileşik (Composite)
- Dekoratör (Decorator)
- Cephe (Facade)
- Ağırlıksız (Flyweight)
- Vekil (Proxy)
Davranışsal Design Patterns
- Sorumluluk Zinciri (Chain of Responsibility)
- Komut (Command)
- Yorumlayıcı (Interpreter)
- Yineleyici (Iterator)
- Arabulucu (Mediator)
- Anı (Memento)
- Gözlemci (Observer)
- Durum (State)
- Strateji (Strategy)
- Şablon Metodu (Template Method)
- Ziyaretçi (Visitor)
Gerçek Dünya Uygulamalarında Design Patterns Uygulama
- Kurumsal uygulamalarda tasarım kalıpları
- Tasarım kalıplarını kullanarak eski kodu yeniden düzenleme
- Sağlam çözümler için birden fazla kalıbı birleştirme
- En iyi uygulamalar ve dikkat edilmesi gereken noktalar
Özet ve Sonraki Adımlar
Kurs İçin Gerekli Önbilgiler
- Java programlama deneyimi
- Object-Oriented Programming (OOP) kavramlarının anlaşılması
- Yazılım mimarisi ilkeleri hakkında temel bilgi
Hedef Kitle
- Tasarım becerilerini geliştirmek isteyen Java geliştiriciler
- Ölçeklenebilir uygulamalar tasarlayan yazılım mimarları
- Kodun sürdürülebilirliğini ve verimliliğini artırmayı hedefleyen teknik liderler
Açık Eğitim Kursları 5 ve üzeri katılımcı gerektirir.
Design Patterns (GoF) for Java Eğitimi - Booking
Design Patterns (GoF) for Java Eğitimi - Enquiry
Design Patterns (GoF) for Java - Danışmanlık Talebi
Danışmanlık Talebi
Yaklaşan Etkinlikler
İlgili Kurslar
GlassFish Administration
21 SaatGlassFish Yönetim Eğitimi, katılımcılara kurulumun, yapılandırmanın, yönetimin, izlemenin GlassFish sunucusunun sırlarını tanıtıyor. Eğitim, gelecekteki GlassFish sunucu yöneticilerine açıktır.
Administering GlassFish Server with Java EE applications introduction
21 SaatGlassFish, açık kaynaklı bir uygulama sunucusudur. Bu üç günlük kurs, Java EE uygulamalarıyla birlikte GlassFish Sunucusunu yönetmeye bir giriş sunmaktadır.
Gosu Programming
7 SaatBu eğitmen liderliğindeki, canlı eğitim (Türkiye çevrimiçi veya yerinde), programcıların Gosu'nun statik türlendirmesini ve pragmatik yaklaşımını indirmesini, kurmasını ve uygulamasına yönelik beceriler kazanmasını amaçlamaktadır.
Bu eğitimin sonunda katılımcılar, kütüphaneler, kullanıcı arayüzü öğeleri, kurallar ve daha fazlası için basit komut dosyaları yazmak üzere Gosu kullanarak programlama yapabilecektir.
Guava
21 SaatBu eğitmen liderliğindeki, canlı eğitim (Türkiye çevrimiçi veya yerinde), Guava hakkında bilgi edinmek ve Guava'i programlamada kullanmak isteyen Java programcıya yöneliktir.
Bu eğitimin sonunda katılımcılar şunları yapabilecektir:
- Guava'i Java programlamada nasıl kullanacaklarını öğrenmek.
- Guava'i standart kodlama uygulamalarını kolaylaştırmak için kullanmak.
- Java kodlarının okunması ve anlaşılması kolay ve öz olmasını sağlamak.
Jakarta EE Fundamentals
28 SaatBu eğitmen liderliğindeki, canlı eğitim (Türkiye çevrimiçi veya yerinde), bulut yerel uygulamaları oluşturmak, taşımak ve dağıtmak isteyen geliştiricilere yöneliktir ve Java EE 8'in tam uygulamasını ve bulut bilişim teknolojisini kullanır.
Bu eğitimin sonunda katılımcılar şunları yapabilecektir:
- Jakarta EE uygulamaları geliştirmeye başlamak için gerekli geliştirme ortamını kurmak.
- Jakarta Persistence API ile veritabanı güdümlü uygulamalar oluşturmak ve derlemek.
- Taşınabilirlik için Jakarta EE uygulamalarını Jakarta RESTful web hizmetleriyle geliştirmek ve entegre etmek.
- Docker ile bulut dağıtımı için bulut yerel uygulamalarını konteynerleştirmek.
Developing Applications for the Java EE 7 Platform Ed 1
35 SaatBu eğitmen liderliğindeki, canlı eğitim (online veya yerinde), kurumsal uygulamalar geliştirmek için Java EE 7'yi kurmak, yönetmek ve uygulamak isteyen geliştiricilere yöneliktir.
Bu eğitimin sonunda katılımcılar, Java EE 7 kullanarak kurumsal uygulamaları ve web servislerini oluşturabilecek, yönetebilecek, uygulayabilecek, dağıtabilecek ve güvence altına alabileceklerdir.
Java EE 8 for Beginners
21 SaatBu eğitmen liderliğindeki, canlı eğitim (Türkiye çevrimiçi veya yerinde), bulut uygulamaları oluşturmak için Java EE 8'in yeni özelliklerini kullanmak isteyen geliştiricilere yöneliktir.
Bu eğitimin sonunda katılımcılar şunları yapabilecektir:
- Geliştirmeye başlamak için gerekli geliştirme ortamını kurmak.
- Java Enterprise Edition (JEE) arkasındaki kavramları ve mimariyi anlamak.
- Örnek bir bulut uygulaması (veya web hizmeti) oluşturmak.
- Bir uygulamayı bir veritabanına bağlamak.
- Bağımlılık enjeksiyonunu kullanarak durum bilgili bileşenleri yazmak ve yönetmek.
- Java EE bileşenleri için entegrasyon testleri yazmak.
Java EE 8 Advanced
21 SaatBu eğitmen liderliğindeki, canlı eğitim (Türkiye çevrimiçi veya yerinde), Java EE 8 kullanarak buluta hazır kurumsal uygulamalar oluşturmak ve dağıtmak isteyen geliştiricilere yöneliktir. Gelişmiş Java teknolojileri ve API'leri kullanır.
Bu eğitimin sonunda katılımcılar şunları yapabilecektir:
- Kurumsal uygulamalar geliştirmeye başlamak için gerekli geliştirme ortamını kurmak.
- İş odaklı uygulamalar tasarlamak ve oluşturmak için iş mantığını uygulamak.
- Java EE 8 bileşenleriyle mikro hizmetleri entegre ederek tek katmanlı uygulamaları son derece ölçeklenebilir ve buluta hazır uygulamalara dönüştürmek.
- Java EE 8 tasarım kalıplarını ve kodlama en iyi uygulamalarını anlamak ve uygulamak.
Microservice Development with Java EE 8, Docker, and Kubernetes
28 SaatBu eğitmen liderliğindeki, canlı eğitim (Türkiye çevrimiçi veya yerinde), uygulamalarını konteynerleştirmek ve bulutta mikro hizmetler olarak çalıştırmak isteyen geliştiricilere yöneliktir.
Bu eğitimin sonunda katılımcılar şunları yapabilecektir:
- Java mikro hizmetlerini Docker konteynerlerinde oluşturmak ve dağıtmak.
- Kubernetes kullanarak Docker konteynerlerini yönetmek.
- Mikro hizmetleri mevcut monolitik bir sistemle entegre etmek.
- Mikro hizmetleri izlemek, test etmek ve güvenceye almak.
- Konteynerleri ve düzenleme ortamlarını sorun gidermek.
Enterprise Java Programming with Java EE and JBoss (EJB 3.0)
28 SaatBu 4 günlük kurs, zaten Java dilini bilen ve uygulamaları dağıtırken güvenlik etkilerini göz önünde bulundurarak Enterprise Java Beans 2.0 teknolojisini kullanmak isteyen programcılar içindir. Bu kursun büyük bir pratik bileşeni vardır ve bu bileşen, Enterprise Java Beans tabanlı bir e-ticaret uygulaması geliştirmeyi içerir. Kurs, JBoss Application Server kullanır.
Java Virtual Machine (JVM)
7 SaatBu eğitmen liderliğindeki, canlı eğitim (Türkiye çevrimiçi veya yerinde), JVM araçlarını ve özelliklerini kullanarak Java programları çalıştırmak isteyen Java geliştiriciye yöneliktir.
Bu eğitimin sonunda katılımcılar şunları yapabilecektir:
- JVM'yi ve nasıl çalıştığını anlayabilecektir.
- Yansımayı (reflection) ve farklı bellek alanlarını öğrenebilecektir.
- JVM araç arayüzünü nasıl kullanacağını anlayabilecektir.
- JVM'yi kullanarak Java programlarını herhangi bir cihazda veya işletim sisteminde çalıştırabilecektir.
NetBeans
14 SaatBu eğitmen liderliğindeki, canlı eğitim (Türkiye çevrimiçi veya yerinde), NetBeans kullanarak Java ve diğer programlama dilleriyle uygulamalar geliştirmek isteyen geliştiricilere yöneliktir.
Bu eğitimin sonunda katılımcılar şunları yapabilecektir:
- NetBeans hakkında bilgi edinin ve nasıl çalıştığını öğrenin.
- NetBeans'i Java programlamada nasıl kullanacağınızı öğrenin.
- NetBeans kullanarak şablonlar ve projeler oluşturun.
Enterprise Application Integrations with Spring Integration
14 SaatBu eğitmen liderliğindeki, canlı eğitim (Türkiye çevrimiçi veya yerinde), yüksek kaliteli ve verimli kurumsal entegrasyon çözümleri tasarlamak ve oluşturmak isteyen geliştiricilere yöneliktir.
Bu eğitimin sonunda katılımcılar şunları yapabilecektir:
- Spring Integration ile entegrasyon çözümleri geliştirmeye başlamak için gerekli geliştirme ortamını kurmak.
- Spring Integration özelliklerini, temel kavramlarını ve bileşenlerini anlamak.
- Kurumsal entegrasyon kalıplarını nasıl uygulayacaklarını öğrenmek.
- Spring Integration ile mesaj odaklı kurumsal uygulamalar oluşturmak.
- Harici akışlarla ve NoSQL veritabanlarıyla (Apache Kafka, MongoDB, Redis vb.) entegrasyonu sağlamak.
- Uç noktalar arasında mesajlaşma akışlarını izlemek ve yönetmek.
Vaadin
14 SaatBu eğitmen liderliğindeki, canlı eğitim (Türkiye çevrimiçi veya yerinde), programcılara, Java geliştiricilerine ve uygulamaları geliştirmek ve dağıtmak için Vaadin'i kullanmak isteyen herkese yöneliktir.
Bu eğitimin sonunda katılımcılar şunları yapabilecektir:
- Bir Vaadin projesi kurmak ve yapılandırmak.
- Uygulama geliştirme konusunda Vaadin'in temellerini anlamak.
- Uygulama geliştirmek için Vaadin'i kullanmak.
Vert.x: Build a Reactive Application on JVM
14 SaatBu eğitmen liderliğindeki canlı eğitimde Türkiye'da katılımcılar, eşzamansız, olay tabanlı bir web uygulaması oluşturmak için Vert.x'yi nasıl kullanacaklarını öğreneceklerdir.
Bu eğitimin sonunda katılımcılar şunları yapabilecektir:
- Vert.x yığınındaki farklı bileşenleri (çekirdek, web, istemci vb.) anlayıp kullanabileceklerdir.
- Vert.x kullanarak ağ yardımcı programları, HTTP/REST mikro hizmetleri, yüksek hacimli olay işleme, arka uç mesajlaşma uygulamaları vb. oluşturabileceklerdir.
- Minimal çekirdek iş parçacığı kullanarak yüksek eşzamanlılığı işleyebilen bir uygulamayı çalıştırabileceklerdir.
- Vert.x'nin API'lerini Java, JavaScript, Groovy, Ruby, Ceylon, Scala, Kotlin vb. için kullanabileceklerdir.
- Vert.x-Unit ile eşzamansız kodu birim testi yapabileceklerdir.
- Minimal donanımla bir uygulamayı dağıtabilecek ve ölçeklendirebileceklerdir.