Basit projelerde problem olmaz. Hatta basit projelerde ba$ka $ekil
yapilip abartmanin alemi yok.
Yalniz enterprise ciddiyetindeki projelerde bu bir kotu
design/architecture ornegidir. Nedeni basit, Senin UI da kullandigin
logic ve data database de kullandiginla, serviste kullandiginla ayni
degildir. UI da bir alanin kirmizi olmasi bir objede field olabilirken
cogu zaman bu domain layer icin veya database icin bir$ey ifade etmez.
Bu yuzden de kotu bir pratiktir.
Du$un mesela,domain tarafinda bir user account undan deposit
edebiliyor olsun. Bunu sen UI da kullanabiliyor ol. Ui tarafinda bunu
servislerle yapiyorsun diyelim her iyi cocuk gibi, cunku UI tarafi
business logic ya da domain kararlari vermiyor. Ama developer User a
tikladiginda Deposit metodu goruyor. Ne oldu ? Gitti oruc, ne
information hiding principle kaldi ne bi$ey.
Sadece data icin degil servis icin de aynisi gecerli. DTO kavraminin
ortaya cikmasinin temel sebebi budur.
2012/5/28 Seyhan Bakır <
syh...@gmail.com>:
Sidar Ok
http://www.sidarok.com
http://www.twitter.com/sidarok