8 คุณสมบัติการพัฒนาเว็บใหม่ที่ทรงพลังใน Laravel 8

8 คุณสมบัติการพัฒนาเว็บใหม่ที่ทรงพลังใน Laravel 8

Laravel เป็นเฟรมเวิร์ก PHP ที่ได้รับความนิยมมากที่สุด โดยมีเว็บไซต์มากกว่า 1.2 ล้านเว็บไซต์สร้างขึ้น นับตั้งแต่เปิดตัวในเดือนมิถุนายน 2554 Laravel ได้รับความสนใจจากนักพัฒนาเว็บจำนวนมาก โดยนำเสนอตัวเองว่าเป็นเฟรมเวิร์ก PHP ที่มีการใช้งานมากที่สุด





Laravel นำเสนอสภาพแวดล้อมการพัฒนาที่รวดเร็ว การรักษาความปลอดภัย และคำแนะนำสำหรับนักพัฒนาที่ดี สร้างและดูแลโดยผู้สร้าง Taylor Otwell Laravel ได้ทำการปรับปรุงซอฟต์แวร์อย่างต่อเนื่อง เป็นไปตามรูปแบบการกำหนดเวอร์ชันเชิงความหมายและปัจจุบันเป็นเวอร์ชัน 8.x





ต่อไปนี้เป็นคุณสมบัติใหม่แปดประการที่ต้องระวังใน Laravel 8





1. Laravel Jetstream

นี่คือคุณสมบัติใหม่ของแอพพลิเคชั่นนั่งร้านใน Laravel . มาพร้อมกับฟีเจอร์ที่พร้อมใช้งานทันที เช่น การติดตามเซสชัน การเข้าสู่ระบบ การลงทะเบียน การยืนยันอีเมล การตรวจสอบสิทธิ์แบบสองปัจจัย และการจัดการทีมที่เป็นตัวเลือก

Jetstream มีตัวเลือกนั่งร้านให้เลือกสองแบบ: Livewire และ Inertia



Livewire เป็นไลบรารีแบบตอบสนองและไดนามิกที่ให้ความสามารถในการหลีกเลี่ยงการใช้เฟรมเวิร์ก JavaScript เช่น Vue.js ใช้ภาษาเทมเพลต Blade เริ่มต้น Livewire ยังมอบความยืดหยุ่นในการเลือกระหว่างการออกจาก Blade หรือใช้ Vue.js

ความเฉื่อยใช้ Vue.js เป็นภาษาเทมเพลต





อ่านเพิ่มเติม: Vue.js คืออะไร?

มันให้พลังเต็มที่ของ Vue.js โดยไม่ต้องใช้การกำหนดเส้นทางฝั่งไคลเอ็นต์ หาก Vue เป็นภาษาเทมเพลตที่คุณต้องการ สแต็ก Inertia ก็เป็นตัวเลือกที่ดี





2. การโยกย้ายถิ่นฐาน

ในขณะที่คุณพัฒนาแอปพลิเคชัน การโยกย้ายของคุณอาจเพิ่มขึ้น คุณสามารถสควอชให้เป็นไฟล์ SQL ไฟล์เดียวเพื่อหลีกเลี่ยงการกระทบกระเทือน ตัวเลือกนี้มีให้สำหรับผู้ใช้ MySQL หรือ PostgreSQL

Laravel จะสร้างไฟล์สคีมาเมื่อคำสั่ง สคีมา:dump ถูกดำเนินการ เมื่อคุณพยายามย้ายฐานข้อมูลของคุณ ก่อนอื่น Laravel จะย้ายไฟล์ SQL ที่เชื่อมโยงกับสคีมาของคุณ หลังจากนั้น หากมีการย้ายข้อมูลที่ไม่ได้เป็นส่วนหนึ่งของสคีมา พวกเขาจะถูกดำเนินการ

3. Tailwind CSS

ตอนนี้ Laravel ใช้เฟรมเวิร์ก CSS ของ Tailwind เป็นตัวแบ่งหน้าเริ่มต้น Tailwind คือไลบรารี CSS ที่เน้นยูทิลิตี้แรกซึ่งมีคลาส CSS แบบใช้ครั้งเดียว ให้ประโยชน์จากการมีข้อมูลการจัดสไตล์ของคุณในที่เดียวแทนที่จะกระจายข้อมูล คุณสามารถใช้คลาสที่กำหนดไว้ล่วงหน้ากับเอกสาร HTML ของคุณได้โดยตรง

Tailwind ยังเสนอความสามารถในการสร้างการออกแบบที่ตอบสนองได้ นำเสนอระบบแรกสำหรับอุปกรณ์พกพาที่คล้ายกับ Bootstrap นี่หมายความว่ายูทิลิตี้ที่ไม่มีคำนำหน้าจะตอบสนองต่อขนาดหน้าจอทั้งหมดในขณะที่ยูทิลิตี้นำหน้าจะมีผลในบางจุด

Tailwind ยังมีฟีเจอร์โหมดเวลาแบบทันท่วงทีที่เปิดใช้งานเพื่อให้สไตล์ของคุณสร้างขึ้นตามความต้องการ แทนที่จะให้ทุกอย่างแสดงผลในเวลาบิวด์เริ่มต้น ทำให้เร็วกว่าการใช้ CSS ธรรมดา ข้อดีอีกประการของข้อเสนอนี้คือ คุณไม่จำเป็นต้องกำจัดรูปแบบการผลิตที่ไม่ได้ใช้ ทำให้คุณสามารถใช้รหัสของคุณในสภาพแวดล้อมที่หลากหลายได้

เป็นเรื่องที่น่าสนใจที่ทราบว่า Laravel Jetstream สร้างขึ้นโดยใช้ Tailwind

4. งานแบทช์

คุณสามารถใช้คุณลักษณะนี้เพื่อเรียกใช้งานเป็นกลุ่มในเวลาที่กำหนดและดำเนินการบางอย่างเมื่อการดำเนินการเสร็จสิ้น NS ซุ้มรถบัส จัดเตรียมวิธีแบทช์ที่ให้คุณส่งงานได้

คุณสามารถดำเนินการนี้ควบคู่ไปกับการโทรกลับอื่น ๆ เช่น จับ , แล้ว และ ในที่สุด เพื่อเพิ่มฟังก์ชันการทำงานให้กับงานของคุณ

use AppJobsProcessPodcast;
use AppPodcast;
use IlluminateBusBatch;
use IlluminateSupportFacadesBus;
use Throwable;
$batch = Bus::batch([
new ProcessPodcast(Podcast::find(1)),
new ProcessPodcast(Podcast::find(2)),
new ProcessPodcast(Podcast::find(3)),
new ProcessPodcast(Podcast::find(4)),
new ProcessPodcast(Podcast::find(5)),
])->then(function (Batch $batch) {
// All jobs completed successfully...
})->catch(function (Batch $batch, Throwable $e) {
// First batch job failure detected...
})->finally(function (Batch $batch) {
// The batch has finished executing...
})->dispatch();
return $batch->id;

ในการเริ่มต้น คุณต้องสร้างตารางการโยกย้ายที่จะมีข้อมูลเมตาของงาน เช่น อัตราความสำเร็จ ใช้คำสั่ง คิวช่าง php: batches-table เพื่อทำสิ่งนี้. แล้วก็ php ช่างฝีมือ migrate เพื่อโยกย้ายพวกเขา ขณะนี้คุณสามารถกำหนดงานแบบแบตช์ได้ แล้วจึงจัดส่งเมื่อพร้อม

5. คลาสโมเดลโรงงาน

อันดับแรก มาพูดถึงโรงงานต้นแบบกันก่อน สิ่งเหล่านี้ใช้เพื่อเพาะฐานข้อมูลของคุณด้วยข้อมูลทดสอบ ข้อมูลปลอมนี้มีความสำคัญต่อการทดสอบก่อนที่จะแทรกข้อมูลผู้ใช้จริง

ใน Laravel 8 คลาส Eloquent รุ่นเก่าได้ถูกแทนที่ด้วยโรงงานแบบคลาส ด้วยวิธีนี้ คุณสามารถจัดการสถานะของอ็อบเจ็กต์ได้โดยใช้เมธอด วิธีการเหล่านี้มักจะเรียกว่า สถานะ() เมธอดซึ่งกำหนดไว้ในคลาสโรงงานฐาน Laravel NS สถานะ() เมธอดใช้เป็นอาร์กิวเมนต์ ซึ่งเป็นฟังก์ชันที่จะรับอาร์เรย์ของแอตทริบิวต์ที่กำหนดให้กับโรงงาน

6. ปรับปรุงการบำรุงรักษา

ก่อนหน้านี้ Laravel มีรายการอนุญาตของที่อยู่ IP ที่คุณสามารถใช้เพื่อเข้าถึงแอปพลิเคชันในโหมดการบำรุงรักษา สิ่งนี้ถูกลบและแทนที่ด้วยวิธีแก้ปัญหาลับที่ง่ายกว่า คุณสามารถระบุโทเค็นบายพาสได้โดยใช้เครื่องหมาย ความลับ ตัวเลือก.

ขณะอยู่ในโหมดบำรุงรักษา คุณสามารถเข้าถึง URL แอปพลิเคชันของคุณ และ Laravel จะส่งคุกกี้บายพาสไปยังเบราว์เซอร์ของคุณโดยอัตโนมัติ เมื่อออกคุกกี้แล้ว คุณจะเข้าถึงแอปพลิเคชันได้ตามปกติเหมือนไม่ได้อยู่ในโหมดบำรุงรักษา

ผู้ใช้ของคุณอาจพบข้อผิดพลาดหากคุณใช้ PHP ช่างฝีมือลง ในระหว่างการปรับใช้ เพื่อหลีกเลี่ยงปัญหานี้ Laravel เสนอตัวเลือกในการแสดงผลมุมมองโหมดการบำรุงรักษาที่จะถูกส่งคืนทุกครั้งที่มีการร้องขอ คุณสามารถแสดงผลแม่แบบล่วงหน้าได้โดยใช้ตัวเลือกการเรนเดอร์บนคำสั่งลง

7. ผู้ช่วยทดสอบเวลา

ตอนนี้ Laravel มีความสามารถที่จะช่วยให้คุณจัดการเวลาปัจจุบันได้ คุณมีตัวเลือกในการใช้แอตทริบิวต์เวลาเป็นมิลลิวินาที ชั่วโมง วัน และอื่นๆ

วิธีย้ายโปรแกรมที่ติดตั้งไปยังไดรฟ์อื่น
public function testTimeCanBeManipulated()
{
// Travel into the future...
$this->travel(5)->milliseconds();
$this->travel(5)->seconds();
$this->travel(5)->minutes();
$this->travel(5)->hours();
$this->travel(5)->days();
$this->travel(5)->weeks();
$this->travel(5)->years();
// Travel into the past...
$this->travel(-5)->hours();
// Travel to an explicit time...
$this->travelTo(now()->subHours(6));
// Return back to the present time...
$this->travelBack();
}

ฟังก์ชันตัวช่วยเหล่านี้ทำให้งานของคุณเรียบร้อยและง่ายต่อการติดตามโดยการตั้งชื่อที่อธิบายวิธีการต่างๆ

8. ปรับปรุงการจำกัดอัตรา

การจำกัดอัตราช่วยให้คุณสามารถจัดการปริมาณการจราจรที่คุณได้รับในเส้นทางหรือกลุ่มของเส้นทางบางเส้นทาง สามารถทำได้โดยใช้ มิดเดิลแวร์เค้น . มิดเดิลแวร์เค้นจะใช้ชื่อของตัวจำกัดอัตราที่คุณต้องการใช้ในเส้นทาง รหัสคำขอ HTTP (429) จะถูกส่งคืนหากคำขอที่เข้ามาเกินอัตราที่กำหนด

ใน Laravel 8 ตัวจำกัดอัตราได้รับการสร้างขึ้นด้วยความยืดหยุ่นมากขึ้นในขณะที่ยังคงความเข้ากันได้แบบย้อนหลัง ฟังก์ชันเรียกกลับตัวจำกัดอัตราช่วยให้คุณสามารถสร้างขีดจำกัดอัตราที่เหมาะสมแบบไดนามิกซึ่งกำหนดขึ้นสำหรับผู้ใช้ที่รับรองความถูกต้องหรือคำขอที่เข้ามา

ช่วงเวลาที่น่าตื่นเต้นสำหรับ Laravel

Laravel นั้นเรียนรู้ได้ง่ายและมีคู่มือสำหรับนักพัฒนาอย่างละเอียดพร้อมตัวอย่างที่ทำตามได้ง่าย มีการแก้ไขข้อบกพร่องและโปรแกรมแก้ไขเกือบทุกสัปดาห์และเผยแพร่ที่สำคัญทุกปี (ประมาณเดือนกันยายน) หากคุณต้องการความช่วยเหลือเพิ่มเติม Laravel มีแพลตฟอร์ม Laracasts ซึ่งคุณสามารถขอความช่วยเหลือจากผู้เชี่ยวชาญได้ แพลตฟอร์มนี้ให้บทเรียนการพัฒนาเว็บแบบชำระเงิน

สำหรับนักพัฒนาเว็บ Laravel เป็นทักษะที่ต้องมี เป็นโอเพ่นซอร์ส ใช้งานได้ฟรี และมีชุมชนผู้ใช้มากกว่า 40,000 ราย เป็นเทคโนโลยีที่น่าติดตาม

แบ่งปัน แบ่งปัน ทวีต อีเมล 5 Web Frameworks ที่ควรค่าแก่การเรียนรู้สำหรับนักพัฒนา

สนใจเรียนรู้การพัฒนาเว็บขั้นสูงหรือไม่? หลีกเลี่ยงการเขียนโค้ดซ้ำๆ ใช้เฟรมเวิร์กการพัฒนาเว็บเหล่านี้แทน

อ่านต่อไป
หัวข้อที่เกี่ยวข้อง
  • การเขียนโปรแกรม
  • การพัฒนาเว็บ
  • การเขียนโปรแกรม PHP
เกี่ยวกับผู้เขียน เจอโรม เดวิดสัน(ตีพิมพ์บทความ 22 บทความ)

เจอโรมเป็นพนักงานเขียนบทที่ MakeUseOf เขาครอบคลุมบทความเกี่ยวกับการเขียนโปรแกรมและลินุกซ์ เขายังเป็นคนที่กระตือรือร้นในการเข้ารหัสและคอยติดตามดูอุตสาหกรรม crypto อยู่เสมอ

เพิ่มเติมจาก Jerome Davidson

สมัครรับจดหมายข่าวของเรา

เข้าร่วมจดหมายข่าวของเราสำหรับเคล็ดลับทางเทคนิค บทวิจารณ์ eBook ฟรี และดีลพิเศษ!

คลิกที่นี่เพื่อสมัครสมาชิก