เชนเซเช เชคเชฐเชค เช เชฒเซเชเชจเซเช เชถเซเชฐเซเชทเช เชธเชฎเชเชพเชตเซเชถ. เชฎเซเชณ เชฏเซเชเชจเชพ เชเช เชธเชฐเชณ เชชเชฐเชเชคเซ เชตเชพเชธเซเชคเชตเชฟเช เชเชฆเชพเชนเชฐเชฃเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌเชจเชพ เชเชชเชฏเซเชเชจเซ เชเซเชตเซ เชฐเซเชคเซ เชเชกเชชเซ เชฌเชจเชพเชตเชตเซ เชคเซ เช
เชเชเซ เชธเชพเชฐเซ, เชตเชฟเชถเซเชตเชธเชจเซเชฏ เชธเชฒเชพเชน เชเชชเชตเชพเชจเซ เชนเชคเซ, เชชเชฐเชเชคเซ เชฌเซเชจเซเชเชฎเชพเชฐเซเชเชฟเชเช เชฆเชฐเชฎเชฟเชฏเชพเชจ เชคเซ เชฌเชนเชพเชฐ เชเชตเซเชฏเซเช เชเซ เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌ เชเชเชฒเซเช เชงเซเชฎเซเช เชจเชฅเซ เชเซเชเชฒเซเช เชฎเซเช เชตเชฟเชเชพเชฐเซเชฏเซเช เชนเชคเซเช, LINQ เชฎเชพเชฐเชพ เชธเซเชตเชชเซเชจเซ เชเชฐเชคเชพเช เชงเซเชฎเซเช เชเซ. เชชเชฃ เช
เชเชคเซ เชเชตเซเช เชฌเชนเชพเชฐ เชเชตเซเชฏเซเช เชเซ เชฎเซเช เชฎเชพเชชเชฎเชพเช เชชเชฃ เชญเซเชฒ เชเชฐเซ เชนเชคเซ... เช เชเซเชตเชจเชเชฅเชพเชจเซ เชตเชฟเชเชคเซ เชเช เช
เชจเซ เชเซเชฎเซเชจเซเชเชฎเชพเช เชเซ. เชเชฆเชพเชนเชฐเชฃ เชคเชฆเซเชฆเชจ เชธเชพเชฎเชพเชจเซเชฏ เชนเซเชตเชพเชฅเซ เช
เชจเซ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ เชเชจเซเชเชฐเชชเซเชฐเชพเชเชเชฎเชพเช เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ เชคเซเชฎ เชธเซเชฆเซเชงเชพเชเชคเชฟเช เชฐเซเชคเซ เช
เชฎเชฒเชฎเชพเช เชฎเซเชเชตเชพเชฎเชพเช เชเชตเซ เชเซ, เชคเซ เชเซเชฌ เช เชฐเชธเชชเซเชฐเชฆ เชฌเชจเซเชฏเซเช, เชเชพเชฐเชฃ เชเซ เชคเซ เชฎเชจเซ เชฒเชพเชเซ เชเซ, เชเซเชตเชจเชจเซเช เชชเซเชฐเชฆเชฐเซเชถเชจ: เชฒเซเชเชจเชพ เชฎเซเชเซเชฏ เชตเชฟเชทเชฏเชจเซ เชเชคเชฟ เชชเชฐ เช
เชธเชฐ เชนเชคเซ. เชฌเชพเชนเซเชฏ เชคเชฐเซเชเชจเซ เชเชพเชฐเชฃเซ เชงเซเชฏเชพเชจเชชเชพเชคเซเชฐ เชจเชฅเซ: Moq, Autofac, EF เชเซเชฐ เช
เชจเซ เช
เชจเซเชฏ "เชฌเซเชจเซเชกเชฟเชเชเซเชธ".
เชฎเซเช เช เชฒเซเชเชจเซ เชเชพเชช เชนเซเช เชณ เชเชพเชฎ เชเชฐเชตเชพเชจเซเช เชถเชฐเซ เชเชฐเซเชฏเซเช:
เชเซเชฎ เชคเชฎเซ เชเซเช เชถเชเซ เชเซ, เชฒเซเชเช เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌ เชชเซเชฐเชเชพเชฐเชจเซ เชชเชฆเซเชงเชคเชฟเชเชจเซ เชธเซเชงเชพ เชเซเชฒ เชเชฐเชตเชพเชจเซ เชฌเชฆเชฒเซ เชธเชเชเชฒเชฟเชค เชชเซเชฐเชคเชฟเชจเชฟเชงเชฟเชเชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพเชจเซเช เชธเซเชเชจ เชเชฐเซ เชเซ เชเซ เชเชชเซเชฒเชฟเชเซเชถเชจเชจเซ เชฎเซเชเชพ เชชเซเชฐเชฎเชพเชฃเชฎเชพเช เชเชกเชชเซ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชเซ เชเช เชธเชฐเชธ เชฐเซเชค เชเซ. เช เชฒเชฌเชคเซเชค, IL เชเชคเซเชธเชฐเซเชเชจ เชเซ, เชชเชฐเชเชคเซ เชนเซเช เชคเซเชจเซ เชเชพเชณเชตเชพ เชฎเชพเชเชเซ เชเซเช, เชเชพเชฐเชฃ เชเซ เช เชเชพเชฐเซเชฏ เชเชฐเชตเชพ เชฎเชพเชเซเชจเซ เชธเซเชฅเซ เชถเซเชฐเชฎ-เชธเชเชจ เชฐเซเชค เชเซ, เชเซ เชญเซเชฒเซเชฅเซ เชญเชฐเชชเซเชฐ เชเซ.
เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌเชจเซ เชเชคเชฟ เชตเชฟเชถเซ เชฎเซเช เชนเชเชฎเซเชถเชพ เชธเชฎเชพเชจ เช เชญเชฟเชชเซเชฐเชพเชฏ เชฐเชพเชเซเชฏเซ เชเซ เชคเซ เชงเซเชฏเชพเชจเชฎเชพเช เชฒเซเชคเชพ, เชฎเชพเชฐเซ เชเชพเชธ เชเชฐเซเชจเซ เชฒเซเชเชเชจเชพ เชจเชฟเชทเซเชเชฐเซเชท เชชเชฐ เชชเซเชฐเชถเซเชจ เชเชฐเชตเชพเชจเซ เชเชฐเชพเชฆเซ เชจเชนเซเชคเซ.
เชนเซเช เชเชฃเซเชตเชพเชฐ เชเชจเซเชเชฐเชชเซเชฐเชพเชเชเชฎเชพเช เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌเชจเซ เชจเชฟเชทเซเชเชชเช เชเชชเชฏเซเช เช เชจเซเชญเชตเซเช เชเซเช. เชชเซเชฐเชเชพเชฐ เชฒเซเชตเชพเชฎเชพเช เชเชตเซ เชเซ. เชฎเชฟเชฒเชเชค เชตเชฟเชถเซ เชฎเชพเชนเชฟเชคเซ เชฒเซเชตเชพเชฎเชพเช เชเชตเซ เชเซ. เชธเซเชเชตเซเชฒเซเชฏเซ เชชเชฆเซเชงเชคเชฟ เชเชนเซเชตเชพเชฎเชพเช เชเชตเซ เชเซ เช เชจเซ เชฆเชฐเซเชเชจเซ เชเชจเชเชฆ เชฅเชพเชฏ เชเซ. เชฒเชเซเชทเซเชฏ เชเซเชทเซเชคเซเชฐเชฎเชพเช เชฎเซเชฒเซเชฏ เชเชตเซเชฏเซเช เชเซ, เชฆเชฐเซเช เชเซเชถ เชเซ. เชเซเชฌ เช เชธเซเชฎเชพเชฐเซเช เชฒเซเชเซ - เชตเชฐเชฟเชทเซเช เช เชจเซ เชเซเชฎ เชฒเซเชกเซเชธ - เชคเซเชฎเชจเชพ เชเชเซเชธเซเชเซเชเชถเชจเชจเซ เชเชฌเซเชเซเชเซเช เชชเชฐ เชฒเชเซ เชเซ, เชเชตเชพ เชจเชฟเชทเซเชเชชเช เช เชฎเชฒเซเชเชฐเชฃเชจเซ เชเชงเชพเชฐเซ "เชธเชพเชฐเซเชตเชคเซเชฐเชฟเช" เชฎเซเชชเชฐเซเชธ เชเช เชชเซเชฐเชเชพเชฐเชฅเซ เชฌเซเชเชพ. เชธเชพเชฐ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ เช เชเซ: เชเชชเชฃเซ เชฌเชงเชพ เชเซเชทเซเชคเซเชฐเซ เชฒเชเช เชเซเช, เชฌเชงเซ เชฎเชฟเชฒเชเชคเซ เชฒเชเช เชเซเช, เชคเซเชจเชพ เชชเชฐ เชชเซเชจเชฐเชพเชตเชฐเซเชคเชจ เชเชฐเซเช เชเซเช: เชเซ เชชเซเชฐเชเชพเชฐเชจเชพ เชธเชญเซเชฏเซเชจเชพ เชจเชพเชฎ เชฎเซเชณ เชเชพเชฏ เชเซ, เชคเซ เช เชฎเซ เชธเซเชเชตเซเชฒเซเชฏเซ เชเชฒเชพเชตเซเช เชเซเช. เชธเชฎเชฏ เชธเชฎเชฏ เชชเชฐ เช เชฎเซ เชญเซเชฒเซเชจเซ เชเชพเชฐเชฃเซ เช เชชเชตเชพเชฆเซ เชชเชเชกเซเช เชเซเช เชเซเชฏเชพเช เช เชฎเชจเซ เชเช เชชเซเชฐเชเชพเชฐเชฎเชพเช เชเซเชเชฒเซเช เชฎเชฟเชฒเชเชค เชฎเชณเซ เชจเชฅเซ, เชชเชฐเชเชคเซ เช เชนเซเช เชชเชฃ เชเช เชฐเชธเซเชคเซ เชเซ เชเซ เชเชพเชฐเซเชฏเชเซเชทเชฎเชคเชพเชฎเชพเช เชธเซเชงเชพเชฐเซ เชเชฐเซ เชเซ. เชชเซเชฐเชฏเชพเชธ เชเชฐเซ/เชชเชเชกเซ.
เชฎเซเช เชฒเซเชเซเชจเซ เชชเชพเชฐเซเชธเชฐเซเชธ เช เชจเซ เชฎเซเชชเชฐเซเชธเชจเซ เชคเซเชฎเชจเซ เชชเชนเซเชฒเชพเช เชเชตเซเชฒเชพ เชฎเชถเซเชจเซ เชเซเชตเซ เชฐเซเชคเซ เชเชพเชฐเซเชฏ เชเชฐเซ เชเซ เชคเซ เชตเชฟเชถเซเชจเซ เชฎเชพเชนเชฟเชคเซ เชธเชพเชฅเซ เชธเชเชชเซเชฐเซเชฃ เชฐเซเชคเซ เชธเชเซเช เชฅเชฏเชพ เชตเชฟเชจเชพ เชซเชฐเซเชฅเซ เชถเซเชงเชคเชพ เชเซเชฏเชพ เชเซ. เชฎเซเช เชเซเชฏเซเช เชเซ เชเซ เชฒเซเชเซ เชคเซเชฎเชจเชพ เชจเชฟเชทเซเชเชชเช เช เชฎเชฒเซเชเชฐเชฃเชจเซ เชตเซเชฏเซเชนเชฐเชเชจเชพเช เชชเชพเชเชณ, เชเชจเซเชเชฐเชซเซเชธ เชชเชพเชเชณ, เชเชจเซเชเซเชเซเชถเชจ เชชเชพเชเชณ เชเซเชชเชพเชตเชคเชพ เชนเซเชฏ เชเซ, เชเชพเชฃเซ เชเซ เช เช เชจเซเชเชพเชฎเซ เชฌเซ เชเชจเชพเชฒเชฟเชฏเชพเชจเซ เชฎเชพเชซ เชเชฐเชถเซ. เชเชตเซ เช เชจเซเชญเซเชคเชฟ เชชเชฐ เชฎเซเช เชจเชพเช เชเชชเชฐ เชตเชพเชณเซเชฏเซเช. เชตเชพเชธเซเชคเชตเชฎเชพเช, เชฎเซเช เชตเชพเชธเซเชคเชตเชฟเช เชชเซเชฐเชฆเชฐเซเชถเชจ เชฒเซเชเชจเซ เชฎเชพเชชเซเชฏเซเช เชจ เชนเชคเซเช, เช เชจเซ, เชเซ เชถเชเซเชฏ เชนเซเชฏ เชคเซ, เชเซ เชนเซเช เชคเซเชจเชพ เชชเชฐ เชนเชพเชฅ เชฎเซเชณเชตเซ เชถเชเซเช เชคเซ เชฎเซเช เช เชฎเชฒเซเชเชฐเชฃเชจเซ เชตเชงเซ "เชถเซเชฐเซเชทเซเช " เชฎเชพเช เชฌเชฆเชฒเซ เชจเชพเชเซเชฏเซเช. เชคเซเชฅเซ, เชจเซเชเซ เชเชฐเซเชเชพ เชเชฐเซเชฒ เชชเซเชฐเชฅเชฎ เชฎเชพเชช เชฎเชจเซ เชเชเชญเซเชฐเชคเชพเชฅเซ เชฎเซเชเชเชตเชฃเชฎเชพเช เชฎเซเชเซ เชเซ.
เชฎเชจเซ เชฒเชพเชเซ เชเซ เชเซ เชคเชฎเชพเชฐเชพเชฎเชพเชเชจเชพ เชเชฃเชพ, เชฐเชฟเชเซเชเชฐ เช เชฅเชตเชพ เช เชจเซเชฏ เชตเชฟเชเชพเชฐเชงเชพเชฐเชเซเชจเซ เชตเชพเชเชเชคเชพ, เชธเชเชชเซเชฐเซเชฃ เชจเซเชฏเชพเชฏเซ เชจเชฟเชตเซเชฆเชจเชฎเชพเช เชเชตเซเชฏเชพ เชเซ เชเซ เชเซเชกเชฎเชพเช เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌ เช เชเช เชเชตเซ เชเชเชจเชพ เชเซ เชเซ เชเชชเซเชฒเชฟเชเซเชถเชจเชจเซ เชเชพเชฎเชเซเชฐเซ เชชเชฐ เช เชคเซเชฏเชเชค เชจเชเชพเชฐเชพเชคเซเชฎเช เช เชธเชฐ เชเชฐเซ เชเซ.
เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌเชจเซ เชเซเชฒ เชเชฐเชตเชพเชฅเซ CLR เชจเซ เชคเซเชเชจเซ เชเชฐเซเชฐ เชนเซเชฏ เชคเซ เชถเซเชงเชตเชพ, เชคเซเชฎเชจเชพ เชฎเซเชเชพเชกเซเชเชพเชจเซ เชเซเชเชเชตเชพ, เชคเซเชจเซเช เชตเชฟเชถเซเชฒเซเชทเชฃ เชเชฐเชตเชพ เชตเชเซเชฐเซ เชฎเชพเชเซ เชเชธเซเชฎเซเชฌเชฒเซเชฎเชพเชเชฅเซ เชชเชธเชพเชฐ เชฅเชตเชพเชจเซ เชซเชฐเช เชชเชกเซ เชเซ. เชตเชงเซเชฎเชพเช, เชเซเชฐเชฎเชจเซ เชชเชพเชฐ เชเชฐเชคเซ เชตเชเชคเซ เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌ เชฎเซเชเซ เชฎเชพเชคเซเชฐเชพเชฎเชพเช เชฎเซเชฎเชฐเซเชจเซ เชซเชพเชณเชตเชฃเซ เชคเชฐเชซ เชฆเซเชฐเซ เชเชพเชฏ เชเซ. เช เชฎเซ เชฎเซเชฎเชฐเซเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชฐเชนเซเชฏเชพ เชเซเช, CLR GC เชจเซ เชเซเชฒเซ เชเซ เช เชจเซ เชซเซเชฐเซเช เชถเชฐเซ เชฅเชพเชฏ เชเซ. เชคเซ เชจเซเชเชงเชชเชพเชคเซเชฐ เชฐเซเชคเซ เชงเซเชฎเซเช เชนเซเชตเซเช เชเซเชเช, เชฎเชพเชฐเชพ เชชเชฐ เชตเชฟเชถเซเชตเชพเชธ เชเชฐเซ. เชเชงเซเชจเชฟเช เชชเซเชฐเซเชกเชเซเชถเชจ เชธเชฐเซเชตเชฐเซเชธ เช เชฅเชตเชพ เชเซเชฒเชพเชเชก เชฎเชถเซเชจเซ เชชเชฐ เชฎเซเชฎเชฐเซเชจเซ เชตเชฟเชถเชพเชณ เชฎเชพเชคเซเชฐเชพ เชเชเซเช เชชเซเชฐเซเชธเซเชธเชฟเชเช เชตเชฟเชฒเชเชฌเชจเซ เช เชเชเชพเชตเชคเซ เชจเชฅเซ. เชตเชพเชธเซเชคเชตเชฎเชพเช, เชเซเชเชฒเซ เชตเชงเซ เชฎเซเชฎเชฐเซ, เชคเชฎเซ GC เชเซเชตเซ เชฐเซเชคเซ เชเชพเชฎ เชเชฐเซ เชเซ เชคเซ เชงเซเชฏเชพเชจเชฎเชพเช เชฒเซเชตเชพเชจเซ เชถเชเซเชฏเชคเชพ เชตเชงเซ เชนเชถเซ. เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌ, เชธเชฟเชฆเซเชงเชพเชเชคเชฎเชพเช, เชคเซเชจเชพ เชฎเชพเชเซ เชเช เชตเชงเชพเชฐเชพเชจเซ เชฒเชพเชฒ เชฐเชพเช เชเซ.
เชเซ เชเซ, เช เชฎเซ เชฌเชงเชพ IoC เชเชจเซเชเซเชจเชฐ เช เชจเซ เชคเชพเชฐเซเช เชฎเซเชชเชฐเซเชธเชจเซ เชเชชเชฏเซเช เชเชฐเซเช เชเซเช, เชเซเชจเซ เชเชชเชฐเซเชเชฟเชเช เชธเชฟเชฆเซเชงเชพเชเชค เชชเชฃ เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌ เชชเชฐ เชเชงเชพเชฐเชฟเชค เชเซ, เชชเชฐเชเชคเซ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ เชคเซเชฎเชจเชพ เชชเซเชฐเชฆเชฐเซเชถเชจ เชตเชฟเชถเซ เชเซเช เชชเซเชฐเชถเซเชจเซ เชจเชฅเซ. เชจเชพ, เชเชเชฒเชพ เชฎเชพเชเซ เชจเชนเซเช เชเซ เชฌเชพเชนเซเชฏ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชธเชเชฆเชฐเซเชญ เชฎเซเชกเซเชฒเซเชฎเชพเชเชฅเซ เชจเชฟเชฐเซเชญเชฐเชคเชพ เช เชจเซ เช เชฎเซเชฐเซเชคเชคเชพเชจเซ เชชเชฐเชฟเชเชฏ เชเชเชฒเซ เชเชฐเซเชฐเซ เชเซ เชเซ เชเชชเชฃเซ เชเซเช เชชเชฃ เชธเชเชเซเชเซเชฎเชพเช เชชเซเชฐเชฆเชฐเซเชถเชจเชจเซ เชฌเชฒเชฟเชฆเชพเชจ เชเชชเชตเซเช เชชเชกเชถเซ. เชฌเชงเซเช เชธเชฐเชณ เชเซ - เชคเซ เชเชฐเซเชเชฐ เชชเซเชฐเชญเชพเชตเชจเซ เชตเชงเซ เช เชธเชฐ เชเชฐเชคเซเช เชจเชฅเซ.
เชนเชเซเชเชค เช เชเซ เชเซ เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌ เชคเชเชจเซเช เชชเชฐ เชเชงเชพเชฐเชฟเชค เชธเซเชฅเซ เชธเชพเชฎเชพเชจเซเชฏ เชซเซเชฐเซเชฎเชตเชฐเซเช เชคเซเชจเซ เชธเชพเชฅเซ เชตเชงเซ เชถเซเชฐเซเชทเซเช เชฐเซเชคเซ เชเชพเชฎ เชเชฐเชตเชพ เชฎเชพเชเซ เชคเชฎเชพเชฎ เชชเซเชฐเชเชพเชฐเชจเซ เชฏเซเชเซเชคเชฟเชเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชเซ. เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ เช เชเช เชเซเชถ เชเซ. เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ เช เชเชเซเชธเชชเซเชฐเซเชถเชจ เชเซเชฐเซเชฎเชพเชเชฅเซ เชธเชเชเชฒเชฟเชค เช เชญเชฟเชตเซเชฏเชเซเชคเชฟเช เช เชจเซ เชชเซเชฐเชคเชฟเชจเชฟเชงเชฟเช เชเซ. เช เช เชเชเซเชฎเซเชชเชฐ เชธเซเชชเชฐเซเชงเชพเชคเซเชฎเช เชถเชฌเซเชฆเชเซเชถ เชเชพเชณเชตเซ เชฐเชพเชเซ เชเซ เชเซ เชชเซเชฐเชเชพเชฐเซ เชธเชพเชฅเซ เชฎเซเชณ เชเชพเชฏ เชเซ เชเซ เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌเชจเซ เชเซเชฒ เชเชฐเซเชฏเชพ เชตเชฟเชจเชพ เชเช เชฌเซเชเชพเชฎเชพเช เชฐเซเชชเชพเชเชคเชฐเชฟเชค เชเชฐเซ เชถเชเซ เชเซ.
เช เชเซเชตเซ เชฐเซเชคเซ เชชเซเชฐเชพเชชเซเชค เชฅเชพเชฏ เชเซ? เช เชจเชฟเชตเชพเชฐเซเชฏเชชเชฃเซ, เช เชคเซ เชคเชฐเซเชเชฅเซ เช เชฒเช เชจเชฅเซ เชเซ เชเซ เชชเซเชฒเซเชเชซเซเชฐเซเชฎ เชชเซเชคเซ JIT เชเซเชก เชเชจเชฐเซเช เชเชฐเชตเชพ เชฎเชพเชเซ เชตเชพเชชเชฐเซ เชเซ. เชเซเชฏเชพเชฐเซ เชเซเช เชชเชฆเซเชงเชคเชฟเชจเซ เชชเซเชฐเชฅเชฎ เชตเชเชค เชฌเซเชฒเชพเชตเชตเชพเชฎเชพเช เชเชตเซ เชเซ, เชคเซเชฏเชพเชฐเซ เชคเซ เชธเชเชเชฒเชฟเชค เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ (เช เชจเซ, เชนเชพ, เช เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เชเชกเชชเซ เชจเชฅเซ); เช เชจเซเชเชพเชฎเซ เชเซเชฒเซเชธ เชชเชฐ, เชจเชฟเชฏเชเชคเซเชฐเชฃ เชชเชนเซเชฒเชพเชฅเซ เชธเชเชเชฒเชฟเชค เชชเชฆเซเชงเชคเชฟเชฎเชพเช เชธเซเชฅเชพเชจเชพเชเชคเชฐเชฟเชค เชฅเชพเชฏ เชเซ, เช เชจเซ เชคเซเชฎเชพเช เชเซเช เชจเซเชเชงเชชเชพเชคเซเชฐ เชเชพเชฎเชเซเชฐเซเชฎเชพเช เชเชเชพเชกเซ เชฅเชถเซ เชจเชนเซเช.
เช เชฎเชพเชฐเชพ เชเชฟเชธเซเชธเชพเชฎเชพเช, เชคเชฎเซ JIT เชธเชเชเชฒเชจเชจเซ เชชเชฃ เชเชชเชฏเซเช เชเชฐเซ เชถเชเซ เชเซ เช เชจเซ เชชเชเซ เชคเซเชจเชพ AOT เชธเชฎเชเชเซเชทเซ เชเซเชตเชพ เช เชชเซเชฐเชฆเชฐเซเชถเชจ เชธเชพเชฅเซ เชธเชเชเชฒเชฟเชค เชตเชฐเซเชคเชจเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชถเชเซ เชเซ. เช เชเชฟเชธเซเชธเชพเชฎเชพเช เช เชญเชฟเชตเซเชฏเชเซเชคเชฟเช เช เชฎเชพเชฐเซ เชฎเชฆเชฆ เชฎเชพเชเซ เชเชตเชถเซ.
เชชเซเชฐเชถเซเชจเชฎเชพเชเชจเชพ เชธเชฟเชฆเซเชงเชพเชเชคเชจเซ เชธเชเชเซเชทเชฟเชชเซเชคเชฎเชพเช เชจเซเชเซ เชชเซเชฐเชฎเชพเชฃเซ เชเชกเซ เชถเชเชพเชฏ เชเซ:
เชคเชฎเชพเชฐเซ เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌเชจเชพ เช
เชเชคเชฟเชฎ เชชเชฐเชฟเชฃเชพเชฎเชจเซ เชธเชเชเชฒเชฟเชค เชเชพเชฐเซเชฏ เชงเชฐเชพเชตเชคเชพ เชชเซเชฐเชคเชฟเชจเชฟเชงเชฟ เชคเชฐเซเชเซ เชเซเชถ เชเชฐเชตเซเช เชเซเชเช. เชคเชฎเชพเชฐเชพ เชชเซเชฐเชเชพเชฐ, เชเชพเชฐเซเชฏเชเชฐ, เชเซ เชเชฌเซเชเซเชเซเชเชจเซ เชฌเชนเชพเชฐ เชธเชเชเซเชฐเชนเชฟเชค เชเซ เชคเซเชจเชพ เชเซเชทเซเชคเซเชฐเซเชฎเชพเช เชชเซเชฐเชเชพเชฐเชจเซ เชฎเชพเชนเชฟเชคเซ เชธเชพเชฅเซ เชคเชฎเชพเชฎ เชเชฐเซเชฐเซ เชเชฌเซเชเซเชเซเชเซเชธเชจเซ เชเซ
เชถ เชเชฐเชตเชพเชฎเชพเช เชชเชฃ เช
เชฐเซเชฅเชชเซเชฐเซเชฃ เชเซ.
เชเชฎเชพเช เชคเชฐเซเช เชเซ. เชธเชพเชฎเชพเชจเซเชฏ เชเซเชเชพเชจ เชเชชเชฃเชจเซ เชเชนเซ เชเซ เชเซ เชเซ เชเชเชเช เชธเชเชเชฒเชฟเชค เช เชจเซ เชเซเชถ เชเชฐเซ เชถเชเชพเชฏ เชเซ, เชคเซ เชคเซ เชเชฐเชตเซเช เชเซเชเช.
เชเชเชณ เชเซเชคเชพเช, เชเชตเซเช เชเชนเซเชตเซเช เชเซเชเช เชเซ เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌ เชธเชพเชฅเซ เชเชพเชฎ เชเชฐเชคเซ เชเซเชถเชฎเชพเช เชคเซเชจเชพ เชซเชพเชฏเชฆเชพ เชเซ, เชญเชฒเซ เชคเชฎเซ เช เชญเชฟเชตเซเชฏเชเซเชคเชฟเชเชจเซเช เชธเชเชเชฒเชจ เชเชฐเชตเชพเชจเซ เชธเซเชเชฟเชค เชชเชฆเซเชงเชคเชฟเชจเซ เชเชชเชฏเซเช เชจ เชเชฐเซ. เชตเชพเชธเซเชคเชตเชฎเชพเช, เช เชนเซเช เชนเซเช เชซเชเซเชค เชฒเซเชเชจเชพ เชฒเซเชเชเชจเซ เชฅเซเชธเซเชธเชจเซเช เชชเซเชจเชฐเชพเชตเชฐเซเชคเชจ เชเชฐเซเช เชเซเช เชเซเชจเซ เชฎเซเช เชเชชเชฐ เชเชฒเซเชฒเซเช เชเชฐเซเชฏเซ เชเซ.
เชนเชตเซ เชเซเชก เชตเชฟเชถเซ. เชเชพเชฒเซ เชเช เชเชฆเชพเชนเชฐเชฃ เชเซเชเช เชเซ เชฎเชพเชฐเซ เชคเชพเชเซเชคเชฐเชจเซ เชชเซเชกเชพ เชชเชฐ เชเชงเชพเชฐเชฟเชค เชเซ เชเซเชจเซ เชฎเชจเซ เชเชเชญเซเชฐ เชเซเชฐเซเชกเชฟเช เชธเชเชธเซเชฅเชพเชจเชพ เชเชเชญเซเชฐ เชเชคเซเชชเชพเชฆเชจเชฎเชพเช เชธเชพเชฎเชจเซ เชเชฐเชตเซ เชชเชกเซเชฏเซ เชนเชคเซ. เชฌเชงเซ เชธเชเชธเซเชฅเชพเช เชเชพเชฒเซเชชเชจเชฟเช เชเซ เชเซเชฅเซ เชเซเช เช เชจเซเชฎเชพเชจ เชจ เชเชฐเซ.
เช เชฎเซเช เชธเชพเชฐ เชเซ. เชธเชเชชเชฐเซเช เชฅเชตเชพ เชฆเซ. เชชเซเชฐเชฎเชพเชฃเชญเซเชค เชถเชฐเซเชฐ เชธเชพเชฅเซเชจเชพ เช เชเซเชทเชฐเซ เชเซ, เชเซเชฎเชพเชเชฅเซ เชชเชพเชฐเซเชธเชฐ เช เชจเซ เชนเชพเชเชกเซเชฐเซเชเชฐ เช เชธเชฎเชพเชจ เชธเชเชชเชฐเซเชเซ เชฌเชจเชพเชตเซ เชเซ. เชเช เชชเชคเซเชฐ เชเชตเซเชฏเซ, เช เชฎเซ เชคเซเชจเซ เชตเชพเชเชเซเชฏเซ, เชคเซเชจเซ เชเซ-เชตเซเชฒเซเชฏเซ เชเซเชกเซเชฎเชพเช เชตเชฟเชถเซเชฒเซเชทเชฟเชค เชเชฐเซเชฏเซ, เชเช เชธเชเชชเชฐเซเช เชฌเชจเชพเชตเซเชฏเซ เช เชจเซ เชคเซเชจเซ เชกเซเชเชพเชฌเซเชเชฎเชพเช เชธเชพเชเชตเซเชฏเซ.
เชคเซ เชชเซเชฐเชพเชฅเชฎเชฟเช เชเซ. เชเชพเชฒเซ เชเชนเซเช เชเซ เชธเชเชชเชฐเซเชเชฎเชพเช เชธเชเชชเซเชฐเซเชฃ เชจเชพเชฎ, เชเชเชฎเชฐ เช เชจเซ เชธเชเชชเชฐเซเช เชซเซเชจ เชเซเชฃเชงเชฐเซเชฎเซ เชเซ. เช เชกเซเชเชพ เชชเชคเซเชฐเชฎเชพเช เชชเซเชฐเชธเชพเชฐเชฟเชค เชฅเชพเชฏ เชเซ. เชชเชคเซเชฐเชจเชพ เชฎเซเชเซเชฏ เชญเชพเชเชฎเชพเช เชเซเชกเซเชฎเชพเช เชเชจเซเชเชฟเชเซ เชชเซเชฐเซเชชเชฐเซเชเซเชเชจเชพ เชฎเซเชชเชฟเชเช เชฎเชพเชเซ เชจเชตเซ เชเซเชเชจเซ เชเชกเชชเชฅเซ เชเชฎเซเชฐเชตเชพ เชฎเชพเชเซ เชธเชฎเชฐเซเชฅ เชฅเชตเชพ เชฎเชพเชเซ เชตเซเชฏเชตเชธเชพเชฏ เชชเชฃ เชธเชฎเชฐเซเชฅเชจ เชฎเชพเชเชเซ เชเซ. เชเซ เชเซเชเช เชเซเชฎเซเชชเชฒเซเชเชฎเชพเช เชเชพเชเชชเซ เชเชฐเซ เชนเซเชฏ เช เชฅเชตเชพ เชคเซ เชฐเซเชฒเซเช เชชเชนเซเชฒเชพ เชจเชตเชพ เชซเซเชฐเซเชฎเซเชเชฎเชพเช เช เชจเซเชเซเชฒเชจ เชเชฐเซเชจเซ, เชจเชตเชพ เชญเชพเชเซเชฆเชพเชฐ เชชเชพเชธเซเชฅเซ เชฎเซเชชเชฟเชเชเชจเซ เชคเชพเชคเซเชเชพเชฒเชฟเช เชฒเซเชเช เชเชฐเชตเซเช เชเชฐเซเชฐเซ เชเซ. เชชเชเซ เช เชฎเซ เชธเชธเซเชคเชพ เชกเซเชเชพเชซเชฟเชเซเชธ เชคเชฐเซเชเซ เชเช เชจเชตเซ เชฎเซเชชเชฟเชเช เชธเชนเชธเชเชฌเชเชง เชเชฎเซเชฐเซ เชถเชเซเช เชเซเช. เชเชเชฒเซ เชเซ เชเซเชตเชจเชจเซเช เชเชฆเชพเชนเชฐเชฃ.
เช เชฎเซ เช เชฎเชฒ เชเชฐเซเช เชเซเช, เชชเชฐเซเชเซเชทเชฃเซ เชฌเชจเชพเชตเซเช เชเซเช. เชเชพเชฎ เชเชฐเซ เชเซ.
เชนเซเช เชเซเชก เชชเซเชฐเชฆเชพเชจ เชเชฐเซเชถ เชจเชนเซเช: เชคเซเชฏเชพเช เชเชฃเชพ เชฌเชงเชพ เชธเซเชฐเซเชคเซ เชเซ, เช เชจเซ เชคเซ เชฒเซเชเชจเชพ เช เชเชคเซ เชฒเชฟเชเช เชฆเซเชตเชพเชฐเชพ GitHub เชชเชฐ เชเชชเชฒเชฌเซเชง เชเซ. เชคเชฎเซ เชคเซเชฎเชจเซ เชฒเซเชก เชเชฐเซ เชถเชเซ เชเซ, เชคเซเชฎเชจเซ เชฎเชพเชจเซเชฏเชคเชพเชจเซ เชฌเชนเชพเชฐ เชคเซเชฐเชพเชธ เชเชชเซ เชถเชเซ เชเซ เช เชจเซ เชคเซเชฎเชจเซ เชฎเชพเชชเซ เชถเชเซ เชเซ, เชเชพเชฐเชฃ เชเซ เชคเซ เชคเชฎเชพเชฐเชพ เชเซเชธเชฎเชพเช เช เชธเชฐ เชเชฐเชถเซ. เชนเซเช เชซเชเซเชค เชฌเซ เชจเชฎเซเชจเชพ เชชเชฆเซเชงเชคเชฟเชเชจเซ เชเซเชก เชเชชเซเชถ เชเซ เชนเชพเชเชกเซเชฐเซเชเชฐเชจเซ เช เชฒเช เชชเชพเชกเซ เชเซ, เชเซ เชเชกเชชเซ เชนเซเชตเชพเชจเซเช เชฎเชพเชจเชตเชพเชฎเชพเช เชเชตเชคเซเช เชนเชคเซเช, เชนเชพเชเชกเซเชฐเซเชเชฐเชฅเซ, เชเซ เชงเซเชฎเซ เชนเซเชตเชพเชจเซเช เชฎเชพเชจเชตเชพเชฎเชพเช เชเชตเชคเซเช เชนเชคเซเช.
เชคเชฐเซเช เชจเซเชเซ เชฎเซเชเชฌ เชเซ: เชเซเชฎเซเชชเชฒเซเช เชชเชฆเซเชงเชคเชฟ เชฎเซเชณเชญเซเชค เชชเชพเชฐเซเชธเชฐ เชคเชฐเซเช เชฆเซเชตเชพเชฐเชพ เชเชจเชฐเซเช เชเชฐเชพเชฏเซเชฒ เชเซเชกเซเช เชฎเซเชณเชตเซ เชเซ. LINQ เชธเซเชคเชฐ เช เชชเชพเชฐเซเชธเชฐ เช เชจเซ เชนเชพเชเชกเซเชฐเซเชเชฐเชจเซเช เชฎเซเชณเชญเซเชค เชคเชฐเซเช เชเซ, เชเซ เชกเซเชเชพเชฌเซเช เชธเชเชฆเชฐเซเชญเชจเซ เชตเชฟเชจเชเชคเซ เชเชฐเซ เชเซ เช เชจเซ เชชเชพเชฐเซเชธเชฐเชจเซ เชเซเชกเซ เชธเชพเชฅเซ เชเซเชจเซ เชคเซเชฒเชจเชพ เชเชฐเซ เชเซ (เช เชเชพเชฐเซเชฏเซ เชฎเชพเชเซ เชธเชฐเชเชพเชฎเชฃเซ เชฎเชพเชเซ LINQ เชตเชเชฐเชจเซ เชเซเชก เชเซ). เชเชเชณ, เชเซเชกเซเชจเซ เชฎเซเชเซเชฏ เชนเชพเชเชกเซเชฐเซเชถเชจ เชชเชฆเซเชงเชคเชฟเชฎเชพเช เชชเชธเชพเชฐ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ เช เชจเซ เชเซเชกเซเชจเชพ เชฎเซเชฒเซเชฏเซ เชเชจเซเชเชฟเชเซเชจเชพ เช เชจเซเชฐเซเชช เชเซเชฃเชงเชฐเซเชฎเซ เชชเชฐ เชธเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ.
"เชเชกเชชเซ" (เชฌเซเชจเซเชเชฎเชพเชฐเซเชเชฎเชพเช เชเชชเชธเชฐเซเช เชเชกเชชเซ):
protected override Contact GetContact(PropertyToValueCorrelation[] correlations)
{
var contact = new Contact();
foreach (var setterMapItem in _proprtySettersMap)
{
var correlation = correlations.FirstOrDefault(x => x.PropertyName == setterMapItem.Key);
setterMapItem.Value(contact, correlation?.Value);
}
return contact;
}
เชเซเชฎ เชเชชเชฃเซ เชเซเช เชถเชเซเช เชเซเช, เชธเซเชเชฐ เชชเซเชฐเซเชชเชฐเซเชเซเช เชธเชพเชฅเซ เชธเซเชฅเชฟเชฐ เชธเชเชเซเชฐเชนเชจเซ เชเชชเชฏเซเช เชฅเชพเชฏ เชเซ - เชธเชเชเชฒเชฟเชค เชฒเซเชฎเซเชฌเชกเชพเชธ เชเซ เชเซ เชธเซเชเชฐ เชเชจเซเชเชฟเชเซ เชเชนเซ เชเซ. เชจเซเชเซเชจเชพ เชเซเชก เชฆเซเชตเชพเชฐเชพ เชฌเชจเชพเชตเซเชฒ:
static FastContactHydrator()
{
var type = typeof(Contact);
foreach (var property in type.GetProperties())
{
_proprtySettersMap[property.Name] = GetSetterAction(property);
}
}
private static Action<Contact, string> GetSetterAction(PropertyInfo property)
{
var setterInfo = property.GetSetMethod();
var paramValueOriginal = Expression.Parameter(property.PropertyType, "value");
var paramEntity = Expression.Parameter(typeof(Contact), "entity");
var setterExp = Expression.Call(paramEntity, setterInfo, paramValueOriginal).Reduce();
var lambda = (Expression<Action<Contact, string>>)Expression.Lambda(setterExp, paramEntity, paramValueOriginal);
return lambda.Compile();
}
เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ เชคเซ เชธเซเชชเชทเซเช เชเซ. เช เชฎเซ เชเซเชฃเชงเชฐเซเชฎเซเชจเซ เชชเชพเชฐ เชเชฐเซเช เชเซเช, เชคเซเชฎเชจเชพ เชฎเชพเชเซ เชชเซเชฐเชคเชฟเชจเชฟเชงเชฟเช เชฌเชจเชพเชตเซเช เชเซเช เชเซ เชธเซเชเชฐเชจเซ เชฌเซเชฒเชพเชตเซ เชเซ เช เชจเซ เชคเซเชฎเชจเซ เชธเชพเชเชตเซเช เชเซเช. เชชเชเซ เชเชฐเซเชฐ เชชเชกเซ เชคเซเชฏเชพเชฐเซ เชซเซเชจ เชเชฐเซเช เชเซเช.
"เชงเซเชฎเซ" (เชฌเซเชจเซเชเชฎเชพเชฐเซเชเชฎเชพเช เชงเซเชฎเซ เชเชชเชธเชฐเซเช):
protected override Contact GetContact(PropertyToValueCorrelation[] correlations)
{
var contact = new Contact();
foreach (var property in _properties)
{
var correlation = correlations.FirstOrDefault(x => x.PropertyName == property.Name);
if (correlation?.Value == null)
continue;
property.SetValue(contact, correlation.Value);
}
return contact;
}
เช เชนเซเช เช เชฎเซ เชคเชฐเชค เช เชชเซเชฐเซเชชเชฐเซเชเซเชเชจเซ เชฌเชพเชฏเชชเชพเชธ เชเชฐเซเช เชเซเช เช เชจเซ เชธเซเชเชตเซเชฒเซเชฏเซเชจเซ เชธเซเชงเซ เชเซเชฒ เชเชฐเซเช เชเซเช.
เชธเซเชชเชทเซเชเชคเชพ เชฎเชพเชเซ เช เชจเซ เชธเชเชฆเชฐเซเชญ เชคเชฐเซเชเซ, เชฎเซเช เชเช เชจเชฟเชทเซเชเชชเช เชชเชฆเซเชงเชคเชฟเชจเซ เช เชฎเชฒ เชเชฐเซเชฏเซ เชเซ เชเซ เชคเซเชฎเชจเชพ เชธเชนเชธเชเชฌเชเชง เชเซเชกเซเชจเชพ เชฎเซเชฒเซเชฏเซ เชธเซเชงเชพ เชเชจเซเชเชฟเชเซ เชซเซเชฒเซเชกเชฎเชพเช เชฒเชเซ เชเซ. เชเชชเชธเชฐเซเช - เชฎเซเชจเซเชฏเซเช เชฒ.
เชนเชตเซ เชเชพเชฒเซ BenchmarkDotNet เชฒเชเช เช เชจเซ เชชเซเชฐเชฆเชฐเซเชถเชจเชจเซ เชคเชชเชพเชธ เชเชฐเซเช. เช เชจเซ เช เชเชพเชจเช... (เชฌเชเชพเชกเชจเชพเชฐ - เช เชธเชพเชเซเช เชชเชฐเชฟเชฃเชพเชฎ เชจเชฅเซ, เชตเชฟเชเชคเซ เชจเซเชเซ เชเซ)
เชเชชเชฃเซ เช
เชนเซเช เชถเซเช เชเซเชเช เชเซเช? เชเชกเชชเซ เชเชชเชธเชฐเซเชเชจเซ เชตเชฟเชเชฏเซ เชฐเซเชคเซ เชธเชนเชจ เชเชฐเชคเซ เชชเชฆเซเชงเชคเชฟเช เชงเซเชฎเชพ เชเชชเชธเชฐเซเช เชธเชพเชฅเซเชจเซ เชชเชฆเซเชงเชคเชฟเช เชเชฐเชคเชพเช เชฒเชเชญเช เชคเชฎเชพเชฎ เชชเชพเชธเชฎเชพเช เชงเซเชฎเซ เชนเซเชฏ เชเซ. เช เชซเชพเชณเชตเชฃเซ เช
เชจเซ เชเชพเชฎเชจเซ เชเชกเชช เชฌเชเชจเซ เชฎเชพเชเซ เชธเชพเชเซเช เชเซ. เชฌเซเชเซ เชฌเชพเชเซ, เชเซเชฏเชพเช เชถเชเซเชฏ เชนเซเชฏ เชคเซเชฏเชพเช เช เชฎเชพเชเซ เชฌเชจเชพเชตเชพเชฏเซเชฒ LINQ เชชเชฆเซเชงเชคเชฟเชเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชฎเซเชชเชฟเชเชเชจเซเช เชธเซเชเชฆเชฐ เช
เชจเซ เชญเชตเซเชฏ เช
เชฎเชฒเซเชเชฐเชฃ, เชคเซเชจเชพเชฅเซ เชตเชฟเชชเชฐเซเชค, เชเชคเซเชชเชพเชฆเชเชคเชพเชฎเชพเช เชเชฃเซ เชเชเชพเชกเซ เชเชฐเซ เชเซ. เชคเชซเชพเชตเชค เชเชฐเซเชกเชฐเชจเซ เชเซ. เชชเชพเชธเชจเซ เชตเชฟเชตเชฟเชง เชธเชเชเซเชฏเชพเช เชธเชพเชฅเซ เชตเชฒเชฃ เชฌเชฆเชฒเชพเชคเซเช เชจเชฅเซ. เชคเชซเชพเชตเชค เชฎเชพเชคเซเชฐ เชธเซเชเซเชฒเชฎเชพเช เชเซ. LINQ เชธเชพเชฅเซ เชคเซ 4 - 200 เชเชฃเซเช เชงเซเชฎเซเช เชเซ, เชฒเชเชญเช เชธเชฎเชพเชจ เชธเซเชเซเชฒ เชชเชฐ เชตเชงเซ เชเชเชฐเซ เชเซ.
เชธเซเชงเชพเชฐเชพเชถเซ
เชฎเชจเซ เชฎเชพเชฐเซ เชเชเชเซ เชชเชฐ เชตเชฟเชถเซเชตเชพเชธ เชจ เชนเชคเซ, เชชเชฐเชเชคเซ เชตเชงเซ เชฎเชนเชคเซเชคเซเชตเชจเซ เชตเชพเชค เช เชเซ เชเซ เช
เชฎเชพเชฐเชพ เชธเชพเชฅเซเชฆเชพเชฐเซ เชฎเชพเชฐเซ เชเชเชเซ เช
เชฅเชตเชพ เชฎเชพเชฐเชพ เชเซเชก เชชเชฐ เชตเชฟเชถเซเชตเชพเชธ เชเชฐเซเชฏเซ เชจ เชนเชคเซ -
เช เชนเซเช เชฐเซเชเซเชธเซเชเชจเซเช เชชเชฐเชฟเชฃเชพเชฎ เชเซ:
เชจเชฟเชทเซเชเชฐเซเชท: เชเชจเซเชเชฐเชชเซเชฐเชพเชเชเชฎเชพเช เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌเชจเซ เชเชชเชฏเซเช เชเชฐเชคเซ เชตเชเชคเซ, เชฏเซเชเซเชคเชฟเชเชจเซ เชเชถเชฐเซ เชฒเซเชตเชพเชจเซ เชเซเช เชเชพเชธ เชเชฐเซเชฐ เชจเชฅเซ - LINQ เชเชคเซเชชเชพเชฆเชเชคเชพ เชตเชงเซ เชเชพเช เชเชถเซ. เชเซ เชเซ, เชเชเซเช-เชฒเซเชก เชชเชฆเซเชงเชคเชฟเชเชฎเชพเช เชเซ เชเซเชจเซ เชเชชเซเชเชฟเชฎเชพเชเชเซเชถเชจเชจเซ เชเชฐเซเชฐ เชนเซเชฏ เชเซ, เชคเชฎเซ เชเชจเชฟเชถเชฟเชฏเชฒเชพเชเชเชฐเซเชธ เช
เชจเซ เชกเซเชฒเชฟเชเซเช เชเชฎเซเชชเชพเชเชฒเชฐเซเชธเชจเชพ เชฐเซเชชเชฎเชพเช เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌ เชธเชพเชเชตเซ เชถเชเซ เชเซ, เชเซ เชชเชเซ "เชเชกเชชเซ" เชคเชฐเซเช เชชเซเชฐเชฆเชพเชจ เชเชฐเชถเซ. เช เชฐเซเชคเซ เชคเชฎเซ เชชเซเชฐเชคเชฟเชฌเชฟเชเชฌเชจเซ เชฒเชตเชเซเชเชคเชพ เช
เชจเซ เชเชชเซเชฒเชฟเชเซเชถเชจเชจเซ เชเชกเชช เชฌเชเชจเซ เชเชพเชณเชตเซ เชถเชเซ เชเซ.
เชฌเซเชจเซเชเชฎเชพเชฐเซเช เชเซเชก เช
เชนเซเช เชเชชเชฒเชฌเซเชง เชเซ. เชเซเชเชชเชฃ เชฎเชพเชฐเชพ เชถเชฌเซเชฆเซเชจเซ เชฌเซ เชตเชพเชฐ เชคเชชเชพเชธเซ เชถเชเซ เชเซ:
PS: เชชเชฐเซเชเซเชทเชฃเซเชฎเชพเชเชจเซ เชเซเชก IoC เชจเซ เชเชชเชฏเซเช เชเชฐเซ เชเซ, เช เชจเซ เชฌเซเชจเซเชเชฎเชพเชฐเซเชเซเชธเชฎเชพเช เชคเซ เชธเซเชชเชทเซเช เชฐเชเชจเชพเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชเซ. เชนเชเซเชเชค เช เชเซ เชเซ เช เชเชคเชฟเชฎ เช เชฎเชฒเซเชเชฐเชฃเชฎเชพเช เชฎเซเช เชคเชฎเชพเชฎ เชชเชฐเชฟเชฌเชณเซเชจเซ เชเชพเชชเซ เชจเชพเชเซเชฏเชพ เชเซ เชชเซเชฐเชญเชพเชตเชจเซ เช เชธเชฐ เชเชฐเซ เชถเชเซ เช เชจเซ เชชเชฐเชฟเชฃเชพเชฎเชจเซ เชเซเชเชเชพเชเซเชฏเชพ เชฌเชจเชพเชตเซ เชถเชเซ.
PPS: เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพ เชฎเชพเชเซ เชเชญเชพเชฐ
PPPS: เชเซเชฃเชตเชเชญเชฐเซเชฏเชพ เชตเชพเชเชเชจเซ เชเชญเชพเชฐ เชเซ เชเซเช เชถเซเชฒเซ เช
เชจเซ เชกเชฟเชเชพเชเชจเชจเชพ เชคเชณเชฟเชฏเซ เชชเชนเซเชเชเซเชฏเชพ. เชนเซเช เชเชเชฐเซเชชเชคเชพ เช
เชจเซ เชธเชเชตเชก เชฎเชพเชเซ เชเซเช. เชชเซเชฐเชธเซเชคเซเชคเชฟเชจเซ เชฎเซเชคเซเชธเชฆเซเชฆเซเชเซเชฐเซ เชเชเซเชเชฟเชค เชเชฐเชตเชพ เชฎเชพเชเซ เชเชฃเซเช เชฌเชงเซเช เชเซเชกเซ เชฆเซ เชเซ, เชชเชฐเชเชคเซ เชฎเซเช เชเซเชเชพเชจเซ เชงเซเชฏเชพเชจเชฎเชพเช เชฒเซเชงเซ. เชนเซเช เช
เชธเซเชคเซเชฐ เชฎเชพเชเซ เชชเซเชเซเช เชเซเช.
เชธเซเชฐเซเชธ: www.habr.com