Skip to content

Instantly share code, notes, and snippets.

View bunyamintamar's full-sized avatar
🎯
Focusing

Bünyamin TAMAR bunyamintamar

🎯
Focusing
View GitHub Profile
@bunyamintamar
bunyamintamar / Cpp_vektor_kullanimi.md
Last active April 18, 2022 05:54
C++'ta Vektör Kullanımı

C++'ta Vektör Kullanımı


Vektörler boyutu program esnasında değiştirilebilen dinamik dizilerdir.
Her türden veri ya da nesne bu dinamik dizilerde tutulabilir.
C++'ta vektör işlemleri vector sınıfı ile yapılabilir. Bu sınıfı kullanabilmek
için aşağıdaki gibi vector sınıfını kodumuza ekliyoruz.

#include <vector>        // vector sınıfı için
                         // veya
@bunyamintamar
bunyamintamar / SorumlulukZinciriTasarimKalibi.cpp
Last active April 8, 2022 16:04
Sorumluluk Zinciri Tasarım Kalıbı - Chain of Responsibility Design Pattern
/* Sorumluluk Zinciri Tasarım Kalıbı Örneği - Chain of Responsibility Design Pattern */
/*
Bir objenin başka bir objeden bir işlem için istekte bulunduğu, fakat istekte bulunulan
nesnenin de yine başka bir nesneye istekte bulunduğu bir yapımızın olduğunu düşünelim.
Yani bir hiyerarşik düzen var. Bu yapıda nesnelerimizin bu hiyerarşik düzenin
kurallarını bilmesi gerekir değil mi?
İşte burada işlemlerin basitçe ve hiyerarşik düzeni bozmadan gerçekleştirilebilmesi
için bu tasarım kalıbı kullanılır.
@bunyamintamar
bunyamintamar / SoyutFabrikaTasarimKalibi.cpp
Last active March 28, 2022 14:55
Soyut Fabrika Tasarım Kalıbı - Abstract Factory Design Pattern
/* Soyut Fabrika Tasarım Kalıbı Örneği - Abstract Factory Design Pattern */
/*
Farklı nesnelerin bazı ortak özelliklere sahip olduğunu ve
bu nesneleri bir metoda argüman olarak girmek istediğinizi düşünün.
Bunu nasıl yaparsınız?
Mesela;
Kedi, köpek ve kuş sınıflarından türemiş olan nesnelerimiz var.
Bunları "hayvanlariBesle(..)" isimli bir metoda argüman olarak girmek istiyoruz.
Bu metodun prototipi nasıl olmalıdır?
@bunyamintamar
bunyamintamar / BuilderTasarimKalibi.cpp
Created March 27, 2022 14:43
Builder Tasarım Kalıbı - Builder Design Pattern
/* Builder Tasarım Kalıbı Örneği - Builder Design Pattern */
/*
Birçok özelliğe (değişkene) sahip bir sınıfımız olsun.
Bu sınıftan bir nesne üretmek için birçok setter metodunu kullanmak zorundayız.
Diyelim ki bazı belli başlı kalıplarda nesneler üreteceğiz.
Her seferinde zibilyon tane setter metodunu kullanmak biraz zor değil mi?
İşte burada bizim yerimize nesne inşa eden inşaatçilerimiz var.
Hadi kodlayalım !
@bunyamintamar
bunyamintamar / SingletonTasarimKalibi.cpp
Created March 27, 2022 12:08
Singleton Tasarım Kalıbı Örneği - Singleton Design Pattern
/* Singleton Tasarım Kalıbı Örneği - Singleton Design Pattern */
/*
Bir nesnenin sadece bir kez yaratılması isteniyorsa,
başka bir tane yaratılsa da yine aynı nesneyi işaret etmesi ve böylece
teklik sağlanmak isteniyorsa bu yöntem kullanılır.
*/
#include <iostream>
#include <string>
using namespace std;
@bunyamintamar
bunyamintamar / FabrikaMetoduTasarimKalibi.cpp
Last active March 27, 2022 12:05
Fabrika Metodu Tasarım Kalıbı - Factory Method Design Pattern
/* Fabrika Metodu Tasarım Kalıbı Örneği - Factory Method Design Pattern */
/*
Nesneleri sadece yaratıp kullanmak ve yaratılış süreçlerini gizlemek için bu yöntem kullanılır.
Bu nedenle yaralış süreçlerine hakim olan başka bir nesneye ihtiyaç duyulur.
Bu nesne bizim yerimize ihtiyaç duyduğumuz nesneyi yaratır.
Mesela;
Nissan isimli bir sınıftan Qashgai isimli bir nesne üretileceğini varsayalım.
Kırmızı renkli Skypack detayına sahip olmasını istiyoruz.
@bunyamintamar
bunyamintamar / PrototipTasarimKalibi.cpp
Last active March 28, 2022 08:16
Prototip Tasarım Kalıbı - Prototype Design Pattern
/* Prototip Tasarım Kalıbı Örneği - Prototype Design Patern */
/*
Var olan bir nesnenin birkaç özelliğini değiştirmek dışında kopyasına ihtiyacımız varsa
bu yöntem tam da ihtiyacımız olan şey.
Tamamen yenisini üretmek çok zaman alır. Kopyalayıp değiştirmek daha kısa sürer.
(Bu kadar açıklama yeter. Hadi kodlayalım !)
*/
#include <iostream>
#include <string>