Thực hiện theo loạt

Bài đăng trên blog này là phần thứ hai của " Hướng dẫn dứt khoát cho khung PHP tiếp theo của bạn. "

Bạn chưa đọc nó? Bạn có thể kiểm tra nó ở đây .

Các phần sau sẽ được xuất bản trong vài tuần tới hoặc bạn có thể nhấp vào liên kết bên dưới để tải xuống phiên bản đầy đủ của cuốn sách Kindle " Hướng dẫn dứt khoát cho khung PHP tiếp theo của bạn ."

Giới thiệu

Nếu bạn đã đọc phần đầu tiên của bài viết này, bạn nên tự tin khi các đồng nghiệp hỏi bạn một khung công tác là gì và tại sao PHP có rất nhiều trong số họ.

Nếu bạn chưa quen với chủ đề này và bạn muốn mở  rộng các kỹ năng phát triển web của mình hoặc bạn là một người kỳ cựu và bạn muốn khám phá thêm sự lựa chọn ngoài kia, dưới đây bạn sẽ tìm thấy một số đánh giá khung khác sẽ cho phép bạn quyết định chọn cái nào sử dụng tiếp theo

Thưởng thức!

Mục lục

CodeIgniter

Tôi cần phải thành thật ở đây, đây là khuôn khổ đầu tiên tôi sử dụng, và như họ nói, bạn sẽ không bao giờ quên mối tình đầu của mình. 

Khi tôi lần đầu tiên được giới thiệu vào môi trường MVC từ các nhà phát triển PHP sử dụng các khung công tác khác, đó là một cuộc đấu tranh cố gắng tìm hiểu nơi đặt mã và tại sao cần phải nỗ lực thêm để sắp xếp các trang PHP, MySQL và HTML ở các phần khác nhau của thư mục dự án. 

Sau đó, tôi phát hiện ra CodeIgniter, cụ thể, tôi đã đọc 4-5 trang đầu tiên của tài liệu này. 

Đột nhiên mọi thứ trở nên rõ ràng và trong vài giờ, tôi đã có thể tạo lại các chức năng và phân chia mã hợp lý bằng cách sử dụng khung công tác, và nó đã giúp tôi rất nhiều khi tôi học các khung nâng cao hơn.

CodeIgniter khá cũ, nó được phát hành lần đầu vào năm 2006, nhưng, sau khi được đưa vào quản lý của những người ở Viện Công nghệ British Columbia, nó vẫn được cập nhật thường xuyên.  

Trên thực tế, tại thời điểm viết bài của tôi, phiên bản mới nhất (3.1.8) đã được phát hành vào cuối tháng 3 năm 2018. 

Các đặc điểm quan trọng nhất của CodeIgniter là độ nhẹ và tốc độ mà nó cung cấp dữ liệu.

Đó là khung mà tôi sẽ thảo luận trong bài viết này trông giống như một khung.

So với các khung công tác PHP khác, CodeIgniter có cấu trúc tệp rõ ràng và dễ hiểu, tài liệu rất chi tiết và rất nhiều người dùng và công ty vẫn sử dụng nó và có thể giúp cung cấp hỗ trợ. 

Đó chắc chắn là con đường để đi nếu bạn cảm thấy sẵn sàng và bạn có đủ kinh nghiệm với vanilla PHP. 

Với khuôn khổ này, bạn đã sẵn sàng để tiến thêm bước nữa.

Tài nguyên:

Drupal

Lời nói đầu: Drupal không phải là một khung công tác PHP thực tế, nó giống như một CMS nâng cao hoặc thậm chí tốt hơn là CMF (Khung quản lý nội dung). 

Drupal được thành lập tại Bỉ bởi Dries Buytaert, người đã phát triển một bảng tin nhắn để giữ liên lạc với các nhóm bạn của mình.

Tên miền đầu tiên của nó là drop.org và mức độ phổ biến của nó tăng nhanh đến mức vào tháng 1 năm 2001, anh quyết định chính thức ra mắt trang web sau khi đổi tên thành Drupal.

Nhân tiện, Drupal có nghĩa là người bỏ rơi tiếng Hà Lan.

Không giống như các CMS phổ biến khác dựa trên PHP, Drupal đòi hỏi nhiều thời gian hơn để được hiểu đầy đủ.

Nó có một đường cong học tập lớn hơn, nhưng phản ứng của một số nhà phát triển là sau một thời gian, dòng chảy rất trơn tru.

Nó chạy trên phần lớn các máy chủ web PHP như Apache, Nginx và Microsoft IIS.

Nó cũng hỗ trợ các cơ sở dữ liệu quan trọng nhất, như MySQL, MariaDB, PostgreSQL, SQLite, Microsoft SQL Server, Oracle và MongoDB.

Mã PHP được sắp xếp theo các mô-đun và chúng có thể được bật và tắt tùy theo lựa chọn của người dùng. 

Mô-đun chính xây dựng trái tim của khung được gọi là lõi,

Lõi này có thể được mở rộng bằng cách cài đặt tiện ích mở rộng được phát triển và có sẵn trên drupal.org. 

Ngay bây giờ, ví dụ, có hơn 38000 mô-đun miễn phí có sẵn, do đó mọi thứ bạn cần đều đã có sẵn.

Giống như phụ trợ, thậm chí phần đầu có thể được cải thiện và, giống như các mô-đun, có một số chủ đề có thể được bật. 

Nó cũng đáng tin cậy. Được thành lập gần 20 năm trước, đã có rất nhiều thời gian để cải thiện và tạo ra một sản phẩm mạnh mẽ và an toàn.

Nó cũng hoàn hảo cho một loạt các dự án khác nhau, từ các trang web đến blog và diễn đàn đến thương mại điện tử và mạng xã hội. 

Chúng có thể được thu nhỏ chỉ bằng cách thêm các mô-đun cần thiết. 

Ngoài ra còn có một cộng đồng phát triển liên tục tạo ra và triển khai hàng tấn tài nguyên hàng ngày. 

Tóm lại, nó là một CMS rất tốt và nếu bạn có thời gian để tìm hiểu nó, nó sẽ là thời gian được đầu tư tốt.

Tài nguyên:

Khung PHP không có chất béo

 




Fat-Free là một khung vi mô được tạo bởi Bong Costa, một nhà phát triển và tư vấn web người Philippines.

Như bạn có thể lượm lặt được từ cái tên, chìa khóa cho một khung vi mô nằm ở kích thước của nó.

Nó chỉ bao gồm mã tối thiểu cho phép dự án của bạn chạy mà không cần thêm bất kỳ cấu trúc không cần thiết nào.

Có nhiều lợi thế trong việc sử dụng loại bộ xương này.

Trọng lượng của dự án. Trên thực tế, Fat-Free có dung lượng dưới 55kb và nó có đường cong học tập rất dễ dàng. Đối với nhà phát triển, điều này có nghĩa là không lãng phí thời gian để học cách mọi thứ hoạt động và vì vậy bạn có thể dành toàn bộ thời gian của mình vào mã hóa.

Fat-Free yêu cầu PHP 5.3 trở lên và hỗ trợ cả cơ sở dữ liệu SQL và NoQuery. Nó cũng có một ORM tích hợp. 

Trong số các tính năng chính, nó cho phép định tuyến và có một công cụ mẫu tốt được kết nối với các khung nhìn.

Mặc dù có những lý do chính đáng để sử dụng một khung vi mô, bạn phải xem xét rằng điều này có thể được coi là một hạn chế khi dự án cần được thu nhỏ hoặc nếu có nhiều hơn một nhà phát triển web làm việc trên nó. 

Một hạn chế nhỏ khác là Fat-Free không đi kèm với cấu trúc xác định nhưng bạn cần tạo nó theo nhu cầu của mình và điều này có thể phức tạp nếu ngay từ đầu.

Các kết quả:

Nhiên liệuPHP

Một trong những khung PHP thú vị nhất (theo tôi) có sẵn là Fuel. 

Nó được tạo ra bởi một số nhà phát triển web với nhiều năm làm việc và xây dựng các khung công tác PHP - Dan Horrigan và Philip Sturgeon (nổi tiếng với những đóng góp của họ cho CodeIgniter), trong số đó. 

Nhiên liệu dường như là một hỗn hợp tốt giữa CodeIgniter 3.x và Kohana 2.x lấy những phần tốt nhất và cải thiện từng bộ phận.

Kết quả là một cấu trúc rất nhanh để làm việc với. 

Nó được thiết kế để có sự hỗ trợ đầy đủ của nguyên tắc Trình điều khiển Chế độ xem Mô hình phân cấp, có nghĩa là mã được chọn có thể được sử dụng trong một số trang trên toàn bộ dự án - chỉ cần nghĩ về giỏ hàng hoặc bài đăng trên blog.

Hãy quên sự hiện diện của mô hình trình bày, còn được gọi là ViewModels. Về cơ bản, nó bổ sung một cấp độ khác giữa các khung nhìn và các bộ điều khiển.

Ý tưởng về cấu trúc tệp cho FuelPHP đã được sao chép từ Kohana và được cải thiện, việc sử dụng không gian tên và tự động tải một cách khôn ngoan cho phép việc gọi lớp diễn ra nhanh hơn cha mẹ.

Nó cũng đi kèm với hai gói được cài đặt sẵn, ActiveRecord và Oil, gói thứ hai là một tiện ích dòng lệnh rất hữu ích.

FuelPHP đã được phát triển bởi những người chắc chắn biết họ đang làm gì và nó đã lấy một trong những tính năng tốt nhất của Kohana (cấu trúc tệp của nó) và trộn nó với CodeIgniter, như đã thấy ở trên, là một kiệt tác trong một thập kỷ. 

Nhưng bây giờ, với việc phát hành PHP 7, nó bắt đầu cho thấy tuổi của nó.

Nhược điểm của nó có thể là cộng đồng chưa bao giờ phát triển đến mức đó, do đó rất khó tìm được sự hỗ trợ và câu trả lời cho các câu hỏi từ các nhà phát triển khác. 

Phil Sturgeon thật sự rất tốt bụng khi trả lời email của tôi khi tôi hỏi thông tin về khuôn khổ này. 

Ông nói rằng đỉnh cao của nỗ lực của nhóm phát triển là vào những năm 2011-2012 và mặc dù mã này vẫn có sẵn trực tuyến, dự án đã chính thức bị bỏ rơi vào năm 2015. 

Anh ấy cũng liên kết tôi với một bài đăng trên blog mà anh ấy đã viết, vào tháng 1 năm 2011, trong đó anh ấy đang giới thiệu FuelPHP với thế giới. 

Tôi nhấn mạnh những gì tôi nghĩ là thông tin quan trọng nhất ở trên, nhưng nếu bạn muốn kiểm tra bài đăng của anh ấy, đây là liên kết:

Giới thiệu về cá tầm PHP

Một tài liệu tham khảo bên ngoài khác mà anh ấy gửi cho tôi là một bài viết trên blog được viết bởi Dwayne Charrington, trong đó anh ấy đã so sánh cẩn thận các đặc điểm chính của Fuel và CodeIgniter. 

Codeigniter vs Fuel PHP

Phil không bao giờ nghỉ ngơi, và anh ấy đưa cho tôi một danh sách một số dự án mà anh ấy hiện đang làm. Hiện tại anh chủ yếu làm việc tại Wework, một công ty có trụ sở tại New York. 

Trong số các dự án của ông, bạn có thể tìm thấy:

    • Speccy
    • Rails-Sunset
    • Faraday-Sunset
    • Chúng tôi gọi

 Tất cả đều có kho lưu trữ trên GitHub.

Ông đang tạo ra công cụ để giúp người dùng có thông số API và tương tác API nói chung. 

Dưới đây là một liên kết đến một vài bài viết cho bất cứ ai muốn tìm hiểu thêm về chủ đề này.

https://blog.apisyouwonthate.com/

Con quay hồi chuyển

Một khung hấp dẫn khác, ít nhất là đối với thành phần của nó, là con quay hồi chuyển. 

Được phát triển bởi Antradar, nó đã xuất hiện được một thời gian, trên thực tế, phiên bản đầu tiên của nó có niên đại hơn 9 năm trước.

Nó hỗ trợ 5.4 và các phiên bản mới nhất của PHP và, trong số các ưu điểm của nó, có kích thước, nhỏ hơn 200 KB và do đó, tốc độ của nó.

Không giống như các khung khác mà chúng ta vừa thấy, Gyroscope sử dụng kiến ​​trúc anLCHH chứ không phải MCV phổ biến hơn. 

Trong kiến ​​trúc này, thẻ div có id duy nhất được điền bằng dữ liệu đã chọn trước đó. 

Dữ liệu này gọi máy khách gửi yêu cầu AJAX đến phía máy chủ. Sau đó, PHP thực hiện các công việc của nó như tạo, xóa, v.v. và cập nhật khung nhìn. 

Điều này làm cho đường dẫn bằng với một yêu cầu HTTP tốt cho hiệu năng và gỡ lỗi.

Một số vấn đề bạn có thể gặp phải nếu bạn chọn sử dụng Con quay hồi chuyển là có ít hoặc không có hỗ trợ, tài liệu trong trang web chính thức đã lỗi thời, cùng với một cộng đồng chưa bao giờ thực sự phát triển.

Suy nghĩ cuối cùng của tôi là nếu bạn muốn khám phá nhiều hơn trong thế giới PHP và tìm hiểu về LCHH, sẽ rất tốt nếu bạn thử.

Nhưng, đồng thời, hãy lưu ý rằng có nhiều khung nâng cao hơn ngoài kia.

Tài nguyên:

Phòng làm việc

Được phát hành vào tháng 7 năm 2003, Jamroom là một CMS khác. 

Bây giờ trong phiên bản thứ sáu, nó được phát triển bởi Talldude Networks và được cấp phép với Giấy phép Công cộng Mozilla.

Jamroom là một sản phẩm rất khác với những sản phẩm khác mà bạn đang thấy ở đây. 

Nó được cấu tạo bởi kiến ​​trúc Mô-đun cho phép cấu trúc tăng hoặc giảm chức năng của nó.

Phần khác của Jamroom là giao diện của nó, cho phép bạn thay đổi các tính năng và giao diện của trang web.

Tất cả mọi thứ bên trong nó là một mô-đun hoặc da. 

Một sự kiện có liên quan là thực tế là nó chạy trên Flash cho đến phiên bản số 5, có một số vấn đề liên quan đến khả năng đáp ứng của thiết bị di động. 

Ngày nay, vấn đề đã được giải quyết thành công và tất cả dữ liệu đa phương tiện được tải lên sau đó được chuyển đổi và có sẵn ở một số định dạng.

Tài nguyên:

Kajona


Đây là một Khung quản lý nội dung khác.

Đây là một dự án được cấp phép của LGPL, có nghĩa là các nhà phát triển bên ngoài có thể tăng cường mã bằng cách thêm và cải thiện việc triển khai và các tính năng.

Kajona được tạo ra vào năm 2004. Phiên bản thứ hai được triển khai vào năm 2005 ngay sau đó là phiên bản 2.1 vào năm 2006. Hiện tại, CMS này là một khung âm thanh đến phiên bản thứ sáu của nó.

Hệ thống được phân tách thành hai lĩnh vực chính: phụ trợ, là phần được sử dụng để duy trì trang web và cổng thông tin, được sử dụng để hiển thị nội dung. 

Cổng này có chức năng chỉnh sửa tích hợp trong trang. Khi di chuột vào phần tử có thể chỉnh sửa, có thể cập nhật nội dung của nó và kết quả sẽ được nhìn thấy nhanh chóng. 

Từ quan điểm của một nhà phát triển web, kiến ​​trúc trông giống như một MVC bình thường với ba lớp riêng biệt.

Kajona hỗ trợ MySQL, MariaDB, PostgreSQL, Oracle và SQLite. Nó cũng cung cấp một công cụ mẫu để hiển thị nội dung ở mặt trước.

Tóm lại, đây là một CMS rất chắc chắn được xây dựng theo cách mà mã của nó có thể được điều chỉnh và chỉnh sửa một cách rất trơn tru. 

Nó không phải là chủ đạo, vì vậy bạn sẽ không tìm thấy nhiều sự hỗ trợ, nhưng nó đi kèm với một tài liệu tốt. 

Nếu bạn cần một sản phẩm tương tự và bạn không muốn sử dụng WordPress, thì đáng để thử.

Tài nguyên:

Kohana

Tôi đã đề cập đến khung này khi tôi mô tả FuelPHP ở trên. 

Kohana là, vâng tôi đã viết là, một khuôn khổ rất tốt và rất không may mắn.

Sự phát triển của nó bắt đầu vào cuối tháng 5 năm 2007, từ kế hoạch của một số thành viên CodeIgniter và tên đầu tiên của nó là BlueFlame. 

Phiên bản chính thức đầu tiên được phát hành vài tháng sau đó, không có bất kỳ tài liệu nào.

Sau một số tranh giành của nhóm nội bộ, phiên bản thứ hai đã được phát hành vào tháng 11 cùng năm. Vào thời điểm đó, nó đã được viết bằng PHP 5.0.

Phiên bản thứ ba và cuối cùng của khung PHP này được phát hành chính thức vào ngày 9 tháng 9 năm 2009 và bản cập nhật cuối cùng, 3.3.6, được phát hành vào ngày 25 tháng 7 năm 2016. 

Kohana đã chính thức bị từ chối vào ngày 1 tháng 7 năm 2017. 

Một số ý định hồi sinh đã được thử, tại thời điểm người thừa kế gần nhất là Koseven.

Tôi đã nói chuyện với Chema Garrido. Ông là thủ lĩnh của Koseven và ông nói rằng khung này là sự thay thế tương thích của Kohana, cho phép người dùng không muốn di chuyển cho Kohana để giữ cho ứng dụng không bị lỗi và cập nhật nhờ sửa lỗi bảo mật và tương thích với các phiên bản mới nhất của PHP.

Ông cũng khuyên nên sử dụng một sản phẩm hiện đại hơn; Giống như tôi, anh ấy là một fan hâm mộ của Laravel,  bạn sẽ đọc thêm về nó trong phần tiếp theo .

Tài nguyên:

Ấu trùng

Dưới đây là phần giới thiệu của danh sách.

Theo quan điểm của tôi, Laravel chắc chắn là khuôn khổ thú vị nhất cho PHP. 

Sự tăng trưởng của nó và danh sách các tính năng đơn giản là không thể tin được. 

Được tạo bởi Taylor Otwell như một thử nghiệm cải thiện CodeIgniter, phiên bản đầu tiên của Laravel xảy ra vào tháng 6 năm 2011. 

Đó không phải là một MCV thực sự vì thiếu bộ điều khiển nhưng có hàng tá các tính năng bên trong như xác thực, phiên, định tuyến và bản địa hóa.

Một số cải tiến đã được đưa ra bởi phiên bản thứ hai của Laravel, cuối cùng đã hỗ trợ các bộ điều khiển, nguyên tắc IoC và hệ thống tạo khuôn lưỡi cắt cho phép các nhà phát triển tích hợp PHP tốt hơn với chế độ xem.

Laravel 3 đã được phát hành vào tháng 2 năm 2012 và, trong một wa nhất định, nó có thể được coi là một bước đột phá nhỏ.

Các tính năng chính là: Artisan, CLI hoàn toàn mới (giao diện dòng lệnh), cộng với di chuyển cơ sở dữ liệu, xử lý sự kiện và gói và hệ thống đóng gói.

Vào tháng 5 năm 2013, ông Otwell đã phát hành Illuminate, biệt danh được chọn cho Laravel 4.

Sau rất nhiều năm thành công, nó đã được viết lại hoàn toàn và phân phối dưới dạng một gói thông qua Composer.

Với phiên bản thứ tư của Laravel, các nhà phát triển thực sự có thể chứng nhận rằng dự án hiện đang phát triển ở thời điểm đạt đẳng cấp thế giới.

Trong số các tính năng mới của nó,  tôi muốn làm nổi bật việc tạo cơ sở dữ liệu, cho phép phổ biến cơ sở dữ liệu, hỗ trợ các loại email khác nhau, xóa mềm và xếp hàng tin nhắn. Chưa kể đến việc xuất bản một bản phát hành dự kiến ​​cho phiên bản nhỏ.

Về cơ bản, từ phiên bản này trở đi, cứ sau sáu tháng sẽ có một phiên bản nhỏ mới.

Laravel 5 xuất hiện vào tháng 3 năm 2015. Phiên bản này bao gồm Flysystem để lưu trữ từ xa, Elixir để xử lý tài sản gói, Socialite để xác thực và Trình lập lịch biểu cho ... đoán xem? Lập kế hoạch nhiệm vụ!

Tại thời điểm này, Laravel đã là khung công tác PHP phổ biến nhất.

Phiên bản đầu tiên có hỗ trợ dài hạn (LTS) là Laravel 5.1. Kế hoạch, sau đó được đưa vào một lần nữa với phiên bản 5.5, là để hỗ trợ bảo mật và sửa lỗi tương ứng trong hai hoặc ba năm.

Tại thời điểm viết bài viết này, Laravel nằm trên phiên bản 5.6, được phát hành chính thức vào ngày 7 tháng 2 năm 2018.

Bên cạnh chất lượng cao và sự chăm chỉ không thể tin được từ người sáng tạo và những người đóng góp, tôi nghĩ rằng Laravel đã thay đổi cách các nhà phát triển web viết và suy nghĩ về công việc của họ.

Ví dụ, sử dụng một tính năng như Eloquent ORM (Bản ghi hoạt động) trình bày các bảng cơ sở dữ liệu làm các lớp làm cho quá trình phát triển, do đó, cuộc sống của các nhà phát triển, dễ dàng hơn nhiều.

Tham dự Laracon ở Mỹ hoặc châu Âu là điều mà hầu hết các nhà phát triển đã mơ ước ít nhất một lần.

Laravel News sẽ thông báo cho bạn và đồng nghiệp của bạn về những gì đang xảy ra xung quanh khuôn khổ này, và cuối cùng, nhưng không kém phần quan trọng, Laracasts với hàng ngàn và hàng ngàn phút video miễn phí được chỉnh sửa bởi Jeffrey Way, một nhà phát triển đáng kinh ngạc trước đây tại Envato tuts + .

Như bạn có thể thấy, e chọn Laravel có nghĩa là chọn toàn bộ hệ sinh thái.

Tham gia một cộng đồng lớn các nhà phát triển, ngay cả khi bạn không nhận ra điều đó, sẽ giúp công việc của bạn tốt hơn trong những năm tới.

Tài nguyên:

Còn tiếp...

Bây giờ đến lượt bạn

Tôi hy vọng bạn thích so sánh khung của tôi.

Phần tiếp theo sẽ được công bố sớm. 

Nhưng bây giờ, tôi muốn nghe từ bạn:

Khung công tác PHP nào đã hấp dẫn bạn nhất? Bạn sẽ thử một trong những điều được liệt kê ở trên?