[laravel] blade란 무엇인가?

viram·2022년 11월 30일
0

Blade

목록 보기
1/2
  • 블레이드는 라라벨에서 제공하는 뷰(템플릿) 엔진, 하나의 새로운 언어이자 일종의 html이다.
  • html을 비롯한 일반 웹 엔진에서는 PHP코드를 사용할 수 없다.
  • 하지만 라라벨은 PHP프레임워크인만큼, 라라벨에서 제공하는 블레이드에는 PHP를 포함할 수 있고 이것이 성능의 저하를 가져오지 않는다.
  • 흔히들 html은 프로그래밍 언어가 아니라고 한다. 나는 이 논쟁이 그렇게 중요한 논쟁은 아니라고 생각하지만, 블레이드를 이해하는 데에 html과 비슷하다는 컨셉이 도움이 되는 것일 뿐 블레이드는 html과 달리 프로그래밍 언어에 필요한 튜링 완전성(Turing complete)을 가지고 있다.
    • 튜링 완전성은 무엇인가? 튜링 기계가 할 수 있는 것을 구현할 수 있다면 그것은 튜링 완전성이 있다고 한다. 이를 이해하기 위해서는 튜링 기계와 그와 동치인 오토마타를 상상해보면 된다. 하지만 간단히 말해서, 그냥 로직이 있는 것이라고 가볍게 이해해도 무방하다.
  • 즉 블레이드란 html과 비슷하고 PHP변환에 최적화된 언어를 PHP로 변환해주는 엔진이다.
  • 사용방법은 html과 비슷하지만 블레이드만의 특별한 문법들이 있다. 이를테면 {{}}로 감싸서 PHP의 변수를 그대로 이용할 수 있다. @if @else같은 문법도 있다. 이는 라라벨 공식문서에서 자세히 설명해 주고 있다.
  • html에서처럼
  • 이 블레이드에서 더 나아가 동적인 인터페이스를 만들고 싶다면 라라벨 라이브와이어composer 를 통해 설치한 뒤 블레이드 내에 라이브와이어가 시작된다는 선언을 해 주면 된다. 이는 라이브와이어 공식 문서에서 잘 설명해 주고 있다.
profile
취미로 번역하고 직업으로 개발합니다

0개의 댓글