C++ E-Ticaret Sistemi (Console Uygulaması)
Bu proje, C++ ile Nesne Yönelimli Programlama (OOP) prensipleri kullanılarak geliştirilmiş basit bir e-ticaret sistemi simülasyonudur. Uygulama konsol üzerinden çalışır; kullanıcı girişinden sonra ürünleri listeleyebilir, sepete ekleyebilir, sepeti yönetebilir ve ödeme adımını tamamlayabilir.
Özellikler Kullanıcı girişi (3 deneme hakkı) Ürünleri listeleme Tüm ürünleri listeleme Kategori koduna göre filtreleme (ELK, GIM, KTP, GID, KRT)
Sepet yönetimi Sepete ürün ekleme (stok kontrolü ile) Sepetten ürün silme (stok iadesi ile) Sepette adet güncelleme (stok artır/azalt ile) Sepeti temizleme
Ara toplam hesaplama Müşteri tipine göre indirim Standart: %0 Premium: %10 Kurumsal: %15
Kargo ücretlendirmesi Standart: 30 TL Premium: 300 TL ve üzeri (indirim sonrası) ücretsiz, altı 30 TL Kurumsal: ücretsiz
Ödeme yöntemleri (Polymorphism ile) Kredi kartı: %2 komisyon Havale/EFT: %3 indirim Kapıda ödeme: 30 TL hizmet bedeli Ödeme sonrası sipariş özeti yazdırma ve sepet temizleme
Proje Mimarisi (Sınıflar) ETicaretSistemi
Sistemin merkez sınıfıdır: Ürünleri hazırlar (25 ürün otomatik yüklenir) musteri.txt dosyasından müşterileri okur Giriş ekranını yönetir Ana menü akışını yönetir Sepet işlemlerini yönlendirir Ödeme akışını yönetir ve sipariş özetini yazdırır
Musteri (Abstract) Ortak alanlar: musteriNo ad soyad kullaniciAdi sifre
Alt sınıflar: StandartMusteri → indirim: 0 PremiumMusteri → indirim: 0.10 KurumsalMusteri → indirim: 0.15 ek alanlar: sirketAdi, vergiNo
Urun (Abstract) Ortak alanlar: id ad kategoriKodu birimFiyat stokAdedi
Alt sınıflar: ElektronikUrun (ELK) → marka, model, garanti(ay) GiyimUrun (GIM) → beden, renk, cinsiyet KitapUrun (KTP) → yazar, yayınevi, sayfa GidaUrun (GID) → SKT, ağırlık(gr), organikMi KirtasiyeUrun (KRT) → marka, tür, setMi
Sepet SepetKalemi { Urun* urun; int adet } yapısı ile ürün tutulur Stok işlemleri sepete ekleme/silme/güncelleme sırasında otomatik yönetilir Ara toplam hesaplanır
Odeme (Abstract) Polymorphism ile ödeme yöntemleri: KrediKartiOdeme → komisyon ekler HavaleOdeme → indirim uygular KapidaOdeme → hizmet bedeli ekler
Dosya Yapısı . ├─ main.cpp ├─ ETicaretSistemi.h / ETicaretSistemi.cpp ├─ Musteri.h / Musteri.cpp ├─ Urun.h / Urun.cpp ├─ Sepet.h / Sepet.cpp ├─ Odeme.h / Odeme.cpp └─ musteri.txt (çalıştırmak için gerekli) Kurulum & Çalıştırma
- musteri.txt oluştur Proje kök dizinine musteri.txt ekleyin.
Format (CSV): İlk satır başlık (uygulama ilk satırı atlıyor)
Alanlar: no,ad,soyad,kullaniciAdi,sifre,tip[,sirketAdi,vergiNo]
Örnek musteri.txt: no,ad,soyad,kullaniciAdi,sifre,tip,sirketAdi,vergiNo 1,Ali,Demir,ali,1234,Bireysel,, 2,Aylin,Kaya,aylin,1234,Premium,, 3,Mehmet,Yilmaz,mehmet,1234,Kurumsal,ABC Ltd,1234567890
Not: Kurumsal müşteri için sirketAdi ve vergiNo alanları doldurulmalıdır. Diğer tiplerde boş bırakılabilir.
- Derleme (g++) Linux / macOS: g++ -std=c++11 -o eticaret main.cpp ETicaretSistemi.cpp Musteri.cpp Urun.cpp Sepet.cpp Odeme.cpp ./eticaret
Windows (MinGW): g++ -std=c++11 -o eticaret.exe main.cpp ETicaretSistemi.cpp Musteri.cpp Urun.cpp Sepet.cpp Odeme.cpp eticaret.exe Kullanım Akışı Program açılır → Giriş ekranı gelir Giriş başarılıysa Ana Menü: Ürün listele Kategoriye göre listele Sepete ekle Sepeti görüntüle Sepetten sil Adet güncelle Sepeti temizle Ödeme yap Ödeme yapılınca: Adres alınır Ödeme yöntemi seçilir İndirim + kargo + ödeme farkı uygulanır Sipariş özeti yazdırılır Sepet temizlenir ve program sonlanır
Teknik Detaylar Ürünler sistem başlarken kod içinde hazırlanır (toplam 25 ürün). Sepet işlemlerinde stok yönetimi uygulanır: Sepete eklenince stok düşer Sepetten silinince stok geri iade edilir
Adet güncellemede stok farkı kadar iade/azalt yapılır
İndirim ve ödeme yöntemleri abstract sınıflar ve polymorphism ile modellenmiştir.