훌륭해요!
정답률 80%
문제별 결과
Laravel의 Pipeline은 미들웨어의 핵심 구현이다.
Pipeline 패턴으로 요청을 여러 미들웨어를 통과시킵니다. app(Pipeline::class)->through(...)->send(...)로 사용합니다.
Laravel에서 CSRF 보호는 모든 POST 요청에 기본 적용된다.
web 미들웨어 그룹에서 CSRF 검증이 자동 적용됩니다. @csrf로 토큰을 폼에 포함합니다.
Laravel에서 Event와 Listener는 동일한 클래스이다.
Event는 데이터를 담는 클래스이고, Listener는 이벤트를 처리하는 별도의 클래스입니다.
Laravel의 Eager Loading(with())은 N+1 쿼리 문제를 해결한다.
User::with("posts")->get()은 2개의 쿼리로 사용자와 게시글을 모두 로드합니다. Lazy Loading은 N+1 문제가 발생합니다.
Laravel에서 Blade 템플릿은 {{ }} 문법으로 변수를 출력한다.
{{ $name }}은 htmlspecialchars()로 이스케이프된 출력입니다. {!! !!}는 이스케이프 없이 출력합니다.
Laravel에서 모든 컨트롤러는 반드시 BaseController를 상속해야 한다.
컨트롤러는 기본 Controller 클래스를 상속하지 않아도 됩니다. 일반 클래스로도 사용 가능합니다.
Laravel에서 Migration은 데이터베이스 스키마의 버전 관리 도구이다.
마이그레이션으로 테이블 생성/수정을 코드로 관리하고, 팀 간 DB 스키마를 동기화합니다.
Laravel의 Eloquent ORM에서 all() 메서드는 테이블의 모든 레코드를 가져온다.
Model::all()은 해당 모델의 테이블에서 모든 레코드를 조회합니다.
Laravel에서 soft delete된 모델은 기본 쿼리에 포함된다.
soft delete된 모델은 기본 쿼리에서 자동으로 제외됩니다. withTrashed()로 포함할 수 있습니다.
Laravel에서 Eloquent의 softDeletes는 실제로 레코드를 삭제하지 않는다.
SoftDeletes 트레이트를 사용하면 deleted_at 컬럼에 시간을 기록하고, 쿼리에서 자동 제외합니다.