Laravel 기초지식

Laravel 이란


Laravel은 무료로 사용할 수 있는 PHP 웹 애플리케이션 프레임워크로, 웹 애플리케이션을 개발하기 위한 오픈 소스입니다. 웹 어플리케이션을 구축하는데 필요한 편리하고 강력한 기능을 제공하여, 매우 적은 작업량으로 스피디하게 개발을 실시할 수 있는 것이 큰 특징입니다.

Laravel은 마이크로소프트의 .NET 개발에도 참여했던 테일러 오트웰(Taylor Otwell)씨에 의해 2011년에 출시되었습니다. 선진적인 기능이 많이 탑재되어 있어 매우 사용하기 쉽기 때문에 인기가 끓어오르고, PHP 프레임워크의 대표격으로서 단번에 보급했습니다.

PHP의 다른 프레임워크와 비교해도, 매우 높은 관심을 모으고 있는 것을 알 수 있습니다.

Laravel은 PHP 개발자들 사이에서 매우 인기가 높아져, 현대적이고 생산적인 PHP 웹 개발을 위한 선택지로 자리 잡게 되었습니다.

 

 

 

 

Laravel의 특징


Eloquent ORM:

데이터베이스와의 상호 작용을 쉽게 만들어주는 ORM(Object-Relational Mapping)을 제공합니다. O/R매퍼인 Eloquent를 통해 SQL 쿼리를 직접 작성하지 않고도 데이터베이스를 다룰 수 있습니다.

Blade 템플릿 엔진:

Laravel은 간편하고 직관적인 Blade 템플릿 엔진을 제공하여 뷰를 만들고 관리하는 작업을 편리하게 수행할 수 있습니다.

미들웨어 및 라우팅:

미들웨어를 통해 HTTP 요청을 처리하고 라우팅을 통해 요청을 적절한 컨트롤러로 라우팅할 수 있습니다.

유연한 마이그레이션 시스템:

데이터베이스 스키마를 버전 관리하고 업데이트하는 데 도움이 되는 마이그레이션 기능을 제공합니다.

Composer와 통합된 패키지 관리:

패키지 관리 도구인 Composer를 이용하여 라이브러리 및 외부 패키지를 손쉽게 관리할 수 있습니다.

유연한 인증 및 권한 부여 시스템:

사용자 인증 및 권한 부여를 구현하기 위한 기능들을 쉽게 사용할 수 있습니다.

테스트 지원:

PHPUnit 등을 이용하여 테스트 코드를 작성하고 실행할 수 있는 기능을 제공합니다.

그 외의 특징:

MVC 아키텍처를 채용하여 역할별로 분업하여 기능 개발을 실시하기 쉽다.
CoC(Convention over Configuration: 설정보다 규약)의 사상에 의해 적은 기술로 코드를 쓸 수 있다.
Artisan 커멘드에 의해, 각종 파일의 설정이나 코드의 생성, 데이타베이스 조작등을 코드를 쓰지 않고 커멘드만으로 실행할 수 있다
Vue.js, React 등 최신 프런트 엔드 기술과의 친화성도 높음

 

 

Laravel 공식사이트


https://laravel.com/

 

 

 

프레임워크란


프레임워크(Framework)는 소프트웨어 개발을 위한  구조, ‘틀’이나 ‘뼈대’라는 의미의 영어입니다. 특히 웹 어플리케이션 개발에 있어서, 그 토대로서 기능시키는 소프트웨어를 웹 어플리케이션 프레임워크라고 부릅니다. 웹 어플리케이션 프레임워크는 기본적인 구조와 기능을 미리 제공합니다. 이러한 프레임워크를 사용하면 개발자는 필요한 기능을 처음부터 구현하는 대신 이미 구축된 틀 안에서 원하는 기능을 추가하거나 수정하여 쉽고 빠르게 개발할 수 있습니다. 프레임워크라는 호칭은 웹 애플리케이션 프레임워크를 의미합니다.

 

프레임워크의 주요 장점

 

생산성 향상:

미리 구현된 기능과 구조를 사용하므로 개발자는 처음부터 기능을 만들 필요가 없어집니다. 이로써 생산성이 향상되고 프로젝트의 개발 기간이 단축될 수 있습니다.

일관성 있는 코드:

프레임워크는 특정한 규칙과 구조를 제공하기 때문에 개발자들이 일관된 코드를 작성할 수 있습니다. 이는 유지 보수와 협업을 쉽게 만듭니다.

보안 강화:

많은 프레임워크들은 보안에 대한 기본적인 사항들을 내장하고 있어, 보안 측면에서도 안정성을 확보할 수 있습니다.

확장성:

프레임워크는 일반적으로 모듈화되어 있어 필요한 기능을 쉽게 추가하거나 변경할 수 있습니다.

 

 

라이브러리와의 차이

 

미리 만들어진 외부의 프로그램을 이용할 때에 「라이브러리를 이용한다」라고 말하는 일이 있습니다. 프레임워크와 비슷한 이미지입니다만, 양자의 차이에 대해서는 다음과 같이 말할 수 있습니다.

라이브러리  – 개발자가 필요에 따라 외부 라이브러리를 선택하고 읽고 사용합니다.
프레임워크  – 미리 준비된 기능의 틀 안에, 나머지의 필요한 기능을 개발자가 작성해 갑니다.

 

 

프레임워크의 작동 방식

 

예를 들면, 용도도 기능도 다른 「재고 관리 시스템」과 「회원 관리 시스템」이 있다고 합니다. 양자의 시스템 중에서 각각, 재고를 검색하는, 회원을 검색한다, 라고 하는 기능을 만들려고 했을 때, 대부분의 부분은 아래 그림과 같이 공통의 처리가 됩니다.

 

 

요청을 보내는 것부터 시작하여 궁극적으로 응답을 받고 화면에 결과를 내보낼 때까지 대부분의 처리가 공통적입니다. 그렇다면, 그들은 처음부터 준비해 두고, 고유의 기능에 대해서만 유저(개발자)가 코드를 쓰면 좋다, 라고 하는 자세를 취하는 것이 프레임워크입니다.

 

 

 

정리


Laravel의 기초 내용, 개념과 프레임워크에 대해 알아보았습니다.

Laravel은 웹 애플리케이션 개발을 위한 무료 PHP 웹 애플리케이션 프레임워크이자 오픈 소스 소프트웨어입니다.

주요 특징은 웹 애플리케이션을 구축하는 데 필요한 편리하고 강력한 기능을 제공한다는 점이며, 이는 거의 노력하지 않고도 빠르게 개발할 수 있습니다.

 

Laravel의 특징
  • 데이터베이스와 쉽게 상호작용할 수 있도록 O/R Mapping을 제공합니다.
  • 블레이드 템플릿 엔진: Laravel은 뷰를 쉽게 생성하고 관리할 수 있는 간단하고 직관적인 블레이드 템플릿 엔진을 제공합니다.
  • 유연한 마이그레이션 시스템: 데이터베이스 스키마의 버전을 지정하고 업데이트하는 데 도움이 되는 마이그레이션 기능을 제공합니다.
  • Composer와 통합된 패키지 관리: 패키지 관리 도구인 Composer를 사용하면 라이브러리와 외부 패키지를 쉽게 관리할 수 있습니다.
  • 유연한 인증 및 승인 시스템: 사용자 인증 및 승인을 위한 사용하기 쉬운 기능입니다.
  • 테스트 지원: PHPUnit 등을 사용하여 테스트 코드를 작성하고 실행하는 기능을 제공합니다.
  • MVC 아키텍처를 사용하면 역할에 따른 기능 개발이 쉽습니다.
  • Vue.js, React 등 최신 프론트엔드 기술에 대한 선호도가 높습니다.

 

프레임워크(Framework)

 ‘프레임워크’ 또는 ‘골격’을 의미하는 영어 단어로, 소프트웨어 개발을 위한 구조입니다. 특히 웹 애플리케이션 개발에서는 기본 소프트웨어를 웹 애플리케이션 프레임워크라고 합니다.  프레임워크를 사용하면 개발자는 필요한 기능을 처음부터 구현하는 대신 이미 구축된 프레임워크 내에서 필요한 기능을 추가하거나 수정하여 빠르고 쉽게 개발할 수 있습니다.

 

 

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Scroll to Top