Bu makalemizde, nesne oluşturma sürecini soyutlayarak, farklı sınıf ailelerinin birbirleriyle uyumlu şekilde çalışması ve oluşturulması işlemini merkezileştiren Abstract Factory tasarım kalıbını inceleyeceğiz. Bu serinin genelinde olduğu gibi öncelikle Abstract Factory tasarımın kalıbının ne olduğunu, hangi durumlarda hangi sorunlara çözüm sunduğunu konuşacak, sonrasında gelen bir talebe istinaden herhangi bir tasarım kalıbı kullanmadan bir çözüm üretecek, ardından bu çözümün problemlerini ve hangi yazılım tasarım prensiplerine aykırı olduğunu tartışacak, son olarak da Abstract Factory tasarım kalıbı ile aynı talebe uygun bir çözüm üretmeye çalışacağız.
Levent KARAGÖL
-
-
Bu makalemizde, nesne oluşturma sürecini soyutlayarak, nesnelerin nasıl ve hangi sınıfın örnekleri olarak oluşturulacağına karar verme işlemini merkezileştiren Factory Method tasarım kalıbını inceleyeceğiz. Bu serinin genelinde olduğu gibi öncelikle Factory Method tasarımın kalıbının ne olduğunu, hangi durumlarda hangi sorunlara çözüm sunduğunu konuşacak, sonrasında gelen bir talebe istinaden herhangi bir tasarım kalıbı kullanmadan bir çözüm üretecek, ardından bu çözümün problemlerini ve hangi yazılım tasarım prensiplerine aykırı olduğunu tartışacak, son olarak da Factory Method tasarım kalıbı ile aynı talebe uygun bir çözüm üretmeye çalışacağız.
-
Bu makalemizde, nesne oluşturma sürecini soyutlayarak, nesnelerin nasıl ve hangi sınıfın örnekleri olarak oluşturulacağına karar verme işlemini merkezileştiren Simple Factory tasarım kalıbını inceleyeceğiz. Bu serinin genelinde olduğu gibi öncelikle Simple Factory tasarımın kalıbının ne olduğunu, hangi durumlarda hangi sorunlara çözüm sunduğunu konuşacak, sonrasında gelen bir talebe istinaden herhangi bir tasarım kalıbı kullanmadan bir çözüm üretecek, ardından bu çözümün problemlerini ve hangi yazılım tasarım prensiplerine aykırı olduğunu tartışacak, son olarak da Simple Factory tasarım kalıbı ile aynı talebe uygun bir çözüm üretmeye çalışacağız.
-
Bu makalemizde, özellikle nesne oluşturma süreçlerinde kullanılan Singleton tasarım kalıbını inceleyeceğiz. Öncelikle Singleton tasarım kalıbının ne olduğunu, hangi durumlarda hangi sorunlara çözüm sunduğunu konuşacak, sonrasında gelen bir talebe istinaden herhangi bir tasarım kalıbı kullanmadan bir çözüm üretecek, ardından bu çözümün problemlerini ve hangi yazılım tasarım prensiplerine aykırı olduğunu tartışacak, son olarak da Singleton tasarım kalıbı ile aynı talebe uygun bir çözüm üretmeye çalışacağız.
-
Bu makalemizde, seri boyunca işleyeceğimiz tasarım kalıplarının üzerine kurulduğu yazılım tasarım prensiplerini inceleyeceğiz.
-
Bu makaleyle birlikte, uzun soluklu tasarım kalıpları (design patterns) serimize başlıyoruz. Uzman junior ile senior developer arasındaki farkı ortaya çıkaran tasarım kalıplarına neden ihtiyaç duyduğumuz ve bize ne fayda sağlayacağı gibi konuların üzerinden geçtikten sonra “Pattern” ve “Anti-Pattern” kavramlarını inceleyecek ve sonu yazılım mimarlığına çıkan serüvenimize başlayacağız.
-
Bu makalemizde, TypeScript projelerimizin yapılandırma ayarlarını belirleyen ve projenin derlenmesi için kullanılan derleyici ayarlarını yapılandırmamızı sağlayan “tsconfig” dosyasının nasıl oluşturulduğunu görecek, başlıca ayarlarını inceleyecek ve projelerimizde kullanılabilecek örnek birer tsconfig.json dosyası oluşturacağız.
-
Bu makalemizde, TypeScript’de dekoratörlerin ne olduğunu ve neden dekoratörlere ihtiyaç duyduğumuzu konuşacak, ardından adım adım dekoratörün nasıl tanımlandığını görecek ve yeteneklerini inceleyecek, sonrasında da metot, sınıf ve özellik dekoratörlerin kullanımlarını birer örnek üzerinden deneyimleyeceğiz.
-
Bu makalemizde, TypeScript’de modüllerin ne olduğunu ve neden modüllere ihtiyaç duyduğumuzu, temel modül tanımı ve kullanımını, export ve import ile modüllerin dışarı/içeri aktarım seçeneklerini, 3. parti kütüphanelerin modül olarak içeri aktarımı ve TypeScript desteği olmayan kütüphaneler için deklarasyon dosyalarının içeri aktarımı konularını işleyeceğiz.
-
Bu makalemizde, TypeScript’de Generic tiplerin kullanım amaçlarını ve tanımını, birden fazla generic tipin bir arada kullanım şeklini, generic tiplerin ihtiyacımıza uygun şekilde kısıtlanmasını ve generic tiplerin sınıf seviyesinde kullanımını işleyeceğiz.