Laravel 9 with Vue.js Workshop

Laravel 9 with Vue.js Workshop

หลักสูตรสำหรับผู้ที่มีพื้นฐานการพัฒนาเว็บแอพมาบ้างเล็กน้อย อาจเขียน php มาบ้างแล้ว แต่ยังไม่เคยใช้ framework มาก่อนหรือใช้ framework อื่นๆ อยู่แต่อยากลองมาศึกษาตัว Laravel ดูบ้างก็เป็นทางเลือกที่น่าสนใจ ด้วยความที่ Laravel นั้นถูกออกแบบมาให้เหมาะสำหรับการทำโปรเจ็กต์ตั้งแต่เล็กๆ ไปจนขนาดใหญ่ คนเดียวหรือทำงานร่วมกับทีมได้อย่างลงตัว

ตัว Laravel framework ยังทำงานร่วมกับ Vue.js ได้อย่างเหมาะเจาะเพราะทางผู้พัฒนาออกแบบมาให้รองรับกันตั้งแต่เริ่ม ดังนั้นผู้เริ่มต้นที่อยากทำเว็บแอพให้ครอบคลุมทั้งฝั่ง frontend และ backend การเลือกใช้ Laravel จึงเป็นตัวเลือกที่เหมาะสมและคุ้มค่าต่อการเรียนรู้ในการนำไปต่อยอดในอนาคต

สาขากรุงเทพฯ (ลาดพร้าว)
  • ยังไม่มีรอบเปิดอบรม (ลงชื่อจองไว้ได้)
  • การทำงานร่วมกับ 3rd Party
  • เข้าใจพื้นฐานการทำงานกับ Laravel 9
  • สามารถสร้าง Single Page Application (SPA) ด้วย Vue 3
  • เข้าใจการ Deployed โปรเจ็กต์บน Cloud hosting
  • ผู้ที่ต้องการพัฒนาเว็บแอพให้ครอบคลุมทั้งฝั่ง frontend และ backend 
  • IT Managers
  • Developers
  • กลุ่มผู้สนใจทั่วไป
  • สามารถใช้งานระบบคอมพิวเตอร์และอินเทอร์เน็ตได้
  • ความรู้พื้นฐานในการเขียน PHP & MySQL มาบ้าง
  • ความรู้พื้นฐานการในการออกแบบเว็บไซต์มาบ้าง
  • ความรู้พื้นฐานในการทำงานกับฐานข้อมูลมาบ้าง
  • 30 ชั่วโมง
  • ราคาปกติ 9,500 บาท / คน
  • โปรโมชั่นลด 10% เหลือ 8,550 บาท / คน
  • ราคาเหมาจ่าย (ผู้อบรมตั้งแต่ 10 คน) ตามแต่ตกลงกัน
  • ขอใบเสนอราคา

Module 1: บทนำ

  • แนะนำให้รู้จัก Laravel และแนวทางการเขียนแบบ MVC
  • แนะนำเว็บไซต์สำหรับอ้างอิง และเอกสารประกอบการใช้งาน

Module 2: การติดตั้ง Laravel 9 บนระบบปฏิบัติการ  Windows

  • การติดตั้ง PHP และปรับแต่งสภาพแวดล้อมสำหรับการทำงาน
  • การติดตั้ง IDE ที่ใช้เขียนโปรแกรม เช่น VS Code, Sublime Text หรือ ATOM
  • การติดตั้ง Composer
  • การติดตั้ง Git
  • แนะนำความสามารถและสิ่งใหม่ ๆ ใน Laravel 9
  • การเริ่มต้นสร้างโปรเจ็กต์ใหม่ด้วย Laravel 9
  • การตั้งค่า Virtual Hosts
  • การเปิดโปรเจ็กต์ Laravel 9 ใน IDE

Module 3: การติดตั้ง Laravel 9 บนระบบปฏิบัติการ MacOS

  • การติดตั้ง PHP และปรับแต่งสภาพแวดล้อมสำหรับการทำงาน
  • การติดตั้ง IDE ที่ใช้เขียนโปรแกรม เช่น VS Code, Sublime Text หรือ ATOM
  • การติดตั้ง Composer
  • การเริ่มต้นสร้างโปรเจ็กต์ใหม่ด้วย Laravel 9
  • การตั้งค่า Virtual Hosts
  • การเปิดโปรเจ็กต์ Laravel 9 ใน IDE

Module 4: พื้นฐานการทำงานกับ Routes ใน Laravel 9

  • แนะนำโครงสร้างของ Laravel 9
  • แนะนำการสร้างและทำงานกับ Routes
  • Routes แบบมีการกำหนด parameter
  • Routes แบบมีการจัด Group
  • การตั้งชื่อแฝงใน Routes และการนำไปใช้งาน

Module 5: พื้นฐานการทำงานกับ Controllers ใน Laravel 9

  • การสร้าง Controllers
  • รู้จัก Routing Controllers
  • การส่งข้อมูลผ่าน Controller
  • การสร้าง Resources Controller

Module 6: พื้นฐานการทำงานกับ Views ใน Laravel 9

  • สร้าง Views และ ปรับแต่งการทำงาน
  • การส่งข้อมูลผ่าน Views จาก Controller หรือ Routes
  • การแสดงผล Asset เช่น รูปภาพ ไฟล์ต่างๆ ใน Views

Module 7: การทำงานกับ Blade Templating ใน Laravel 9

  • การสร้าง Master layout template เพื่อไปใช้งานซ้ำ
  • แนะนำฟีเจอร์ใหม่ๆ ใน Blade template ของ Laravel 9

Module 8: พื้นฐานการทำงานกับฐานข้อมูล (database)

  • การตั้งค่าไฟล์ config ฐานข้อมูลเริ่มต้น
  • รู้จักการสร้างและทำงานกับ Migration
  • สร้าง Migration และลบทิ้ง
  • เพิ่มคอลัมน์ในตารางที่สร้างไว้แล้วด้วย Migration
  • คำสั่งเพิ่มเติมที่สำคัญใน Migration

Module 9: การเขียน Raw SQL Queries ใน Laravel 9

  • การเพิ่มข้อมูลใหม่ด้วย SQL
  • การอ่านข้อมูลมาแสดงผลด้วย SQL
  • การแก้ไขข้อมูลด้วย SQL
  • การลบข้อมูลด้วย SQL
  • การกำหนดเงื่อนไขการค้นหาข้อมูลด้วย SQL

Module 10: การทำงานกับ Database Eloquent /ORM

  • การอ่านข้อมูลมาใช้งาน (reading data)
  • การข้อมูลโดยกำหนดเงื่อนไขการค้นหาแบบต่างๆ
  • รูปแบบการค้นหาข้อมูลแบบอื่นๆ
  • การเพิ่มและบันทึกข้อมูล
  • การอัพเดทข้อมูลด้วย Eloquent
  • การลยข้อมูลด้วย Eloquent
  • การทำ Soft Deleting / Trashing
  • Retrieving deleted / trashed records
  • Restoring deleted / trashed records
  • Deleting a record permanently

Module 11: การทำงานกับฐานข้อมูล ที่มีความสัมพันธ์ในตาราง Eloquent Relationships

  • One to One relationship
  • The inverse relation
  • One to many relationship
  • Some random tips
  • Many to many relations
  • Querying intermediate table
  • Has many through relation
  • Polymorphic relation
  • Polymorphic relation the inverse
  • Polymorphic relation many to many
  • Polymorphic relation many to many - retrieving
  • Polymorphic relation many to many - retrieving owner

Module 12: การใช้ Eloquent เขียน CRUD (สร้าง อ่าน เพิ่ม ลบ) ในฐานข้อมูลที่มีความสัมพันธ์แบบต่างๆ

  • Database - Eloquent One to One Relationship CRUD
  • Database - Eloquent One to Many Relationship CRUD
  • Database - Eloquent Many to Many Relationship CRUD
  • Database - Eloquent Polymorphic Relationship CRUD
  • Database - Eloquent Polymorphic Many to Many Relationship CRUD

Module 13: การตรวจสอบฟอร์ม (Forms and Validations) ใน Laravel 9

  • Setting up views and routes
  • Setting the markup for create
  • Setting up the controller and view
  • Persisting data to database
  • Reading data
  • Showing individual posts and updating
  • Preparing the edit view and setting up the token
  • Editing records and redirecting
  • Deleting

Module 14: การทำงานกับ Model ใน Laravel 9

  • Dates
  • Accessors
  • Mutators
  • Query Scope

Module 15: รู้จักและทำงานกับ Middleware

  • Create a new laravel installation (challenge)
  • Registering a new middleware and using it
  • A more practical way to use middlewares roles, migration and relations setup
  • A more practical way to use middlewares Custom method

Module 16: รู้จักและทำงานกับ Sessions ใน Laravel 9

  • Setting and reading sessions
  • Global session function deleting
  • Flashing data

Module 17: การใช้งานฟังก์ชันส่งอีเมล์ (Sending Email / API) ใน Laravel 9

  • New laravel installation
  • Overview on mailgun
  • Email verification
  • Configuration
  • Sending email
  • Custom domain

Module 18: การใช้งาน Git, Github Version Control กับ Laravel 9

  • Git intro
  • Git Installation
  • Git commands
  • Branches
  • Creating repositories on Github
  • Git settings
  • Cloning and pushing to Github
  • Pull request and pulling changes
  • Contributing to the project

Module 19: Authentication (ทำระบบ Login, Register) ใน Laravel 9

  • Database connection and migrations
  • Login creation overview
  • Register creation overview
  • Retrieving authenticated user data

Module 20: Realtime Dashboard ด้วย Laravel 9 เชื่อมต่อกับ Google Firebase

  • Connect Laravel with Firebase Real Time Database
  • What is Firebase
  • Prerequisites
  • How to Setup Firebase
  • Generate the API Key
  • Laravel Composer Require
  • Firebase Database

Module 21: การเขียน API ด้วย Laravel 9

  • Database, Models, Migrations, Seeders, Queries, API testing, HTTP requests
  • Setting up database
  • Model and migrations
  • Routes and model all() method
  • API testing in Postman
  • Using Model::find() and mandatory/optional route parameters
  • Using Model::findOrFail() and Accept header
  • Making HTTP requests with Axios
  • CSS Flexbox and Bootstrap utility classes

Module 22: การทำงานร่วมกับ GraphQL ใน Laravel 9

  • GraphQL Basics
  • The Schema Definition Language - SDL
  • Types, Scalar Types and Custom Types
  • Input, Enum and Interface
  • Queries, Mutations and Subscriptions

Module 23: การสร้าง Blog APIs ร่วมกับการใช้งาน GraphQL

  • Database Design - Blog API
  • Database Implementation with Laravel - Blog APIs
  • Create SDL - Blog APIs
  • LightHouse Basics - Directives
  • LightHouse Basics - Types Directives
  • LightHouse Basics - Queries Directive
  • LightHouse Basics - Mutations Directives
  • LightHouse Basics - Using GraphQL Playground
  • LightHouse Basics - Authorization and Authentication

Module 24: พื้นฐานการใช้งาน Vue.js Framework ร่วมกับ Laravel

  • เริ่มต้นติดตั้ง Vue.js
  • เรียนรู้โครงสร้างโปรเจ็กต์ของ Vue.js กับ Laravel
  • เริ่มต้น
  • Fallback route in Laravel
  • Installing and setting up Vue Router
  • HTML5 history mode in Vue Router
  • Vue component registration (global/local) and Index component
  • Router Link component and routing inside a Vue application
  • Bootstrap, styling and Laravel Mix
  • v-bind, v-bind shorthand and named Vue routes

Module 25: Vue.js พื้นฐานเพิ่มเติม

  • Component , props, one way data flow, computed propertie ใน Vue.js
  • Conditional rendering ใน vue.js (v-fi)
  • List rendering ใน vue.js (v-else)
  • รู้การใช้ Vuex จัดการ State

Module 26: Workshop การสร้างระบบตะกร้าสินค้า (Ecommerce) ร่วมกับ Vue.js

  • การเตรียม Resource ต่างๆ
  • การขึ้น Project Laravel ใหม่
  • การติดตั้ง Vue.js เข้ามาใน Laravel
  • การเขียน API สำหรับเชื่อมต่อกับฐานข้อมูล
  • การเขียน Vue.js เรียกใช้งาน API
  • ทดสอบทำระบตะกร้าสินค้า การ Checkout แบบ SPA ด้วย Vue.js

Module 27: Workshop การสร้าง Blog ด้วย Laravel 9

  • การสร้างโปรเจ็กต์ใหม่
  • การ Config ค่าเริ่มต้น
  • การสร้างชุด Template
  • การ Config เชื่อมต่อกับฐานข้อมูล
  • การสร้างส่วนของ Post ใน Blog
  • การสร้างหมวดหมู่ (Category) ของ Blog
  • การสร้างและจัดการส่วนสื่อต่าง ๆ (Media) ใน blog
  • การเขียนส่วน Comment ของ Blog
  • ฟีเจอร์เสริมอื่นๆ เช่นการปรับแต่ง url การแบ่งหน้าเพจ การใส่รูปโปรไฟล์

Module 28: การนำโปรเจ็กต์ Laravel 9 ไปใช้งานจริงบน hosting (Deploying our app to a shared hosting account)

  • แนะนำการตั้งเริ่มต้น
  • SSH - WINDOWS OS
  • SSH - MAC OS
  • Module installation and PHP version
  • Composer install
  • Laravel installer
  • Uploading project
  • Configuring our environment file
  • Our app live on the web
  • Logging in
  • Displaying images
  • Deleting images
  • Setting up production settings
21/02/2023 15:02:20