Kişisel Finans Takip Uygulaması – Java OOP Uygulaması
Proje Hakkında
Personal Finance Tracker, nesne yönelimli programlama (OOP) bilgilerimi pekiştirmek; dosya işlemleri, koleksiyonlar ve birim testleri (unit testing) konularında pratik deneyim kazanmak amacıyla Java ile geliştirilmiş konsol tabanlı bir uygulamadır. Proje, kullanıcıların gelirlerini, giderlerini ve bakiyelerini etkileşimli bir şekilde takip edebildiği pratik bir kişisel finans yönetim aracını simüle eder.
Uygulama; işlemler, gelir, gider ve dosya yönetimi için ayrı sınıflar içeren modüler bir mimariyle tasarlanmıştır. Kullanıcılar yeni işlemler ekleyebilir, giderleri kategorize edebilir, işlemleri özel tarih aralıklarına göre filtreleyebilir, toplam geliri, toplam gideri ve kalan bakiyeyi görüntüleyebilir ve gerektiğinde işlemleri silebilir. Tüm veriler otomatik olarak bir .txt dosyasına kaydedilir ve uygulama yeniden başlatıldığında geri yüklenir.
Bu proje aracılığıyla kalıtım (inheritance), çok biçimlilik (polymorphism) ve soyutlama (abstraction) dahil olmak üzere OOP prensiplerinin yanı sıra SOLID tasarım ilkeleri üzerinde pratik yaptım. Ayrıca BufferedReader ve BufferedWriter kullanarak dosya I/O işlemlerini yönetmeyi, Java Koleksiyonları (ArrayList ve List) ile çalışmayı, Java Time API ile tarihleri yönetmeyi ve kod doğruluğunu sağlamak için JUnit 5 ile birim testleri yazmayı öğrendim.
Bu proje; teorik Java bilgilerimi pratik bir bağlamda uygulamak, test ve modüler geliştirme dahil olmak üzere gerçekçi bir iş akışını simüle etmek ve backend geliştirme becerilerimi güçlendirmek için kişisel öğrenme yolculuğumun bir parçası olarak geliştirilmiştir.
