@mgsmus hocam
Mimari olarak da repository neden response dönüyor, o da ayrı bir konu.
demeniz üzerine repositorynin ne döndürmesi gerektiğini araştırayım dedim ve chatgptye sordum.
ve söyledikleri
Ancak, bu tasarım deseni ile ilgili bir tartışma noktası "repository" katmanının ne döndürmesi gerektiğidir. Bazı yaklaşımlarda, repository fonksiyonları saf veri yapıları (örneğin, dizi veya koleksiyonlar) döndürebilir ve istemci kodu bu verileri işleyebilir. Bu durumda, işlemler daha düşük seviyede gerçekleşir ve istemci kod daha fazla iş yapar.
Diğer yaklaşımda ise repository fonksiyonları direkt olarak işlenmiş veriyi (response) dönebilir. Bu, istemci kodunun daha az iş yapmasını sağlar ve daha yüksek seviyede soyutlama sağlayabilir. Ancak, bu durumda repository katmanının istemci kodu nasıl cevaplayacağını daha fazla kontrol ettiği düşünülebilir.
Saf Veri Yapıları Döndürmek:
Bu yaklaşımda, repository fonksiyonları sadece verileri çeker ve bu verileri istemci koduna saf bir veri yapısı şeklinde döner. Örneğin, veritabanından çekilen kayıtları bir dizide veya koleksiyonda dönebilirsiniz. İstemci kod, bu veri yapısını alır ve işlemek, dönüştürmek veya düzenlemek için ek işlemler yapar. Bu yaklaşım genellikle daha düşük seviyede bir yaklaşımdır ve veritabanı işlemleri ile veri işleme işlemlerini daha net bir şekilde ayırır. İstemci kod, veri yapısını aldıktan sonra kendi gereksinimlerine göre özelleştirebilir.
İşlenmiş Veriyi Döndürmek:
Bu yaklaşımda, repository fonksiyonları veriyi istemci kodun gereksinimlerine göre işleyerek direkt olarak döner. İstemci kod, hazır işlenmiş veriyi alır ve bu veriyi daha fazla düzenleme veya işleme yapmadan kullanabilir. Bu yaklaşım, istemci kodunun daha az iş yapmasını ve daha yüksek seviyede soyutlamayı sağlar. Ancak, repository katmanı istemci kodun veriyi nasıl kullanacağını daha fazla kontrol eder.
@mgsmus sizce nasıl hocam ?