[Bài 1]: FRAMEWORK LÀ GÌ – LARAVEL LÀ GÌ?

PHẦN 1: Framework

A.Tìm hiểu chung:

– Framework là một thư viện các hàm xây dựng sẵn, chuyên dùng phục vụ cho công việc lập trình PHP. Việc sử dụng các framework hỗ trợ công việc lập trình nhanh hơn,tiết kiệm thời gian và đảm bảo bảo mật hơn cho hệ thống. Một PHP Framework thường được xây dựng trên mô hình MVC.

MVC-pattern-framework

 Vậy Mô hình MVC là gì?

M là Model: cấu trúc dữ liệu theo cách tin cậy và chuẩn bị dữ liệu theo lệnh của controller

V là View: Hiển thị dữ liệu cho người dùng theo cách dễ hiểu dựa trên hành động của người dùng.

C là Controller: Nhận lệnh từ người dùng, gửi lệnh đến cho Model để cập nhập dữ liệu, truyền lệnh đến View để cập nhập giao diện hiển thị.

Chàng lập trình viên đi giao lưu với bạn bè vào tối thứ sáu, ra góc trà đá vỉa hè gọi đồ. Trà đá tối mùa hè nóng nực đông hơn bình thường, chàng len lỏi luồn qua đám đông cho đến khi thấy chị chủ, rồi hét to: “Một nước mía em ơi”.

Chàng là “người dùng”, và đồ uống chàng gọi là “yêu cầu người dùng”. Với chàng, nước mía là đồ uống ưa thích, mát lạnh và ngọt ngào cho buổi tối nóng nực.

Chị chủ gật đầu cười trìu mến.Não của chị chủ đóng vai trò “Controller”.

Ngay khi từ “nước mía” ập đến bằng tiếng Việt, chị hiểu và bắt đầu công việc. Pha nước mía bản chất cũng giống pha nước chanh, nước sấu nhưng nguyên liệu thì hoàn toàn khác biệt nhau. Chị chủ quán chỉ có thể sử dụng công cụ và nguyên liệu của quán chị. Những công cụ của chị chủ trà đá đóng vai trò “Model”.

Cuối cùng, cốc nước mía mà chàng lập trình viên cầm và uống đóng vai trò “View”. Phần “View” được làm nên từ những công cụ trong phần “Model”, chế biến và giao đồ thông qua phần “Controller” (chính là não của chị bán nước mía).

Có rất nhiều lý do khác nhau để các lập trình viên sử dụng PHP framework, nhưng 1 trong những lý do chính vẫn là khả năng giúp các lập trình viền tăng tốc quá trình phát triển ứng dụng. Việc sử dụng lại các mã lệnh giống nhau trong nhiều project sẽ giúp các bạn tiết kiệm được thời gian và công sức 1 cách đáng kể. Một framework sẽ cung cấp sẵn các module nền tảng cần thiết để xây dựng 1 project, vì thế, các lập trình viên có thể tận dụng được thời gian để phát triển các ứng dụng thực tế, hơn là mất thời gian để xây dựng lại nền tảng trên mỗi project.

Có rất nhiều loại PHP framework sẵn có hiện nay cho bạn lựa chọn, thậm chí bạn có thể tự tạo ra 1 PHP framework cho riêng mình, tuy nhiên, điều này chỉ được khuyến khích dành cho các chuyên gia PHP (PHP expert) , những người đã có kiến thức và hiểu biết vững vàng về framework. Khi bạn cần tìm một loạiPHP framework phù hợp nhất với nhu cầu của mình, đừng quên lưu ý về độ phổ biến của nó, ngoài ra ứng dụng web của bạn được phát triển bởi bao nhiêu người cũng là 1 điều nên lưu ý. Một PHP framework càng được phổ biến, tức là nó càng được nhiều người sử dụng và phát triển.

chart-framework-popularity

Cho tới năm 2015, thì Framework laravel hiện đang đứng top 1 thế giới về mức độ phổ biến và ưu dùng. Được cộng đồng hỗ trợ phát triển mạnh mẽ. Tháng 8 năm 2014, Laravel Framework được xem như là một dự án PHP phổ biến nhất trên Github.

Sau nhiều lần được cộng đồng Laravel thế giới hỗ trợ phát triển thì phiên bản mới nhất hiện nay là Laravel 5.2 và sắp tới là phiên bản 5.3.

Xem thêm: Địa chỉ học lâp trình android ở đâu tốt

Sơ lược các tính năng cơ bản của Laravel Framework

  • Bundles : Ở laravel phiên bản 3.x, cung cấp một hệ thống đóng gói các module, với rất nhiều tính năng đi kèm.
  • Composer : Ở laravel phiên bản 4.x, được sử dụng như một công cụ quản lý với tính năng như thêm các gói cài đặt, các chức năng PHP phụ trợ cho Laravel có trong kho Packagist.
  • Eloquent ORM (object relation mapping) : ánh xạ các đối tượng và quan hệ cơ sở dữ liệu, cung cấp các phương thức nội bộ để thực thi đồng thời cũng bổ sung các tính năng hạn chế về mối quan hệ giữa các đối tượng cơ sở dữ liệu. Eloquent ORM trình bày các bảng trong cơ sở dữ liệu dưới dạng các lớp, cung cấp thêm lựa chọn truy cập cơ sở dữ liệu trực tiếp mới mẻ hơn, chuyên nghiệp hơn.
  • Application logic : Là một phần của phát triển ứng dụng, được sử dụng bởi bộ điều khiển controllers.
  • Routes : Định nghĩa mối quan hệ giữa các đường dẫn (url), các liên kết (link) . Khi một liên kết được tạo ra bằng cách sử dụng tên của routes, thì một định danh liên kết thống nhất sẽ được tạo ra bởi laravel.
  • Restful Controller : cung cấp các tùy chọn để tách các logic phía sau các request HTTP POST, GET
  • Class auto loading : cung cấp việc tải tự động các class trong PHP, mà không cần include các class vào. Tùy thuộc vào yêu cầu các class cần thiết sẽ được nạp vào, hạn chế các class không cần thiết.
  • View : chưa các mã html, hiển thị dữ liệu được chỉ định bởi controller
  • Migrations : cung cấp một hệ thống kiểm soát các phiên bản lược đồ cơ sở dữ liệu (database cheme), làm cho web ứng dụng có khả năng tương tác phù hợp những thay đổi logic, các đoạn  code của ứng dụng và những thay đổi cần thiết trong việc bố trí cơ sở dữ liệu, triển khai nới lỏng và cập nhật các ứng dụng.
  • Unit Testing : đóng một vai trò quan trọng trong Laravel, Unit testting chứa rất nhiều các hệ thống unit testing, giúp phát hiện và ngăn chặn lỗi trong khuôn khổ nhất định. Unit Testing có thể được chạy thông qua tiện ích command-line.
  • Automatic pagination : Tính năng tự động phân trang được tích hợp vào Laravel giúp đơn giản hóa các nhiệm vụ thực hiện phân trang so với các phương pháp thông thường.

=====> bài tiếp: http://laptrinhphp.com.vn/install-laravel/