loading...

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

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

قیمت: رایگان

X
08 : 28 : 08
42 جلسه
2 فصل
2 سال پشتیبانی

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

 زبان برنامه نویسی 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) و هم در ساخت فریمورک های اختصاصی استفاده می شود. 

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

مقدمات
  • مروری بر شی گرایی - ساخت آبجکت از کلاس

  • مروری بر شی گرایی - کپسوله سازی

  • مروری بر شی گرایی - متد جادویی set و get

  • مروری بر شی گرایی - ارث بری

  • مروری بر شی گرایی - متد جادویی construct

  • مروری بر شی گرایی - پلی مورفیسم

  • کلاس های انتزاعی و اینترفیس ها

  • متدها و اتربیوت های استاتیک

  • بررسی مفهوم namespace

  • بررسی مفهوم Trait

  • تکمیل اطلاعات به صورت زنجیره وار

  • مروری بر اصول سالید

  • اصل Single Responsibility

  • اصل open closed principle

  • اصل Liskov substitution

  • اصل Interface Segregation

  • اصل Dependency Inversion

  • دیزاین پترن چیست

  • دیزاین پترن Singlton

  • دیزاین پترن Facade

  • دیزاین پترن Observer

  • دیزاین پترن Chain Of Responsibility

  • دیزاین پترن Builder

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

  • ساخت بخش تنظیمات

  • در مورد htaccess

  • لود پروژه با composer

  • سیستم روتینگ - بخش اول

  • سیستم روتینگ - بخش دوم

  • سیستم روتینگ - بخش سوم

  • اتصال به دیتابیس

  • ساخت QueryBuilder بخش اول

  • ساخت QueryBuilder بخش دوم

  • ساخت QueryBuilder بخش سوم

  • ساخت Model در ORM

  • ساخت collection بخش اول

  • ساخت collection بخش دوم

  • ساخت متد insert و update

  • ساخت متد find

  • ساخت متد get و delete

  • ساخت متد where - limit - orderBy

  • تست ORM

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

    • PHP
    • HTML
    • CSS

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

    مجید کاظمی

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

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

     علی   برازنده

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

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

     M. Ahmadi

    M. Ahmadi | دانشجوی دوره ساخت فریمورک مشابه لاراول با PHP

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

    Hassan Hassanzadeh

    Hassan Hassanzadeh | دانشجوی دوره ساخت فریمورک مشابه لاراول با PHP

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

     hosein  pormofrad

    hosein pormofrad | دانشجوی دوره ساخت فریمورک مشابه لاراول با PHP

    استاد ممنون بابت دوره خوب و مفیدتون یکی از بهترین دورهایی بود که دیدم

    مجید کاظمی

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

    سلام و عرض خسته نباشی خدمت استاد محترم ممنون از دوره فوق العاده خوبتون

    مدرس دوره

    سید ایمان هاشمی


    از سال 94 به برنامه‌نویسی علاقمند شدم و الان بیشتر از 8 ساله که در زمینه برنامه نویسی وب فعالیت میکنم. به تدریس علاقه دارم و دوست دارم دانشی که در این راه بدست آوردم را در اختیار دیگران هم قرار بدم.

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

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

    یک معماری برنامه نویسی است که نرم افزار را به سه بخش مجزا تقسیم می‌کند. این بخش‌ها عبارت اند از Model برای ارتباط با پایگاه داده، View برای ایجاد یک رابط کاربری برای نمایش و تغییر در داده‌های پایگاه داده و Controller برای پردازش درخواست‌های کاربر.

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

    لازم است قبل از شروع این دوره با زبان برنامه نویسی php آشنایی کافی داشته باشید.

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

    یک فریمورک کدهای سفارشی نوشته شده توسط افراد خاصی هستند که در چهارچوب قوانین مشخص قرار دارند. این به توسعه دهندگان اجازه میده تا افزونه ها و نرم افزارهای دلخواهشون رو با زبان PHP و توسط این کتابخانه ها بنویسند.