Laravel 8의 8가지 강력한 새 웹 개발 기능

Laravel 8의 8가지 강력한 새 웹 개발 기능

Laravel은 120만 개 이상의 웹사이트가 구축된 가장 인기 있는 PHP 프레임워크입니다. Laravel은 2011년 6월에 출시된 이후로 가장 많이 사용되는 PHP 프레임워크로 자처하며 많은 웹 개발자들의 주목을 받았습니다.





Laravel은 빠른 개발 환경, 보안 및 훌륭한 개발자 가이드를 제공합니다. 제작자 Taylor Otwell이 만들고 유지 관리하는 Laravel은 소프트웨어를 지속적으로 개선해 왔습니다. 의미론적 버전 관리 체계를 따르며 현재 버전 8.x입니다.





다음은 Laravel 8에서 주목해야 할 8가지 새로운 기능입니다.





1. 라라벨 제트스트림

이것은 의 새로운 애플리케이션 스캐폴딩 기능입니다. 라라벨 . 세션 추적, 로그인, 등록, 이메일 확인, 이중 인증 및 선택적 팀 관리와 같은 즉시 사용 가능한 기능이 함께 제공됩니다.

Jetstream은 Livewire와 Inertia의 두 가지 스캐폴딩 옵션을 제공합니다.



Livewire는 Vue.js와 같은 JavaScript 프레임워크 사용을 피할 수 있는 기능을 제공하는 반응형 동적 라이브러리입니다. 기본 블레이드 템플릿 언어를 사용합니다. Livewire는 또한 Blade를 떠나거나 Vue.js를 사용할 수 있는 유연성을 제공합니다.

Inertia는 Vue.js를 템플릿 언어로 사용합니다.





더 읽어보기: Vue.js가 무엇인가요?

클라이언트 측 라우팅 없이도 Vue.js의 모든 기능을 제공합니다. Vue가 선호하는 템플릿 언어라면 Inertia 스택이 좋은 선택입니다.





2. 마이그레이션 스쿼싱

애플리케이션을 개발할 때 마이그레이션이 누적될 수 있습니다. 혼란을 피하기 위해 단일 SQL 파일로 압축할 수 있습니다. 이 옵션은 MySQL 또는 PostgreSQL 사용자가 사용할 수 있습니다.

명령이 실행될 때 Laravel은 스키마 파일을 생성합니다. 스키마:덤프 실행됩니다. 데이터베이스를 마이그레이션하려고 할 때 Laravel은 먼저 스키마와 연결된 SQL 파일을 마이그레이션합니다. 그 후 스키마의 일부가 아닌 마이그레이션이 있으면 실행됩니다.

3. 테일윈드 CSS

Laravel은 이제 Tailwind CSS 프레임워크를 기본 페이지네이터로 사용합니다. Tailwind는 일회용 CSS 클래스를 제공하는 CSS 유틸리티 우선 라이브러리입니다. 스타일링 정보가 흩어져 있지 않고 한 곳에서 관리할 수 있다는 장점이 있습니다. 미리 정의된 클래스를 HTML 문서에 직접 적용할 수 있습니다.

Tailwind는 반응형 디자인을 구축하는 기능도 제공합니다. Bootstrap과 유사한 모바일 퍼스트 시스템을 제공합니다. 이는 접두사가 붙지 않은 유틸리티가 모든 화면 크기에서 응답하는 반면 접두사가 붙은 유틸리티는 특정 지점에서 적용됨을 의미합니다.

Tailwind는 또한 초기 빌드 시간에 모든 것을 렌더링하지 않고 주문형으로 스타일을 생성할 수 있는 Just-In Time 모드를 제공합니다. 이것은 일반 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 장인 대기열:배치 테이블 이것을하기 위해. 그리고 PHP 장인 마이그레이션 마이그레이션합니다. 이제 배치 가능한 작업을 정의한 다음 준비가 되면 디스패치할 수 있습니다.

5. 모델 팩토리 클래스

먼저 모델 팩토리에 대해 알아보겠습니다. 데이터베이스에 테스트 데이터를 시드하는 데 사용됩니다. 이 가짜 데이터는 실제 사용자 데이터가 삽입되기 전에 테스트 목적으로 중요합니다.

Laravel 8에서는 이전 Eloquent 모델 클래스가 클래스 기반 팩토리로 완전히 대체되었습니다. 이를 통해 이제 단순히 메서드를 사용하여 개체 상태를 관리할 수 있습니다. 이러한 메서드는 일반적으로 상태() Laravel 기본 팩토리 클래스에서 제공되는 메소드입니다. NS 상태() 메소드는 팩토리에 할당된 속성의 배열을 취하는 함수를 인수로 취합니다.

6. 개선된 유지보수

이전에 Laravel은 유지 관리 모드에서 애플리케이션에 액세스하는 데 사용할 수 있는 IP 주소의 허용 목록을 제공했습니다. 이것은 제거되고 더 간단한 비밀 솔루션으로 대체되었습니다. 다음을 사용하여 우회 토큰을 지정할 수 있습니다. 비밀 옵션.

유지 관리 모드에 있는 동안 애플리케이션 URL에 액세스할 수 있으며 Laravel은 자동으로 바이패스 쿠키를 브라우저에 전달합니다. 쿠키가 발행되면 유지 관리 모드가 아닌 것처럼 정상적으로 응용 프로그램에 액세스합니다.

PHP를 사용하면 사용자가 오류에 직면할 수 있습니다. 장인 다운 배포 중. 이를 피하기 위해 Laravel은 요청이 있을 때마다 반환되는 유지 관리 모드 보기를 렌더링하는 옵션을 제공합니다. down 명령의 렌더링 옵션을 사용하여 템플릿을 미리 렌더링할 수 있습니다.

7. 시간 테스트 도우미

이제 Laravel에는 현재 시간을 조작할 수 있는 기능이 포함되어 있습니다. 시간 속성을 밀리초, 시간, 일 등으로 활용할 수 있는 옵션이 있습니다.

Windows 10에서 Google 드라이브를 제거하는 방법
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은 배우기 쉽고 따라하기 쉬운 예제와 함께 정교한 개발자 가이드를 제공합니다. 거의 매주 버그 수정 및 패치를 제공하고 매년(9월경) 주요 릴리스를 제공합니다. 도움이 더 필요한 경우 Laravel은 전문가의 도움을 받을 수 있는 Laracasts 플랫폼을 제공합니다. 그러나 플랫폼은 유료 웹 개발 수업을 제공합니다.

웹 개발자에게 Laravel은 필수 기술입니다. 40,000명 이상의 사용자 커뮤니티에서 무료로 사용할 수 있는 오픈 소스입니다. 추적할 가치가 있는 기술입니다.

공유하다 공유하다 트위터 이메일 개발자가 배울 가치가 있는 5가지 웹 프레임워크

고급 웹 개발에 관심이 있으십니까? 반복적인 코드 작성을 피하십시오. 대신 이러한 웹 개발 프레임워크를 사용하십시오.

다음 읽기
관련 항목
  • 프로그램 작성
  • 웹 개발
  • PHP 프로그래밍
저자 소개 제롬 데이비슨(22개 기사 게재)

Jerome은 MakeUseOf의 스태프 라이터입니다. 그는 프로그래밍 및 Linux에 대한 기사를 다룹니다. 그는 또한 암호화폐 애호가이며 항상 암호화폐 산업을 주시하고 있습니다.

제롬 데이비슨이 참여한 작품 더보기

뉴스레터 구독

뉴스레터에 가입하여 기술 팁, 리뷰, 무료 전자책 및 독점 거래를 확인하십시오!

구독하려면 여기를 클릭하세요.