Posted on April 24, 2011, 8:17 pm
ហាហា ខ្ញុំចង់ សរសេរ ប្លុក របស់ខ្ញុំ បន្តទៀ ពី Framework Symfony តែដោយវាទាក់ទង់ទៅនឹង MVC ? អាឡូវ សូមបកក្រោយ មកពន្យល អំពី MVC បន្តិចសិន ។ សូមអាន ណា ខ្ញុំនិង សាកល្បង ពន្យល់ ។
MVC មកពីពាក្យថា M=Model, V=View, C=Controller វាជា របៀបធ្វើការ ឬ របៀប បែងចែកក្នុងការ សរសេរ កូដ របស់ អ្នក បង្កើត កម្មវធី ។
វាត្រូវបានគេប្រើយ៉ាងច្រើន នៅក្នុង ផ្នែក (Software Engineering) ។
វាធ្វើអោយ Developer ងាយស្រួលក្នុងការ គ្រប់គ្រង Code ដែលគេបានសរសេ ពីព្រោះវាបានបែងចែក Business Logic ជាបីផ្នែកដែលមានតួនាទីផ្សេងៗពីគ្នា ( M, V and C) ហើយផ្នែកទាំងបីនោះ ធ្វើការ ក្នុង គោលដៅតែមួយ ។
Model
= ប្រៀបដូចជា អ្នកគិត, អ្នកធ្វើការ , អ្នក Process ហើយផ្តល់ចំលើយ, អ្នករៀបចំ, វាទទួលពត័មានពី View ហើយនិងផ្តល់ចំលើយ ទៅអោយ View ។
View
= ប្រៀបដូចជាអ្នក ផ្តល់ និងទទួល ពត័មាន , User Interface, វាធ្វើការជិតស្និតជាមួយ Model , វាផ្តល់ពត័មានទៅអោយ Model ។
Controller
= ប្រៀបដូចជាអ្នកគ្រប់គ្រង វាគ្រប់គ្រង View and Model, តែភាគច្រៀនវាធ្វើការ ជិតស្និតជាមួយ និង View ។
យល់អត់ ? បើមិនយល់ទេខ្ញុំ សូមលើក ឧទាហរណ៍ មួយ មកពន្យល់
ឧ. ក្នុងហាង ដំឡើង ម៉ូតូ មូយ មានបីផ្នែក ដែរ ធ្វើការ ផ្សេៗពីគ្នា គឺ៖
១.Model
ផ្នែកដំឡើងគ្រឿង និង ផ្គុំ ដើម្បី អោយក្លាយជា ម៉ូតូ ពេលដំឡើងរូចហើយ ត្រូវ បញ្ជូន ទៅដាក់តាំង ក្នុង ShowRoom និងត្រូវប្រាប់ពត័មានដល់ Showroom Girl or Receptionist (View)។
២.View
បន្ទាប់ពីដំឡើងរូចហើយ គឺត្រូវ យក ម៉ូតូមកដាក់តាំងលក់ ហើយ មាន receptionist រឺ showroom girl ជាអ្នកផ្តល់ពត័មាន ពីម៉ូតូនេះ ។ Showroom girl រឺ Receptionist ត្រូវទៅរៀន ពីផ្នែកដំឡើងគ្រឿង (Model) ដើម្បីទទួលបានពត័មាន និងងាយស្រួលក្នុងការ និយាយជាមួយ អតិថិជន ។ Showroom girl រឺ Receptionist មានតួនាទីលក់និងផ្តល់ Report លក់ទៅ អោយ ShowRoom Manager (Controller)
៣.Controller
ប្រៀដូចជា Showroom Manager ដែលមានតួនាទីគ្រប់គ្រងទៅលើ ShowRoom Girl, Receptionist (View) និងការលក់ ម៉ូតូដែលបានដំឡើងហើយ (Model)
សូមមើល Process Graph ខាងក្រោម ។
![]() |
ដូច្នោះក្នុងការសរសេកូដ វាជាការល្អបំផុត ក្នុងការ បែងចែក របៀបនៃការ សរសេកូដរបស់យើង
សូមមើឧទាហរណ៍ កូដ របស់ខ្ញុំ ( Process នៃការ Login (php code) សរសេរដោយបែងចែក Process តាម MVC )
ទាញយក កូដនៅទីនេះ