معماری HMVC و MVC در برنامه نویسی

معماری HMVC و MVC در برنامه نویسی

معماری MVC در برنامه نویسی از جمله پیشفرض های فریم های مختلف از جمله Codeigniter و Laravel است. در معماری MVC شما به صورت سه لایه برنامه نویسی می کنید. MVC مخفف کلمات model view controller می باشد. در این معماری شما کارهای مربوط به پایگاه داده را در بخش model، کارهای مربوط به سمت کاربر، یعنی قالب نویسی و … را در بخش view و کارهای ارتباط model و view را در بخش controller انجام می دهید. این سبک برنامه نویسی را به شخصه در codeigniter و Laravel تجربه کرده ام. با این روش کدهای شما بسیار منظمتر می شود و البته امنیت برنامه نویسی شما هم بسیار بالاتر خواهد رفت.

اما معماری HMVC کمی با MVC فرق می کند. از این معماری معمولا در پروژه های بزرگتر استفاده می شود. البته اگر بخواهید تجربه بهتری از برنامه نویسی داشته باشید معماری HMVC را در پروژه های معمولی و کوچکتر را هم به شما پیشنهاد میکنم. فرض کنید یک وب سایت شامل ده ها بخش است. در معماری MVC طبیعتا فایل های model، view و controller تمامی بخش ها در پوشه های مربوطه قرار می گیرد. با کمی گسترش پروژه خواهید دید که نظم دادن به تمامی این فایل ها بسیار سخت و برنامه نویسی هم طبیعتا سخت تر خواهد شد.

اما در معماری HMVC شما برای هر بخش در پوشه Module یک پوشه به نام همان بخش ایجاد میکنید. مثلا برای بخش کاربران یک پوشه به نام users ایجاد می کنید. در داخل همین پوشه هم پوشه های model، view و controller را ایجاد میکنید. با این معماری پوشه ها و فایل های شما بسیار منظمتر خواهد بود. از مزایای دیگر این معماری قابلیت استفاده دوباره از کدها می باشد. شما میتوانید با انتقال پوشه users به پروژه های دیگر از نوشته های قبلی هم دوباره استفاده کنید.

پس با مثالی که زده شد می توان گفت در معماری HMVC شما پروژه خود را ماژولار می کنید که مزیت بسیار بزرگی برای پروژه شما خواهد بود.

دیدگاهتان را بنویسید