Controller එක කියන්නෙ අපේ Application එකේ Request Response Handle කරන Layer එක. ඒ කියන්නෙ Frontend එකෙන් මොකක් හරි Request එකක් ආවම ඒ Request එක Controller එකෙන් අරගෙන ඒකට අදාල Response එක ආයෙමත් Frontend එකට return කරන්නෙ මෙන්න මේ Controller Layer එකෙන්.
ඊට පස්සෙ මේ එන Data ටික අපේ Application එකේ ඉදන් එහෙට මෙහෙට අරගෙන යන්න අපි භාවිතා කරන්නේ Data Transfer Object (DTO) එකක්.
ඉතින් මේ DTO කියල තියෙන්නෙ අන්න ඒ Layer එක. (බොහෝ දුරට මේ DTO එක අපේ Entity Class ඒකට සමානයි).
ඊලගට තියෙන්නෙ Service Layer එක. ඉතින් ඔයාලට නමින්ම අදහසක් එනව ඇති නේද දැන්. ඔව් , Service Layer එක කියන්නෙ අපේ Business Logic Layer එක. අපේ Application එකේ සියලුම Logic තියෙන්නෙ මේ Layer එක ඇතුලේ.
ඊලගට මෙතනදි Repository layer එක ගත්තම ඒක සම්බන්ධ වෙන්නෙ කෙලින්ම අපේ Database එකත් එක්ක. එතකොට Service ලේයර් එකට අවශ්යය සියලුම Data DB එකෙන් ගන්නෙ සහ DB එකට දාන්නෙ මෙන්න මේ Repository එක හරහා.
අන්න ඒ service layers දෙක අතර (Service Layer එක සහ Repository Layer එක) අතර Data එක්ක වැඩ කරන්න Data Map කරගන්න තමයි අපිට Entity Layer එක අවශ්යය වන්නෙ.