ទំរង់​ MVC ​នៃ​កម្មវិធី Laravel

យើង​បាន​ដឹង​រួច​មក​ហើយ​ថា កម្មវិធី​គេហទំព័រ​ជា​កម្មវិធី​កំព្យូទ័រ​ទាំងឡាយ​ណា​ដែល​ដំណើរការ​នៅ​លើ server ដែល​ជា​កំព្យូទ័រ​យក្ស​នៅ​លើ​បណ្តាញ​ Internet ។ ហើយ​ភាគ​ច្រើន​នៃ​កម្មវិធី​ទាំងនោះ មាន​ប្រភេទ​ជា​គេហទំព័រ​ទាំងឡាយ​ណា​ដែល​រក្សាទុក​នូវ​ទិន្នន័យ​ផ្សេង​ៗ មាន​ដូច​ជា​ទិន្នន័យ​ជា​បញ្ជីរ​ឈ្មោះ និង​ទិន្នន័យ​ដែល​ជា​ព័ត៌មាន​ប្រចាំ​ថ្ងៃ​ ដូច​ជា​គេហទំព័រ​សារព័ត៌មាន​ជាដើម​។ យ៉ាងណាម៉ិញ ទិន្នន័យ​ទាំងនោះ​នឹង​ត្រូវ​ស្រង់​យក​ទៅ​បង្ហាញ​ដល់​អ្នក​ចូល​មើល​គេហទំព័រ នៅ​ពេល​ដែល​ពួក​គេ​ធ្វើ​សំណើរ​ស្នើ​សុំ​ ដោយ​ការចុច​បើក​ទំព័រ​នានា​ជា​ដើម​។

មួយវិញទៀត សំរាប់​អ្នក​អភិវឌ្ឍ​កម្មវិធី​គេហទំព័រ ទំព័រ​និមួយ​ៗ​មាន​អាស័យដ្ឋានដោយឡែករៀង​ៗ​ខ្លួន (URI) ហើយ​ការ​ចុច​របស់​អ្នក​ចូល​មើល​គេហទំព័រ​ គឺ​ជា «សំណើរ» (request) ​ស្នើ​សុំ​អោយ​កម្មវិធី​គេហទំព័រ​ «ឆ្លើយតប»​ (response) មក​វិញ​ដោយ​បង្ហាញ​ព័ត៌មាន​របស់​ទំព័រ​ដែល​មាន​អាស័យដ្ឋានដូច​ដែល​​អ្នក​ចូល​មើល​​បាន​ចុច​។

សរុបមក «សំណើរ» និង «ការឆ្លើយតប» គឺ​ជា​ប្រធានបទ​​ស្នូល​នៃ​កម្មវិធី​គេហទំព័រ​​ទាំងឡាយ​។ ដូចនេះ ​គោលបំណងសំខាន់បំផុត​នៃ​កម្មវិធី​គេហទំព័រ គឺ​ការដោះស្រាយ​បញ្ហានៅ​​ជុំវិញ​ «សំណើរ & ការឆ្លើយតប» នេះ​។ ​ហើយ​ជាទូទៅ​ពាក្យ​ថា «សំណើរ» នៅ​ក្នុង​កម្មវិធី​គេហទំព័រ​ដែលភាសា​អង់គ្លេសហៅ​ថា request ត្រូវ​គេ​និយម​សរសេរ​អក្សរ​កាត់​ថា «req» និង​ពាក្យ​ថា «ការឆ្លើយតប» ដែល​ភាសា​អង់គ្លេស​ហៅ​ថា response ត្រូវ​គេ​និយម​សរសេរ​អក្សរ​កាត់​ថា «res» ។

ដូច​បាន​លើក​ឡើង​រួច​មក​ហើយ​ថា សំរាប់​កម្មវិធី​គេហទំព័រ នៅ​ពេល​ដែល​អ្នក​ចូលមើល​ចុច​ចង់​មើល​ទំព័រ​ណា​មួយ អាស័យដ្ឋាន​ (URI) របស់​ទំព័រ​នោះ​ត្រូវ​បាន​បញ្ជូន​ទៅ​កាន់​កម្មវិធី​គេហទំព័រ​ដើម្បី​ពិនិត្យ​និង​ធ្វើការឆ្លើយតប​ដ៏​សម​ស្រប​ណា​មួយ។ ហើយ​ជាទូទៅ ការឆ្លើយតប​​គឺ​ជាការបង្ហាញ​ព័ត៌មាន​​​​ដែល​ទាក់ទង​នឹង​អាស័យដ្ឋាននោះ​នៅ​លើ​ browser ។ យន្តការពិនិត្យ​​​​មើល​អាស័យដ្ឋាន​ដើំម្បី​​ធ្វើការឆ្លើយតប​​​ដ៏​សម​ស្រប​​ណា​មួយ​នោះ​ ត្រូវ​គេ​ហៅ​​​​ជា​ភាសា​អង់គ្លេសថា «routing» ដែល​យើង​អាច​ប្រើ​ពាក្យ​ខ្មែរ​ថា «ការធ្វើផ្លូវ» សំរាប់បកប្រែ​ពាក្យ​នេះ​​បាន​។

យ៉ាងណាម៉ិញ បណ្តា​ក្បួន​វិធី​ទាំងឡាយ​ណា ដែល​ត្រូវ​យក​មក​ប្រើ​ដើម្បី​ធ្វើការឆ្លើយតប​ដ៏​សមស្រប​ទាក់ទង​ទៅ​នឹង​អាស័យដ្ឋាន​ណាមួយ​នោះ ត្រូវ​គេ​អោយ​ឈ្មោះ​ថា​ជា​ក្បួន​វិធី​ស្ថិត​ក្នុង​ផ្នែក controller ដែល​យើង​អាច​សន្មត​យក​ពាក្យ​ខ្មែរ​ថា ផ្នែកនិយ័តករ សំរាប់​បក​ប្រែ​ពាក្យ​នេះ​បាន​។

លើស​ពី​នេះ​ទៀត នៅ​ក្នុង​ការអនុវត្ត​ជាក់ស្តែង គេ​ច្រើន​បង្កើត​ក្បួន​និង​ឬ​វិធី​ដោយ​ឡែក​មួយ​ចំនួន​ទៀត ទុក​សំរាប់​ប្រើប្រាស់​ក្នុង​ការបញ្ចូល​ឬ​ស្រង់​យក​ទិន្នន័យ​ពី​មូលដ្ឋាន​ទិន្នន័យ​យក​មក​អោយ​ក្បួន​វិធី​ដែល​ស្ថិត​ក្នុង​ផ្នែក​និយ័ករ (controller) យក​ទៅ​អោយ​ក្បួន​វិធី​ក្នុង​ផ្នែក​ផ្សេង​ទៀត​ទៀត​។ ជាទូទៅ ក្បួន​វិធី​ទាក់ទង​នឹង​ការបញ្ជូល​ឬ​ស្រង់​យក​ទិន្នន័យ​ទាំងនោះ​ត្រូវ​គេ​ចាត់ទុកថា​ជា​ក្បួន​វិធី​ស្ថិត​ក្នុង​ផ្នែក model ដែល​យើង​អាច​កំណត់​យក​ពាក្យ​ខ្មែរ​ថា ផ្នែកទិន្នន័យ សំរាប់​បកប្រែ​ពាក្យ​នេះ​បាន​។

ម៉្យាងទៀត ក្រោយ​ពី​ទទួល​បាន​ទិន្នន័យ​ផ្សេង​ៗ​ពី​​ក្បួន​វិធី​ស្ថិត​ក្នុង​ផ្នែក​ទិន្នន័យ (model) រួច​ហើយ​ ក្បួន​វិធី​ក្នុង​ផ្នែកនិយ័តករ (controller) តែងតែ​ផ្តល់​ទិន្នន័យ​ទាំងនោះ​អោយ​ទៅ​ក្បួន​វិធី​នៅ ក្នុង​ផ្នែក​មួយ​ទៀត ដែល​មាន​នាទី​យក​ទិន្នន័យ​ទាំងនោះ​ទៅ​សរសេរ​បញ្ចូល​ទៅ​ក្នុង​ទំព័រ​នានា សំរាប់​បង្ហាញ​ដល់​អ្នក​ចូល​មើល​គេហទំព័រ​។ ផ្នែក​សរសេរ​រៀប​ចំ​ទំព័រ​សំរាប់​ការបង្ហាញ​ទាំងនោះ ​ត្រូវ​គេ​ហៅ​ថា​ជា​ផ្នែក view ដែល​យើង​អាច​សន្មត​យក​ពាក្យ​ខ្មែរ​ថា ផ្នែក​បង្ហាញ សំរាប់​បក​ប្រែ​ពាក្យ​នេះ​។

សរុបមក កម្មវិធី​គេហទំព័រ Laravel ក៏ដូច​ជា​កម្មវិធី​គេហទំព័រ​ជា​ភាសា​មួយ​ចំនួន​ធំ​ទៀត​ដែរ គឺ​មាន​ទំរង់​ទូទៅ​ជា MODEL - VIEW - CONTROLLER ដែល​គេ​និយម​ហៅ​កាត់​ថា MVC ។ ដូចនេះ កម្មវិធី​គេហទំព័រ Laravel ជា​កម្មវិធី​មាន​​ទំរង់​ជា MVC ៕