PHP

ساخت فریمورک مشابه لاراول با PHP

در دنیای وب همگی زبان برنامه نویسی PHP را میشناسند. این زبان یکی از زبان های محبوب برنامه نویسی سمت وب است که از گذشته تا به امروز پیشرفت های چشمگیری داشته است و فریم ورک های محبوبی دارد که میتوان از آنها استفاده کرد. یکی از محبوب ترین آنها، فریمورک لاراول است که از معماری MVC استفاده میکند. در این دوره قصد داریم تا با آموزش ساخت فریمورکی مشابه با Laravel به زبان PHP دانش شما عزیزان را بیافزاییم. ما در این دوره نحوه ساخت فریمورک با معماری MVC را به شما علاقه مندان آموزش میدهیم.

آخرین بروزرسانی در تاریخ ۱۴۰۲/۱۰/۰۷
08 : 28 : 08

قیمت دوره :

courseTitle

 زبان برنامه نویسی PHP چیست؟

زبان برنامه‌نویسی PHP یک زبان متن‌باز و مختص وب است که برای توسعه برنامه‌های وب ایجاد شده. PHP به عنوان یک زبان اسکریپتی سروری عمل می‌کند و بسیاری از وب‌سایت‌ها و برنامه‌های وب از آن برای انجام مجموعه‌ای از کارها استفاده می‌کنند.

 

استفاده های رایج از PHP

  • سیستم‌های مدیریت محتوا یا CMS: برای توسعه CMS‌ های معروف مانند  WordPress، Joomla و Drupal به کار می‌رود. این CMS‌ ها به وبمستران این امکان را می‌دهند تا وب‌سایت‌های داینامیک را بدون نیاز به مهارت‌های برنامه‌نویسی عمیق ایجاد کنند.
  • انجمن‌ها و وبلاگ‌ها: PHP برای ایجاد انجمن‌های آنلاین و وبلاگ‌ها استفاده می‌شود. ابزارهایی مانند phpBB برای ایجاد انجمن‌ها و WordPress برای ایجاد وبلاگ‌ها به عنوان نمونه‌هایی از استفاده از PHP در این زمینه‌ها مطرح هستند.
  • پایگاه داده و نهاده‌سازی: PHP به عنوان یک زبان پایگاه داده نیز مورد استفاده قرار می‌گیرد. از ابزارهای معروف مانند PHPMyAdmin برای مدیریت پایگاه داده MySQL استفاده می‌شود.
  • سیستم‌های مدیریت شبکه NMS: این زبان در سیستم‌های مدیریت شبکه استفاده می‌شود تا اطلاعات مربوط به شبکه را جمع‌آوری و نمایش دهد.
  • اپلیکیشن‌های خط فرمان یا CLI: زبان PHP می‌تواند برای ایجاد اسکریپت‌ها و ابزارهای خط فرمان برای اجرای وظایف خاص در سیستم عامل مورد استفاده قرار گیرد.

 

در دوره ساخت فریمورک مشابه لاراول با PHP چه چیزی یاد میگیرم؟

ما در این دوره آموزش PHP نخواهیم نداشت و به ساخت فریمورک مشابه لاراول میپردازیم. در فصل اول مروری بر مفاهیم شئ گرایی در PHP داریم و به بیان اصول کدنویسی صحیح می پردازیم.

در فصل دوم ما به پیاده سازی یک فریمورک اختصاصی بر مبنای معماری MVC می پردازیم. در این فصل یاد میگیرم که بدون مشکل و به راحتی هرچه تمام تر برای خودمان یک فریمورک حرفه ای، امن و اختصاصی بسازیم. همچنین چون این فریمورک را خودتان میسازید میتوانید به راحتی توسعه بدهید یا در شرکت های متفاوت از ساختار و سیستم کاری خودتان استفاده کنید. در فصل سوم ما به ساخت پروژه ای با همین فریمورک ساخته شده توسط خودمان می پردازیم.

 

معماری MVC

معماری نرم افزاری MVC یک الگوی طراحی نرم افزار است که به تقسیم بندی و سازماندهی برنامه های کامپیوتری شناخته میشود. این الگو مخفف نام های Model – View – Controller هست که در ادامه اجزای هر کدام را بررسی میکنیم.

  • مدل (Model): مدل نمایانگر داده و منطق برنامه است. این قسمت اطلاعاتی را که برنامه به آن نیاز دارد، مدیریت می‌کند. مسئولیت‌های مدل شامل ذخیره، بروزرسانی، حذف و درخواست اطلاعات از منبع داده می‌شود. این منبع داده ممکن است یک پایگاه داده، یک فایل یا سرویس‌های دیگر باشد. مدل مستقل از کنترلر و نما است و تغییرات در مدل بدون تغییر در بخش‌های دیگر اعمال می‌شود.
  • نما (View): نما نمایانگر وجه کاربری برنامه است. این قسمت مسئول نمایش اطلاعات به کاربر و دریافت ورودی از وی است. نما باید اطلاعات مورد نیاز خود را از مدل دریافت کند و آن را به کاربر نمایش دهد. همچنین، وقتی کاربر با آن تعامل می‌کند، این تغییرات باید به کنترلر منتقل شوند.
  • کنترلر (Controller): کنترلر به عنوان واسط بین مدل و نما عمل می‌کند و مسئولیت اجرای عملیات مربوط به تعامل کاربر با برنامه را دارد. کنترلر ورودی‌های کاربر را از نما دریافت می‌کند، این ورودی‌ها را تفسیر می‌کند و درخواست‌های مربوط به مدل را ایجاد می‌کند. سپس پس از دریافت پاسخ از مدل، نتیجه را به نما ارسال می‌کند تا به کاربر نمایش داده شود. کنترلر به تصمیم‌گیری در مورد انجام عملیات مرتبط با تعامل کاربر و منطق برنامه می‌پردازد.

این معماری نیز مانند همه معماری های نرم افزاری مزایا و معایب بخصوص خود را دارد که باهم آن را بررسی میکنیم.

 

مزایای معماری MVC:

  • جداسازی مسئولیت‌ها: این معماری به تقسیم بندی منطق برنامه، و تقسیم بندی وظایف مختلف برنامه را برعهده دارد که کمک میخواند کدها را در بخش های مختلف به راحتی استفاده کنیم.
  • قابلیت توسعه: به راحتی می‌توان به هر یک از اجزا تغییر داد و پروژه را توسعه داد.
  • قابلیت تست: امکان تست کناری (unit testing) برای هر یک از اجزا را فراهم می‌کند.
  • افزایش سرعت کدنویسی در این معماری
  • افزایش امنیت نرم افزار

 

معایب معماری MVC:

  • پیچیدگی اضافی: برای پروژه‌های کوچک، این معماری ممکن است اضافه وزن باشد.
  • ایجاد کد بی‌معنی: گاهی اوقات باید کدهای متناظر با نمایش ورودی و خروجی ایجاد کرد که تکراری و بی‌معنی باشند.

 

پیش نیاز های دوره ساخت فریمورک مشابه لاراول با PHP

این دوره بر روی زبان برنامه نویسی PHP آموزش داده میشود پس قطعا یکی از پیش نیازهای مهم این دوره داشتن دانش و درک کافی از PHP است. همچنین نیاز است تا دانش کافی از MySQL داشته باشید. باید اضافه کرد به دلیل اینکه می خواهیم یک پروژه را نیز از صفر تا صد بسازیم شما باید دانش کافی از HTML و CSS نیز برای طراحی اولیه پروژه داشته باشید.

 

هدف دوره ساخت فریمورک مشابه لاراول با PHP

یکی از کارهایی که توسعه دهندگان PHP همواره درگیر آن هستند. بعد از انکه کدهای خام PHP را یاد گرفتند متوجه خواهند شد که پیچیدگی کد ها ، کار توسعه را بسیار سخت میکند. معماری ها به اصولی نوشتن کد های ما بسیار کمک میکند و باعث میشود تا بتوانیم کدهای خواناتر بنویسیم و پیچیدگی های مرتبط با آن را کمتر کنیم. معماری MVC یکی از این معماری ها است که ما در این دوره آن را آموزش میدهیم. این معماری یکی از مهم ترین و کاربردی ترین معماری ها برای PHP است که هم در فریمورک های پرکاربرد زبان PHP مانند لاراول و کدایگنایتر (Codeigniter) و هم در ساخت فریمورک های اختصاصی استفاده می شود. 

مشاهده بیشتر

سرفصل های دوره

مقدمات

ساخت فریمورک

نظرات دانشجویان

مجید کاظمی

مجید کاظمی

سلام ممنون از دوره فوق العاده خوبتون. منتظر قسمت های بعدی دوره هستیم.

 علی   برازنده

علی برازنده

به به چه دوره ای 😍

 M. Ahmadi

M. Ahmadi

با دیدن این دوره علاوه بر اینکه به صورت عمیق تری با مفاهیمی مثل شی گرایی و تا حدودی دیزاین پترن ها و ... آشنا می شویم، دید بهتری نسبت به فریمورک های موجود مانند لاراول پیدا خواهیم کرد. تشکر فراوان برای ساخت این آموزش

سوالات متداول

معماری MVC چیست؟

این دوره چه پیش نیازهایی دارد؟

مزایای یک فریمورک چیست؟