آکادمی برنامه نویسان

لوگو

توضیحات دوره

 PHP یک زبان برنامه نویسی شی‌گرا است که در سال 1995 توسط Rasmus Lerdorf بوجود آمد PHP رایج ترین زبان اسکریپتی تحت وب است. به طوریکه، تا امروز  PHP بر روی ۳۵۰ میلیون وب سایت نصب شده و در حدود ۸۰٪ از کل وبسایت های جهان از این زبان استفاده میکنند که استفاده از آن روز به روز بیشتر می‌شود. PHP یک زبان برنامه نویسی سمت سرور می‌باشد.

عمومی‌ترین تعریف PHP این است که PHP مخفف کلمات Hypertext Pre-processor می‌باشد. شاید برایتان این سوال پیش بیاید که مخفف کلمات فوق HPP است. درست است.

فریمورک چیست ؟  فریمورک بستری را برای برنامه نویسان فراهم می‌کند که استفاده از کدهای از پیش ساخته شده را امکان‌پذیر می‌کند. در واقع می‌توان گفت هدف اصلی فریمورک ، راحتی کار برنامه‌ نویسان و اجتناب از نوشتن کدهای تکراری است. لاراول یکی از محبوب‌ترین فریمورک های PHP است. PHP فریمورکهای متعددی دارد که از جمله آن‌ها می‌توان به Yii ،Cakephp ،codeigniter ،Nette ،Symfonyاشاره کرد. در حال حاضر اکثر برنامه ‌نویسان تحت وبی که قصد توسعه برنامه‌های کاربردی وب بر پایه معماری سه لایه (MVC) با PHP دارند، استفاده از فریمورک لاراول را به دیگر فریمورک ها ترجیح می‌دهند.
لاراول (Laravel) یک فریمورک php مبتنی بر معماری MVC است که تیلور اوتول (Taylor Otwell) آن را ایجاد و توسعه بخشید. این فریمورک، بسیار قدرتمند، کدباز و رایگان است. 
برخی از مزایای استفاده از لاراول : 
   یادگیری و بروز رسانی آسان
   آسان سازی کارهای معمول در روند برنامه نویسی نظیر احراز هویت، روتینگ، جلسات و کَش
   بهره گیری از ریموت کامپوننت
   محدودکردن Eloquent با دستورات ساده
   بهبود سرعت و افزایش ۱۰۰ درصدی سرعت مسیرها
   دلپذیر کردن فرآیند توسعه برای توسعه دهندگان بدون به خطر انداختن قابلیتهای برنامه
استفاده از پکیج ها
   اجرای آزمایش های واحد متعدد با دستورات بسیار ساده
   دسترسی ساده به دیتابیس و سهولت در تغییر وکنترل کدها و بروز رسانی و توسعه برنامه ها
   استفاده از موتور Blade

پیش نیازها

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

 - HTML & CSS

مخاطبان این دوره

افرادی که علاقمند به این تکنولوژی قدرتمند هستند

سرفصل دوره

php

نصب و راه اندازی
 زبان برنامه نویسی چیست؟ چرا باید از آن استفاده کنیم
  معرفی زبان PHP و ذکر مزایا و معایب
  نصب ابزار مورد نیاز از قبیل ویرایشگر , سرور , مرورگر
 نوشتن Hello World ساده
 ترکیب HTML و PHP
  بررسی سینتکس زبان PHP
  ساختار زبان PHP
 چگونگی ایجاد کامنت 
  متغییر ها
 دستورات Echo و Print
 Data Types یا انواع داده
 Bool
  اعداد صحیح
  اعداد اعشاری
 اشیا
 رشته ها
 اعداد
 توابع
 آرایه ها
  ثابت ها
 ● Operators
 عملگرهای ریاضی
 عملگرهای انتساب
 عملگرهای بیتی
  عملگرهای مقایسه ای
  عملگرهای افزایشی و کاهشی
  عملگرهای منطقی
 عملگرهای رشته
 ● Conditions
 ساختار If
  ساختار If else
  ساختار Short If
 ساختار Break
 ساختار Continue
  ساختار Switch
 ● loops
  ساختار While
 ساختار Do While
  ساختار For
  ساختار Foreach
 توابع یا Functions
  آرگمان
  پارامتر
  مقدار بازگشتی
  توابع بی نام
  آرایه ها
  کار با آرایه ها
  مرتب سازی آرایه ها
  تبدیل آرایه به رشته
  تبدیل رشته به آرایه
  آرایه n بعدی 
  حذف عنصر از آرایه
  تعداد عناصر آرایه
 ● Super Globals
  GLOBALS
  SERVER
  REQUEST
  POST
  GET
  FILES
  ENV
  COOKIE
  SESSION
 ● Scope
  مفاهیم دیتابیس
  بررسی MYSQL
  آشنایی با phpmyadmin
  آشنایی با زبان  SQL
  روش های مرسوم اتصال به دیتابیس در PHP
  MYSQLi
  PDO
 ● GET & POST
 ● Include & Require
 ● Session & Cookies
  شروع پروژه عملی اول ( بلاگ )
  شی گرایی در PHP
  Class
   Object
  Property
  Method
  Const
   Static
  توابع سازنده و مخرب
  سطوح دسترسی در کلاس ها
  توابع مهم و ضروری در مباحث شی گرایی
  وراثت Inheritance
  Abstract
   Interface
  مفهومه کپسوله سازی
  Magical Methods
  Namespace 
   Use 
  Method Chain
  Trait
 ● ajax در PHP و مثال عملی
 ● Json در PHP
 ● Regex
  پروژه عملی دوم با ساختار شی گرا ( سایت خبری )
  معماری MVC
  دلایل استفاده از MVC و فریمورک
  ساختار کلی MVC
 معرفی پروژه عملی MVC تحت عنوان Tiny MVC
  تنظیمات وب سرور برای اجرای سیستم روتینگ
- ساخت سیستم روتینگ
  ساخت کنترلر ها و Trait ها
  سیستم View
  سیستم Model
  ساخت Autoload
  ساخت Helper های مفید

معرفی لاراول 

دلایل استفاده از فریمورک

  معرفی ابزار ها و نصب آن ها

  نصب Composer

  مروری بر معماری MVC

  نصب و راه اندازی اولین پروژه

  نصب با کمک Composer

  نصب با کمک Installer

  فایل env

  بررسی ساختار لاراول

  سیستم روتینگ در لاراول

  HTTP Verbs

  REST

  Route Verbs

  Route Handling

  Route Parameters

  Route Names

  Route Groups

  Prefixes

  Fallback Routes

  Namespace

  Name

  Redirects

  Aborting

  Response

  Json

  View and Routing System

  View Composer

 ● Controllers

  User Input

  Injection Dependencies Into Controller

  Resource Controllers

 ● CSRF Protection

  ارتباط بین View و Controller

  کار با فرم ها

 ● HTTP Exceptions

 ● HTTP Responses

  نحوه نوشتن تست در لاراول

  معرفی موتور Blade

  Echo

  Control Structures

  Conditions

  Loops

  Template Inheritance

  Section

  Show

  Yield

  Including Partials

  Stacks

  Components 

  Slots

  Blade Service Injection

  Blade Directives

  Custom Blade Directives

  دیتابیس

  تنظیمات اولیه اتصال به دیتابیس

  Migration

  Seeding

  Query Builder

  Transaction

  Eloquent

  Scopes

  Collections

  Serialization

  Eloquent Relationships

 ● Laravel Mix

  مقدمه ای بر Tinker

 ● Vaidation

  Rule 

  Form Request

 ● Model

  Route Model Binding

  Mass Assignment

  Accessors

  Mutators

  Casting

  Fillable

  Hidden

  PrimaryKey

  Table

  Guarded

 ● Authentication

  User Model 

  Auth Global

  Auth Controllers

  Logging Out

  Auth Middleware

  Blade Auth

 Guards

 ● Authorization

  ACL

 ● Service Provider

 ● Service Container

 ● API

  REST API

  مقدمه ای بر Passport

 ● Storage

 ● Sessions

 ● Cookies

 ● Queues

 ● Jobs

 ● Scheduler

 ● Helpers

  پروژه عملی ( بلاگ )

اهداف این آموزش

 

- یادگیری و تسلط کافی به زبان PHPو فریمورک laravel

- تسلط کافی به ساختار شی گرا

- تسلط کافی به معماری MVC