Unit of Work olarak bilinen kısaca tanımlamak gerekirse iş katmanındaki değişiklikleri anlık olarak database yazmak yerine işlemleri toplu halde tek bir kanaldan dataların dataların arasında kullanılan bir paterndir. Bir başka değişle tek bir kanaldan yapılan database işlemleri hem dummy datanın ortaya çıkmasını engellemek hemde hataların doğru zamanda geri alına bilmesini sağlar.
Peki gerçek hayattan bir örnekle bu patern tam olarak projemizin neresinde konumlanacak haydi bir de ona bakalım; genelde hep e ticaret siteleri örnek verirler ben biraz farklı düşüneceğim ve üretim fabrikası içersindeki Depo, üretim ve finas kısımları gibi 3 departmanın içinde modullerin yer aldığı bir uygulama üzerinde konuşalım öncelikle UOW kullanmadığımız zaman üretimden çkan bir ürünü operatör uygulamaya girerken aynı zamanda finas departmanı depo daki ürünler üzerine data işlemleri yapsın ve lojistik departmanıda nakliye ile ilgili çalışmalar yapsın eğer bir UOW yapısı kullanmazsak burada yapılan tüm işlemler bu girilen kayıtların toplu halde database e aktarımı hem performans, hemde sağlıklı data açısında önemli olacaktır.Çünkü son aşamaya gelindiğinde satın almadan vazgeçilmesi halinde önceki aşamalarda oluşan datalar dummy data olarak database’de ekstra yer işgal edecektir.
pekii hep duyduğumuz belkide uow'i ile güzel bir ikili olan repository nedir? illa uow ile repository mi kullanılır. alternativi nedir birde ona yakından bakalım