Laravel là gì? Tìm hiểu chi tiết về Laravel

23/10/2021 | Tin tức

Laravel là gì?

Được phát triển dựa trên mô hình MVC, Laravel là một PHP Framework mã nguồn mở miễn phí với cú pháp rõ ràng, mạch lạc.

Như đã chia sẻ ở bài viết trước, Framework hoặc “Software Framework” (tạm dịch: khung phần mềm) là “bộ khung” cung cấp đa số các kiểu mẫu thiết kế phù hợp với ứng dụng bạn sắp thực hiện, các thư viện, API, trình biên dịch. Framework được cấu thành từ các đoạn code.

MVC (Model-View-Controller) là mô hình phân bố source code thành 3 phần. Mỗi thành phần có một nhiệm vụ riêng biệt và độc lập với các thành phần khác. Cụ thể là:

  • Model : Đây là nơi chứa những nghiệp vụ tương tác với dữ liệu hoặc hệ quản trị cơ sở dữ liệu (mysql, mssql…). Thành phần Model bao gồm các class/function xử lý nhiều nghiệp vụ như kết nối database, truy vấn dữ liệu, thêm – xóa – sửa dữ liệu, …
  • View : Đây là nơi chứa những giao diện như nút bấm, khung nhập, menu, hình ảnh, … Thành phần View sẽ đảm nhiệm nhiệm vụ hiển thị dữ liệu và giúp người dùng tương tác với hệ thống.
  • Controller : Đây là nơi tiếp nhận những yêu cầu xử lý được gửi từ người dùng. Thành phần Controller sẽ gồm những class/ function xử lý nhiều nghiệp vụ logic giúp lấy đúng dữ liệu thông tin cần thiết và hiển thị dữ liệu đó ra cho người dùng qua lớp View.
1634979265007

Alison.com, Barchart.com, … và nhiều trang web lớn trên thế giới đã được phát triển trên nền tảng Laravel. Tại Việt Nam, Laravel được sử dụng phổ biến với cộng đồng rộng lớn chiếm tỷ lệ hơn 70% người dùng.

Lịch sử của Lavarel

Vốn là một .NET developer, khoảng năm 2010 – 2011, khi bắt đầu tiếp xúc với PHP, Taylor Otwell đã chọn CodeIgniter với những tính năng thịnh hành “vượt mặt” cả “anh lớn” Symfony. Trong suốt thời gian làm việc với CodeIgniter, anh sớm nhận ra những hạn chế nhất định.

Nhằm khắc phục những hạn chế này, đồng thời phát huy khả năng xuất sắc về design-pattern của mình, Taylor quyết định tạo ra một Framework mới. Tiêu chí anh đặt ra là đơn giản, dễ hiểu, hỗ trợ developer thực hiện ý tưởng nhanh nhất bằng nhiều tính năng hỗ trợ.

Tháng 6/2011, Taylor Otwell đã “trình làng” Lavarel như một giải pháp thay thế cho CodeIgniter. Với giải pháp này, lập trình viên (developer) đã được hỗ trợ nhiều tính năng mới mẻ với thao tác vô cùng đơn giản. Eloquent ORM mạnh mẽ, xác thực đơn giản, phân trang hiệu quả, …là những tính năng thu hút sự chú ý của đông đảo người dùng của phiên bản đầu tiên này.

Những ưu điểm vượt trội đó đã giúp Laravel nhanh chóng chiếm được chỗ đứng trên thị trường và phát triển mạnh mẽ.

Laravel hiện được phát hành theo giấy phép MIT, với source code được lưu trữ tại Gitthub. Tính đến thời điểm hiện tại, Laravel đã phát triển đến phiên bản 5.8 với nhiều cải tiến.

1634979264350

Những tính năng nổi bật của Laravel

  • Nâng cấp, cài đặt, … với Composer.
  • Thao tác với cú pháp đẹp mắt và đơn giản với Eloquent ORM.
  • Hỗ trợ biến Laravel thành một web service API với Restful API.
  • Cung cấp các lệnh cần thiết để phát triển ứng dụng với Artisan.
  • Hỗ trợ tạo các trường trong cơ sở dữ liệu, thêm các cột trong bảng, tạo mối quan hệ giữa các bảng, .. với Migrations.
  • Cung cấp sẵn các tính năng đăng nhập, đăng ký, quên mật khẩu, … với Authentication.
  • Hỗ trợ test lỗi để sửa chữa với Unit Testing.

10 lý do bạn nên sử dụng Laravel

Sử dụng Laravel, người dùng sẽ được:

  • Tiếp cận các tính năng mới nhất mà PHP cung cấp. Ưu điểm này đặc biệt hữu ích với người dùng Namespaces, Interfaces, Overloading, Anonymous functions và Shorter array syntax.
  • Tham khảo nguồn tài nguyên đa dạng tài liệu khác nhau. Mỗi phiên bản phát hành của Laravel đều kèm theo nguồn tài liệu phù hợp để người dùng tiện tra cứu.
  • Tích hợp với dịch vụ mail dựa trên nền tảng đám mây hoặc local nhờ API sạch trên thư viện SwiftMailer
  • Tốc độ xử lý nhanh, đáp ứng như cầu tạo lập website hay các dự án lớn trong thời gian ngắn
  • Dễ sử dụng nhờ tuân theo mẫu thiết kế mô hình 3 lớp MVC dễ hiểu.
  • Tính bảo mật cao
  • Hỗ trợ các cache backend như Memcached và Redis out-of-the-box
  • Công cụ tích hợp cho dòng lệnh – Artisan
  • Tạo liên kết đến các route được đặt tên
  • Giảm đáng kể chu kỳ phát triển sản phẩm vì Laravel giúp tích hợp nhanh hơn cùng sự hỗ trợ của cộng đồng Laracasts.

Tuy nhiên, Laravel cũng tồn tại một số nhược điểm nhất định. Ví dụ như:

  • Không có sự liên kết giữa các phiên bản. Ứng dụng có thể bị đình trệ, ngừng hoạt động hoặc phá vỡ nếu người dùng cố cập nhật code.
  • Làm chậm tốc độ tải trang vì Laravel quá nặng cho ứng dụng di động.
  • Không hỗ trợ tính năng thanh toán

Hướng dẫn cài đặt Laravel nhanh nhất

Để có thể cài Laravel, bạn phải đáp ứng được các yêu cầu bắt buộc nhất định (xem chi tiết bên dưới).

Bước 1: Cài đặt Laravel

Cách 1: Thông qua Laravel Installer

Mở Terminal (CMD hoặc Git Bash), bạn gõ dòng lệnh sau: “composer global require “laravel/installer””.

  • Đối với Windows, đường dẫn là “%appdata%Composervendorbin”.
  • Đối với macOS và Linux, đường dẫn là “~/.composer/vendor/bin”.

Sau khi cài đặt xong, bạn di chuyển vào thư mục htdocs của XAMPP.

Bạn mở cửa sổ lệnh (nhấn Shift + chuột phải và chọn Command Window Here/Git Bash Here đối với Windows) và gõ: “laravel new blog”.

Trong đó, blog chính là tên thư mục laravel project của bạn. Quá trình cài đặt đã hoàn tất!

Cách 2: Thông qua Composer

Bạn di chuyển thẳng vào thư mục htdocs của XAMPP. Tại đây, bạn mở cửa sổ lệnh và gõ “composer create-project –prefer-dist laravel/laravel blog

Trong đó, blog chính là tên thư mục laravel project của bạn. Quá trình cài đặt đã hoàn tất!

Bước 2: Sử dụng ngay thôi!

Sau khi cài đặt hoàn tất, bạn mở WebServer, đến thư mục Public trong thư mục Laravel project hoặc từ thư mục Laravel project, gõ lệnh: “php artisan serve”.

Màn hình console sẽ xuất hiện thông báo: ”Laravel development server started on http://localhost:8000/”.

Lúc này, bạn vào trình duyệt gõ: http://localhost:8000. và bắt đầu khám phá Laravel ngay thôi!

1634979264552

Những câu hỏi thường gặp về Laravel

Để cài đặt Laravel, hệ thống phải đáp ứng những yêu cầu nào?

Để có thể cài Laravel, bạn phải đáp ứng được các yêu cầu bắt buộc nhất định như sau:

  • PHP >= 5.5.9
  • OpenSSL PHP Extension
  • PDO PHP Extension
  • Mbstring PHP Extension
  • Tokenizer PHP Extension

Đặc biết, nếu dùng Windows, bạn nên sử dụng phần mềm tạo Webserver trên Windows. Ví dụ như Openserver, Wamp, Xampp, Ampps, …

Laravel là frontend hay backend?

Đáp án đúng là “backend”.

Laravel là framework PHP phía server. Với Laravel, bạn có thể tạo các ứng dụng fullstack, nghĩa là các ứng dụng có các tính năng thường yêu cầu phụ trợ. Ví dụ như hẳng hạn như tài khoản người dùng, xuất, quản lý đơn đặt hàng, …

Laravel có mối liên hệ gì với Laradock hay không?

Câu trả lời là: Có!

Khi Laravel kết hợp với Docker sẽ tạo ra Laradock. Laradock sẽ giúp bạn tăng tối đa tốc độ triển khai một dự án Laravel. Cụ thể, Laradock sẽ:

  • Tạo đầy đủ môi trường phát triển cho PHP.
  • Hỗ trợ hầu hết các Framework viết bằng PHP.
  • Hỗ trợ nhiều phiên bản PHP, chuyển đổi phiên bản dễ dàng
  • Hỗ trợ nhiều Database Engines thông dụng.
  • Mang đến nhiều ứng dụng dành cho Cache Engines như: Redis, Memcached, Aerospike.
  • Cung cấp nhiều công cụ như: Composer, Node, Gulp, PhpMyAdmin, ElasticSearch, Vim…

Laravel bảo mật bằng cách nào?

  • ORM sử dụng PDO để chống lại tấn công SQL Injection.
  • Sử dụng một field token ẩn để chống lại tấn công kiểu CSRF.
  • Các biến được đưa ra view mặc định đều được Laravel escape để tránh tấn công XSS.



Nhiều lượt xem

Vòng đời của laravel
25/11/2021 | Tin tức

Vòng đời request Laravel (Request lifecycle...

Bem là gì ? Quy tắt đặt tên cho CSS
24/11/2021 | Tin tức

BEM là viết tắt của Block-Element-Modifier,...

Hướng dẫn cài đặt laravel DebugBar
22/11/2021 | Tin tức

Trong bài viết hôm nay mình sẽ hướng...

Những extension hay ho cho VSCode
21/11/2021 | Tin tức

Visual studio code là một trình soạn thảo...