HMVC-สำหรับพัฒนาเว็บไซต์ขนาดใหญ่

ทำเว็บไซต์ขนาดใหญ่ ด้วย HMVC Codeigniter

ทำเว็บไซต์ขนาดใหญ่ ด้วย HMVC

ทำเว็บไซต์ขนาดใหญ่ ด้วย HMVC Design Pattern

คำว่า Design Pattern ในเชิงการพัฒนาเว็บไซต์ หมายถึง รูปแบบวิธีการเขียนโค๊ดที่ถูกพัฒนาขึ้นมาเพื่อแก้ปัญหาโดยรวมในการพัฒนาเว็บไซต์ ปัจจุบัน Design Pattern ที่ได้รับความนิยมอย่างมากคือ MVC Design Pattern ( Model, View, Controller ) การพัฒนาเว็บไซต์โดยใช้หลักการ MVC สามารถเพิ่มประสิทธิภาพและแก้ปัญหาการพัฒนาเว็บไซต์ได้หลายส่วน ทำให้การพัฒนาเว็บไซต์มีความยืดหยุ่นทั้งในแง่ของการพัฒนาต่อยอด และการทำงานเป็นทีมของกลุ่มนักพัฒนาเอง

แนวคิดแบบ MVC เพียงพอสำหรับการพัฒนาเว็บไซต์ขนาดใหญ่ได้ แต่ถ้าในเว็บไซต์นั้น มีเว็บไซต์ขนาดใหญ่ซ้อนอยู่ข้างในอีกทีหนึ่ง ตัวอย่างเช่น โปรแกรม ERP ( Enterprise Resource Planning ) โปรแกรมวางแผนทรัพยากรทางธุรกิจขององค์กร ซึ่งแน่นอนว่าเป็นระบบขนาดใหญ่ ในโปรแกรมจะประกอบด้วย Modules ขนาดใหญ่ โดยส่วนใหญ่ก็จะมี Modules ประมาณรายการด้านล่าง

  • Sale & CRM
  • Accounting & Finance
  • Purchase
  • Warehouse Management
  • Project Management
  • Human Resource
  • อื่น ๆ

ที่ลิสต์มาด้านบนเป็นแค่ส่วนหนึ่งครับ ERP นั้นมีอีกหลาย Modules จะเห็นได้ว่าทุก Modules ด้านบนมีความสำคัญและถ้าพัฒนาออกมาเป็น Web Apps ต้องเป็นเว็บไซต์ขนาดใหญ่ทุก Modules แน่นอน แต่ ERP คือการมี Modules นั้นอยู่ในตัวเองทั้งหมด

HMVC ( Hierarchical Model View Controller ) เกิดมาเพื่อจัดการเว็บไซต์ขนาดใหญ่แบบนี้ครับ มองภาพแบบเข้าใจง่าย ๆ เลยคือ เว็บไซต์ที่มีเว็บไซต์ขนาดใหญ่หลาย ๆ เว็บไซต์ซ้อนอยู่ภายใน HMVC ก็คือ การมีโครงสร้างแบบ MVC หลาย ๆ ตัว ซ้อนอยู่ข้างใน MVC ตัวหลักนั่นแหล่ะครับ

ในเมื่อ HMVC สามารถมีหลาย ๆ MVC เราก็สามารถจัดการกับ 1 Modules เท่ากับ 1 MVC ได้เลย

รูปตัวอย่างโครงสร้างการพัฒนาระบบ ERP โดยใช้ HMVC


พัฒนาเว็บไซต์ขนาดใหญ่ด้วย hmvc


จากตัวอย่างรูปด้านบน ซึ่งเป็น HMVC ของ Codeigniter framework จะสังเกตุว่า โครงสร้างหลักของตัวเฟรมเวิร์คจะยังคงมี Model, view, controller ที่สามารถใช้งานได้เหมือนเดิม และเพิ่มโฟลเด้อ modules เข้ามาและภายใน จะประกอบไปด้วยโมดูลย่อย ๆ ที่มีโครงสร้างการเขียนแบบ MVC

จุดเด่นของการใช้ HMVC ในการพัฒนาเว็บไซต์คือ เราสามารถแยกการพัฒนาแต่ละโมดูลออกจากกันโดยสิ้นเชิงได้เลย โปรแกรมเมอร์คนหนึ่งอาจจะพัฒนาโมดูล CRM อีกคนพัฒนา POS และอีกคนพัฒนา Warehouse หลังจากพัฒนาเสร็จสามารถโยนโมดูลหรือ MVC ตัวนั้นเข้ามาที่ MVC หลักได้เลย

กระทู้ใกล้เคียง

ติดตั้งใช้งาน Omise ระบบชำระเงินออนไลน์... Omise อ่านว่า โอมิเซะ คือ ระบบชำระเงินออนไลน์ ( Online Payment Gateway ) รองรับช่องทางการชำระเงินที่หลากหลาย บัตรเครดิต / เดบิต  Truemoney W...
วิธีตั้งค่า Email ใน Android ภายใต้โดเมนตัวเอง ( C... เราอาจจะคุ้นเคยกับการใช้บริการอีเมลผ่านผู้ให้บริการเจ้าใหญ่ ๆ อย่าง Gmail, Hotmail, Yahoo หรือ Sanook เป็นต้น แต่เมื่อเราทำเว็บไซต์ และเปิดใช...
ข้อดีของการใช้เครื่อง Mac หรือ Macintosh... Security เสถียรและปลอดภัย เครื่อง Mac ถึงจะราคาสูง แต่ก็แลกมาด้วยความเสถียร และความปลอดภัย ที่สูงด้วยเช่นกัน โอกาสที่คุณจะติดไวรัสจากการใช้เครื่อ...
วิธีใช้ Bootstrap แสดงผล Youtube Video Embed แบบ R... การแสดงผลวีดีโอของ Youtube ในเว็บไซต์นั้น Embed Code ของวีดีโอที่ได้มา เราจะได้มาในรูปแบบของ iframe ซึ่งทำให้จัดการขนาดที่เหมาะสมแต่ละน่าจอค่อนข้...