ACM

DESIGN PATTERNS



Design Pattern’ler, mimariyi sistemin tüm aşamalarına işlemek ve mimari yaklaşımın anlaşılmasını sağlamak için kullanılan tasarım ve mimariyi yakalayan bir tekniktir. Design Pattern’ler, kod geliştiricilerin tasarımı anlamalarını ve üzerlerinde rahatlıkla çalışabilmelerini sağlarlar.

Bu eğitimde, design pattern’ler geniş bir perspektifte tanıtılmakta ve örneklerle birlikte prensipleri ortaya konulmaktadır. Özetle:

- Ortak tasarım problemlerinin çözülmesi
- Ortak bilginin yazılım geliştirirken kullanımı
- Pattern’lerin tüm yazılım geliştirme sürecinde kullanımı: mimari, tasarım ve implementasyon
- Neyin pattern oluşturduğunu ve neyin oluşturmadığını anlamak
-Yazılım geliştirme sürecinde pattern’lerin faydaları
-Obje tabanlı tasarımlar için en çok kullanılan pattern’lerin kullanımı
- Pattern’lerin kod geliştirirken nasıl kullanılabilecekleri

gibi konularda konseptler paylaşılacak ve örneklerle birlikte çalışılacaktır.


EĞİTİMİN İÇERİĞİ

1.Tasarım ve Mimari
- Yazılım mimarisi nedir?
- Mimariyi tanımlamak mı anlamlandırmak mı?
- Bilginin tekrar kullanımı
- Yazılım tasarımında pattern’ler
7.Value Patterns
- Whole Value
- Value Object
- Enumeration Values
- Class Factory Method
- Copied Value
- Immutable Value
- Mutable Companion
2. Pattern Yapısı
- Basit form
- Problem ve kuvvetler
- Çözüm ve sonuçları
- Örnek: Composite pattern
- Pattern’leri dokümante etmek
- Pattern kullanımını dokümante etmek
8. Functional Patterns
- Named Selector
- Command
- Command Processor
- Command Adapter
- Composite Command
- Composite Exception
- Block
- Active Object
3. Pattern’leri Organize Etmek
- Pattern katalogları
- "Gang of Four"
- "Pattern-Oriented Software Architecture" (POSA)
- Strategic ve Taktiksel pattern’ler
- Organizational patterns
- Analysis patterns
- Architectural patterns
- Design patterns
- Pattern dilleri
9. Sequential Patterns
- Combined Method
- Finally for Each Release
- Execute-around Method
4. Delegation Patterns
- Prensipler
- Adapter
- Proxy
- Bridge
- Manager
10. Iteration Patterns
- Iterator
- Combined Iterator
- Enumeration Method
5. Decoupling Patterns
- Katmanlar
- Interface Decoupling
- Role Decoupling
- Observer
- The Law of Demeter
11. Selection Patterns
- Null Object
- State-based Selection
- Objects for States (State)
- Collections for State
6. Creational Patterns
- Factory Method
- Disposal Method
- Singleton
- Cloning
- Copy Constructor

KİMLER KATILMALI

Eğitim isteğe bağlı olarak C++ veya Java dilinde verilebilmektedir. Eğitim, içeriğe göre C++ veya Java ile çalışmakta olan deneyim sahibi yazılımcılar, yazılım mimarları ve tasarımcılara yöneliktir.