ให้เรตสมาชิก: 5 / 5

ดาวใช้งานดาวใช้งานดาวใช้งานดาวใช้งานดาวใช้งาน
 

 

Model View Controller (โมเดล วิว คอนโทรลเลอร์) หรือ MVC (เอ็ม วี ซี) คือ


    สถาปัตยกรรมซอฟแวร์ Architecture Software (อาคิเทคเชอะ ซอฟต์แวร์) ที่มีการแบ่งแยกระบบออกเป็น 3 ส่วนหลักๆ ได้แก่ data model (ดาต้า โมเดล), user interface (ยูส อินเตอร์เฟส), and control logic (แอ็น คอนโทรล ลอจิค)

Model View Controller
Model View Controller 

Controller (คอนโทรลเลอร์)

  • เป็นส่วนที่ทำงานเป็นอันดับแรกเมื่อมีโปรแกรมถูกเรียก จาก Web browser (เว็บ บลาวเซอร์)
  • เป็นส่วนที่ติดต่อการทำงานระหว่างผู้ใช้และโปรแกรม
  • มีการติดต่อกับ Databases (ดาต้าเบส) ด้วย Model (โมเดล) และแสดงผลข้อมูลผ่านทาง View (วิว)
  • เป็นส่วนที่มีการประมวลผลหลัก ของโปรแกรม

 

Model (โมเดล)

           ใน  Object-oriented (ออปเจ็ค โอเรียนเทด) การใช้เว็บ database-driven (ดาต้าเบส-ดรีฟเอ็น) จะเป็นแบบ MVC ซึ่ง Model จะประกอบด้วย class ที่เชื่อมต่อกับ RDBMS (อาร์ ดี บี เอ็ม เอส) ใน Ruby On Rails class model (รูบี ออน เรล คลาซ โมเดล) จะถูกจัดการผ่านทางข้อมูล ซึ่งโปรแกรมเมอร์ทุกคนควร ต้องทำเป็น subclass (ซับคราส) คือ Active Record (แอค' ทิฟว เรค'เคิร์ด)และโปรแกรมจะเข้าใจอัตโนมัติว่าจะใช้ตาราง RDBMS อันไหน และเรียกคอลัมภ์ต่างๆในตารางเอง ใน Model มีการติดต่อกับ Active Record เพื่อช่วยจัดการงานด้าน Database เช่น

  • ดูแลในเรื่องของการติดต่อสื่อสารระหว่าง Object และ Database โดยที่ผู้พัฒนาไม่ต้องยุ่งยากกับการใช้ SQL command (เอส คิว แอล คอมมาน)
  • เป็นงานด้านการตรวจสอบความสัมพันธ์ของข้อมูล มีผลกับฐานข้อมูล
  • ตรวจสอบความถูกต้อง Handles validation (แฮนเดิล อินแวล'ลิเดท)

 

View (วิว)

 
Referenve : en.wikipedia.org/wiki/Model–view–controller

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ประเภทหน้ารายงานงบการเงิน
โดย EyePornnipa ศ 23 ส.ค. 2019 6:30 pm บอร์ด M089 - นางสาวพรนิภา ราชธานี
0
8
ศ 23 ส.ค. 2019 6:30 pm โดย EyePornnipa
Android Q ได้ชื่อใหม่แล้ว ไม่ใช่ชื่อขนม แต่เป็น "Android 10" มีเปลี่ยนโลโก้ด้วย
โดย aninthana ศ 23 ส.ค. 2019 5:49 pm บอร์ด Mobile Programming - Android, iOS, Window Phone
0
3
ศ 23 ส.ค. 2019 5:49 pm โดย aninthana
สอบถาม ถ้าลงไพทอน เวอร์ชั่นใหม่ เดิมใช้เวอร์ชั่นเก่าอยู่ จะเป็นยังไงครับ
โดย chatee supasand ศ 23 ส.ค. 2019 5:49 pm บอร์ด Programming - C/C++ & java & Python
1
8
ศ 23 ส.ค. 2019 5:52 pm โดย tatiya
ดีไซต์ใหม่ Google Play Store เน้นสีขาว
โดย jamepiyawat ศ 23 ส.ค. 2019 5:48 pm บอร์ด Share Knowledge
0
3
ศ 23 ส.ค. 2019 5:48 pm โดย jamepiyawat
วีธีการดาวน์โหลดวีดีโอด้วยลิ้ง url โดยการใช้ requests
โดย jirawoot ศ 23 ส.ค. 2019 5:46 pm บอร์ด Python Knowledge
0
12
ศ 23 ส.ค. 2019 5:46 pm โดย jirawoot
ฟีเจอร์ Template MZC_
โดย Patipat ศ 23 ส.ค. 2019 4:59 pm บอร์ด M088 - ปฏิภัทร สารธรรม
1
9
ศ 23 ส.ค. 2019 5:12 pm โดย Patipat
B - ปรับ Template opencart
โดย jamepiyawat ศ 23 ส.ค. 2019 5:02 pm บอร์ด M084 - นายปิยวัช เชาว์วิมล
0
5
ศ 23 ส.ค. 2019 5:02 pm โดย jamepiyawat
ฟีเจอร์ Template MooZiiOpencart
โดย jamepiyawat ศ 23 ส.ค. 2019 4:42 pm บอร์ด M084 - นายปิยวัช เชาว์วิมล
2
12
ศ 23 ส.ค. 2019 5:36 pm โดย jamepiyawat
ใบแจ้งหนี้รูปแบบต่างๆ
โดย EyePornnipa ศ 23 ส.ค. 2019 3:51 pm บอร์ด M089 - นางสาวพรนิภา ราชธานี
1
14
ศ 23 ส.ค. 2019 7:31 pm โดย thatsawan
Q - อยากทำให้ฟอร์ม Login ขึ้นแค่ตอนที่ยังไม่กด Login ครับ
โดย Patipat ศ 23 ส.ค. 2019 3:37 pm บอร์ด Joomla Development
1
10
ศ 23 ส.ค. 2019 4:05 pm โดย tsukasaz
อยากทราบวิธีการแก้ไขปัญหา การส่งค่า ไป controller ของ phpbb ต้องกด 2 รอบ ถึงจะมีค่าที่ต้องการมาอสดง
โดย Ittichai_chupol ศ 23 ส.ค. 2019 3:33 pm บอร์ด Programming - PHP
0
8
ศ 23 ส.ค. 2019 3:33 pm โดย Ittichai_chupol
เข้าใช้คอมโพเน้นท์ไม่ได้
โดย alonglot ศ 23 ส.ค. 2019 3:33 pm บอร์ด Joomla Development
2
10
ศ 23 ส.ค. 2019 4:40 pm โดย alonglot
Q - อยากทราบวิธีทำ รายการ Category ครับ
โดย Patipat ศ 23 ส.ค. 2019 3:32 pm บอร์ด Joomla Development
0
5
ศ 23 ส.ค. 2019 3:32 pm โดย Patipat
สอบถาม ส่งค่าเป็นภาษาไทย ของ selenium ใน python 2.7 ไม่ได้ครับ
โดย chatee supasand ศ 23 ส.ค. 2019 3:24 pm บอร์ด Programming - C/C++ & java & Python
3
11
ศ 23 ส.ค. 2019 3:39 pm โดย tatiya
B - กด Generate Discount บนเมนู Customer Invoice ไม่ได้
โดย EyePornnipa ศ 23 ส.ค. 2019 2:16 pm บอร์ด M.D.Soft Co.,Ltd. - Tester
0
4
ศ 23 ส.ค. 2019 2:16 pm โดย EyePornnipa
Google ลบ 85 แอปที่ Trend Micro ตรวจพบ Adware ออกพ้นจาก Playstore
โดย aninthana ศ 23 ส.ค. 2019 12:08 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
10
ศ 23 ส.ค. 2019 12:08 pm โดย aninthana
Q - Module MDFiles Featured คืออะไรครับ
โดย Patipat ศ 23 ส.ค. 2019 11:08 am บอร์ด Joomla Development
2
15
ศ 23 ส.ค. 2019 11:25 am โดย Patipat
งานประจำวันที่ 23 สิงหาคม 2562
โดย jirawoot ศ 23 ส.ค. 2019 9:34 am บอร์ด M090 - นายจิระวุฒิ อัครลิขิตกุล
1
3
ศ 23 ส.ค. 2019 7:32 pm โดย jirawoot
งานประจำวันที่ 23 สิงหาคม 2562
โดย Patipat ศ 23 ส.ค. 2019 9:27 am บอร์ด M088 - ปฏิภัทร สารธรรม
1
5
ศ 23 ส.ค. 2019 7:04 pm โดย Patipat
งานประจำวันที่ 23 สิงหาคม 2562
โดย chatee supasand ศ 23 ส.ค. 2019 9:25 am บอร์ด MT33 - นายชาตรี สุภาแสน
1
5
ศ 23 ส.ค. 2019 7:24 pm โดย chatee supasand