Site icon บริษัท โค๊ดบี จำกัด

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

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

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

<h2>ทำเว็บไซต์ขนาดใหญ่ ด้วย HMVC<&sol;h2>&NewLine;<p>&NewLine;<strong>ทำเว็บไซต์ขนาดใหญ่ ด้วย HMVC Design Pattern<&sol;strong><&sol;p>&NewLine;<p>คำว่า Design Pattern ในเชิงการพัฒนาเว็บไซต์ หมายถึง รูปแบบวิธีการเขียนโค๊ดที่ถูกพัฒนาขึ้นมาเพื่อแก้ปัญหาโดยรวมในการพัฒนาเว็บไซต์ ปัจจุบัน Design Pattern ที่ได้รับความนิยมอย่างมากคือ MVC Design Pattern &lpar; Model&comma; View&comma; Controller &rpar; การพัฒนาเว็บไซต์โดยใช้หลักการ MVC สามารถเพิ่มประสิทธิภาพและแก้ปัญหาการพัฒนาเว็บไซต์ได้หลายส่วน ทำให้การพัฒนาเว็บไซต์มีความยืดหยุ่นทั้งในแง่ของการพัฒนาต่อยอด และการทำงานเป็นทีมของกลุ่มนักพัฒนาเอง <&excl;--more--><&sol;p>&NewLine;<p>แนวคิดแบบ MVC เพียงพอสำหรับการพัฒนาเว็บไซต์ขนาดใหญ่ได้ แต่ถ้าในเว็บไซต์นั้น มีเว็บไซต์ขนาดใหญ่ซ้อนอยู่ข้างในอีกทีหนึ่ง ตัวอย่างเช่น โปรแกรม ERP &lpar; Enterprise Resource Planning &rpar; โปรแกรมวางแผนทรัพยากรทางธุรกิจขององค์กร ซึ่งแน่นอนว่าเป็นระบบขนาดใหญ่ ในโปรแกรมจะประกอบด้วย Modules ขนาดใหญ่ โดยส่วนใหญ่ก็จะมี Modules ประมาณรายการด้านล่าง<&sol;p>&NewLine;<ul>&NewLine;<li>Sale &&num;038&semi; CRM<&sol;li>&NewLine;<li>Accounting &&num;038&semi; Finance<&sol;li>&NewLine;<li>Purchase<&sol;li>&NewLine;<li>Warehouse Management<&sol;li>&NewLine;<li>Project Management<&sol;li>&NewLine;<li>Human Resource<&sol;li>&NewLine;<li>อื่น ๆ<&sol;li>&NewLine;<&sol;ul>&NewLine;<p>ที่ลิสต์มาด้านบนเป็นแค่ส่วนหนึ่งครับ ERP นั้นมีอีกหลาย Modules จะเห็นได้ว่าทุก Modules ด้านบนมีความสำคัญและถ้าพัฒนาออกมาเป็น Web Apps ต้องเป็นเว็บไซต์ขนาดใหญ่ทุก Modules แน่นอน แต่ ERP คือการมี Modules นั้นอยู่ในตัวเองทั้งหมด <&sol;p>&NewLine;<p><strong>HMVC &lpar; Hierarchical Model View Controller &rpar;<&sol;strong> เกิดมาเพื่อจัดการเว็บไซต์ขนาดใหญ่แบบนี้ครับ มองภาพแบบเข้าใจง่าย ๆ เลยคือ เว็บไซต์ที่มีเว็บไซต์ขนาดใหญ่หลาย ๆ เว็บไซต์ซ้อนอยู่ภายใน HMVC ก็คือ การมีโครงสร้างแบบ MVC หลาย ๆ ตัว ซ้อนอยู่ข้างใน MVC ตัวหลักนั่นแหล่ะครับ<&sol;p>&NewLine;<p>ในเมื่อ HMVC สามารถมีหลาย ๆ MVC เราก็สามารถจัดการกับ 1 Modules เท่ากับ 1 MVC ได้เลย <&sol;p>&NewLine;<p><em><strong>รูปตัวอย่างโครงสร้างการพัฒนาระบบ ERP โดยใช้ HMVC<&sol;strong><&sol;em><br &sol;>&NewLine;<&sol;br><br &sol;>&NewLine;<img src&equals;"https&colon;&sol;&sol;www&period;codebee&period;co&period;th&sol;labs&sol;wp-content&sol;uploads&sol;2018&sol;09&sol;HMVC-codebee-1&period;jpg" alt&equals;"พัฒนาเว็บไซต์ขนาดใหญ่ด้วย hmvc" &sol;><br &sol;>&NewLine;<&sol;br><br &sol;>&NewLine;จากตัวอย่างรูปด้านบน ซึ่งเป็น HMVC ของ Codeigniter framework จะสังเกตุว่า โครงสร้างหลักของตัวเฟรมเวิร์คจะยังคงมี Model&comma; view&comma; controller ที่สามารถใช้งานได้เหมือนเดิม และเพิ่มโฟลเด้อ modules เข้ามาและภายใน จะประกอบไปด้วยโมดูลย่อย ๆ ที่มีโครงสร้างการเขียนแบบ MVC <&sol;p>&NewLine;<p>จุดเด่นของการใช้ HMVC ในการพัฒนาเว็บไซต์คือ เราสามารถแยกการพัฒนาแต่ละโมดูลออกจากกันโดยสิ้นเชิงได้เลย โปรแกรมเมอร์คนหนึ่งอาจจะพัฒนาโมดูล CRM อีกคนพัฒนา POS และอีกคนพัฒนา Warehouse หลังจากพัฒนาเสร็จสามารถโยนโมดูลหรือ MVC ตัวนั้นเข้ามาที่ MVC หลักได้เลย<&sol;p>&NewLine;

Exit mobile version