ให้เรตสมาชิก: 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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
MJ Upgrade ค้างจังหวะดาวโหลด Joomla 3.9
โดย panas พ 10 มิ.ย. 2020 3:12 pm บอร์ด Joomla Development
3
90
ศ 12 มิ.ย. 2020 12:40 am โดย mindphp
ไม่สามารถสมัครสมาชิก Mindphp ได้
โดย bolue พ 10 มิ.ย. 2020 2:03 pm บอร์ด MindPHP News & Feedback
1
47
พ 10 มิ.ย. 2020 2:14 pm โดย mindphp
สิ่งที่เกิดขึ้นของ pgAdmin 4 v4.22
โดย bolue พ 10 มิ.ย. 2020 10:01 am บอร์ด Python Knowledge
0
42
พ 10 มิ.ย. 2020 10:01 am โดย bolue
netbeans เชื่อมกับ gitlab ไม่ได้
โดย bolue อ 09 มิ.ย. 2020 6:36 pm บอร์ด Programming - C/C++ & java & Python
1
55
พ 10 มิ.ย. 2020 10:04 am โดย bolue
การเก็บรักษาเอกสารทางบัญชี
โดย natthanit.r2538 อ 09 มิ.ย. 2020 6:32 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
37
อ 09 มิ.ย. 2020 6:32 pm โดย natthanit.r2538
เอกสารที่ใช้ประกอบในการลงบัญชี
โดย natthanit.r2538 อ 09 มิ.ย. 2020 4:48 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
1
35
อ 07 ก.ค. 2020 11:12 am โดย thatsawan
วิธีการ ลบตารางออกจากฐานข้อมูล Postgres ด้วย Module psycopg2
โดย bolue อ 09 มิ.ย. 2020 3:44 pm บอร์ด Python Knowledge
0
32
อ 09 มิ.ย. 2020 3:44 pm โดย bolue
วิธีการ สร้างตารางข้อมูลในฐานข้อมูล Postgres ด้วย Module psycopg2
โดย bolue อ 09 มิ.ย. 2020 3:21 pm บอร์ด Python Knowledge
0
97
อ 09 มิ.ย. 2020 3:21 pm โดย bolue
สอบถาม ผมจะทำ wedhook Messenger ของ fackbook ทำตามวิธี ของ Getting Started แล้วไม่ได้ครับ
โดย jirawoot อ 09 มิ.ย. 2020 2:39 pm บอร์ด Programming - C/C++ & java & Python
0
43
อ 09 มิ.ย. 2020 2:39 pm โดย jirawoot
วิธีการ ลบข้อมูลออกจากฐานข้อมูล Postgres ด้วย Module psycopg2
โดย bolue อ 09 มิ.ย. 2020 1:49 pm บอร์ด Python Knowledge
0
37
อ 09 มิ.ย. 2020 1:49 pm โดย bolue
วิธีการ แก้ไขข้อมูลในฐานข้อมูล Postgres ด้วย Module psycopg2
โดย bolue อ 09 มิ.ย. 2020 1:39 pm บอร์ด Python Knowledge
0
62
อ 09 มิ.ย. 2020 1:39 pm โดย bolue
วิธีการ เพิ่มข้อมูลลงฐานข้อมูล Postgres ด้วย Module psycopg2
โดย bolue อ 09 มิ.ย. 2020 1:30 pm บอร์ด Python Knowledge
0
35
อ 09 มิ.ย. 2020 1:30 pm โดย bolue
ngrok คืออะไร - ทำ Localhost เครื่องของผู้พัฒนาอยู่ในเครื่องสามารถ online บน internet ได้
โดย jirawoot อ 09 มิ.ย. 2020 11:37 am บอร์ด Python Knowledge
0
73
อ 09 มิ.ย. 2020 11:37 am โดย jirawoot
การบัญชีต้นทุน กับการบัญชีบัญชีบริหารเกี่ยวข้องกันอย่างไร
โดย natthanit.r2538 จ 08 มิ.ย. 2020 4:50 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
39
จ 08 มิ.ย. 2020 4:50 pm โดย natthanit.r2538
หนังสือรับรองหักภาษี ณ ที่จ่าย มีความสำคัญอย่างไร
โดย natthanit.r2538 จ 08 มิ.ย. 2020 3:13 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
41
จ 08 มิ.ย. 2020 3:13 pm โดย natthanit.r2538
วิธีการ ทำตาราง ด้วย bootstrap เพื่อความสวยงาม ทำตารางย่อตามหน้าจอได้
โดย bolue จ 08 มิ.ย. 2020 10:56 am บอร์ด Booststap Knowledge
0
66
จ 08 มิ.ย. 2020 10:56 am โดย bolue
ส่วนสำคัญของใบกำกับภาษี
โดย natthanit.r2538 ส 06 มิ.ย. 2020 5:56 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
67
ส 06 มิ.ย. 2020 5:56 pm โดย natthanit.r2538
วิธีการ ไล่สีพื้นหลัง โดย css
โดย bolue ส 06 มิ.ย. 2020 5:03 pm บอร์ด CSS Knowledge
1
70
จ 08 มิ.ย. 2020 1:52 pm โดย LEG
วิธีการสร้าง nav-tabs โดย bootstrap
โดย bolue ส 06 มิ.ย. 2020 4:52 pm บอร์ด Booststap Knowledge
0
76
ส 06 มิ.ย. 2020 4:52 pm โดย bolue
วิธีกดภาพ เล็กด้านข้าง แล้วโชว์ภาพใหญ่ ในพื้นที่ดำๆ โดยใช้ javascript
โดย bolue ส 06 มิ.ย. 2020 4:24 pm บอร์ด Jquery & Ajax Knowledge
0
63
ส 06 มิ.ย. 2020 4:24 pm โดย bolue