PHP vào năm 2021 – Stitcher.io


Mỗi năm một lần, tôi nhìn lại những phát triển gần đây trong thế giới PHP và cũng mong chờ những gì sắp xảy ra. Và cũng giống như năm 2020 và 2019, chúng ta lại đạt được điều đó!

Giống như tôi đã nói đi nói lại: PHP không còn là ngôn ngữ giống như mười năm trước và chúng tôi rất biết ơn vì điều đó. Đó là một ngôn ngữ nhanh và đáng tin cậy, được sử dụng để xây dựng các ứng dụng lớn trên quy mô lớn. Vì vậy, hãy thảo luận về một số thay đổi đáng chú ý nhất của PHP trong năm qua, đối với ngôn ngữ cộng đồng.

Nhận thấy một tpyo? Bạn có thể gửi PR để sửa nó. Nếu bạn muốn cập nhật về những gì đang diễn ra trên blog này, bạn có thể Theo dõi danh sách gửi thư của tôi: gửi email đến [email protected] và tôi sẽ thêm bạn vào danh sách.

# PHP 8 trở lên

Phiên bản chính mới, PHP 8, đã xuất hiện vào cuối năm ngoái. Tôi đã viết rất nhiều về chủ đề này và tôi sẽ không sao chép/dán tất cả những điều đó vào đây. Như mọi khi, hiệu suất chỉ được cải thiện, thể hiện qua các điểm chuẩn do Kinsta thực hiện.

Ngoài ra còn có JIT dường như cải thiện hiệu suất của một số dự án ở chỗ này chỗ kia, cũng như việc tải trước có tác động tích cực tổng thể nếu bạn không sử dụng dịch vụ lưu trữ chia sẻ.

Tôi nghĩ rằng các tính năng như thuộc tính (hay còn gọi là “chú thích”), đối số được đặt tên và thuộc tính được thăng cấp cũng đáng được đề cập đến, vì chúng chắc chắn đã góp phần giúp PHP 8 trở thành một bản phát hành tuyệt vời như vậy.

Trong khi đó, nhóm cốt lõi đang làm việc trên phiên bản tiếp theo, PHP 8.1, phiên bản này sẽ được phát hành vào khoảng cuối năm 2021. Hiện tại, các tính năng quan trọng nhất là enum và Fiber, tôi sẽ đề cập lại cả hai tính năng này sau trong phần này. bưu kiện.

Năm này qua năm khác, nhóm nòng cốt đã thành công trong việc mang đến cho cộng đồng một bản phát hành ổn định mới, có nhiều tính năng và cải tiến chất lượng cuộc sống. Con đường nâng cấp cũng không còn khó khăn nữa. Tôi đã nâng cấp một số dự án của riêng mình từ PHP 7.4 lên PHP 8 và chỉ mất khoảng một giờ cho mỗi dự án. Thực sự không có lý do chính đáng nào để ở lại!

# Hệ thống kiểu của PHP

Thực sự có một số tin tức rất thú vị khi nói đến các loại: enum sẽ được thêm vào PHP 8.1. Trên hết, chúng tôi cũng đã thấy một số nhà duy trì các công cụ phân tích tĩnh đóng góp vào mã nguồn của PHP bằng cách hạ cánh RFC đầu tiên của họ. Cái này bổ sung thêm never type, một bổ sung hữu ích cho phân tích tĩnh.

Nói về các công cụ phân tích tĩnh, PhpStorm đã bổ sung thêm tính năng hỗ trợ tích hợp sẵn cho Psalm và PhpStan, đây là một bước tiến tuyệt vời hướng tới khả năng thích ứng rộng rãi hơn; IDE yêu thích của chúng tôi hiện cũng hỗ trợ các generic dưới dạng docblock, điều này khiến chúng hữu ích hơn rất nhiều.

Thật không may, vẫn không có hỗ trợ cho thuốc generic hạng nhất. Có một số rào cản chính, đặc biệt là khi chúng tôi vẫn đang xử lý ngôn ngữ được nhập động. Nikita đã vạch ra các vấn đề ở đây. Cá nhân, cách tiếp cận của tôi sẽ là một cách dễ dàng: chỉ hỗ trợ các tổng quát bị xóa trong thời gian chạy và dựa vào phân tích tĩnh. Tuy nhiên, điều này đòi hỏi nhiều hơn một giải pháp kỹ thuật, nó cũng đòi hỏi sự thay đổi tư duy trong toàn bộ cộng đồng PHP. Có thể một ngày nào đó nó sẽ trở thành một lựa chọn khả thi, nhưng hiện tại thì chưa.

#PHP không đồng bộ

Gần đây có một số tin tức quan trọng: PHP đang nhận được coroutine – hay còn gọi là. chủ đề xanh — trong PHP 8.1! Mặc dù vậy, chất xơ – như tên gọi của chúng – có thể không phải là yếu tố thay đổi cuộc chơi lớn như bạn nghĩ.

Mặc dù bản thân các sợi quang có thể chỉ là một bánh răng nhỏ trong máy async lớn, nhưng RFC lại một lần nữa thu hút sự quan tâm của cộng đồng async, điều mà chúng tôi chỉ có thể vui mừng. Các khung Async như Amphp và ReactPHP đang ngày càng phổ biến và gần đây Laravel đã công bố hỗ trợ tích hợp cho Swoole.

Tôi không thể tiếp tục mà không đề cập đến Composer, trình quản lý gói tiêu chuẩn trên thực tế. Nó đã có bản phát hành chính mới vào tháng 10 năm 2020: Composer 2.0. Phiên bản này đi kèm với một số cải tiến về UX, nhưng quan trọng nhất là có những cải tiến hiệu suất vượt trội, thậm chí đôi khi tăng gấp ba tốc độ khi cài đặt sạch.

Nói về nhà soạn nhạc, tôi muốn đo lường trạng thái hiện tại của hệ sinh thái PHP bằng cách xem xét các gói có sẵn theo thời gian. Năm ngoái tôi đã nói về ±25 triệu lượt tải xuống mỗi ngày, ngày nay con số đó đã tăng hơn gấp đôi và chúng tôi đang xem xét ±60 triệu lượt tải xuống hàng ngày.

Cuối cùng, hãy xem biểu đồ này, liệt kê số lượng gói và phiên bản theo thời gian. Nó cũng có thể được tìm thấy trên trang web của họ. Bạn có thể thấy rõ ràng một hệ sinh thái lành mạnh đang phát triển và không có điểm dừng.

# Ngôn ngữ

Hãy kết thúc bằng lời nhắc nhở về mọi thứ đã được thêm vào PHP trong những năm gần đây. Nếu bạn không theo kịp sự phát triển của nó, bạn thực sự muốn xem danh sách này. Tôi nghĩ nó cho thấy sự phát triển của cộng đồng và nhóm phát triển cốt lõi trong những năm gần đây và tôi tin rằng sẽ còn nhiều điều nữa sẽ xảy ra.

Nhận thấy một tpyo? Bạn có thể gửi PR để sửa nó. Nếu bạn muốn cập nhật về những gì đang diễn ra trên blog này, bạn có thể Theo dõi danh sách gửi thư của tôi: gửi email đến [email protected] và tôi sẽ thêm bạn vào danh sách.

Tất cả những điều đó để nói lên rằng: PHP vẫn tồn tại và hoạt động rất tốt. Mỗi năm tôi đều cảm thấy vui hơn với hướng đi của ngôn ngữ và mong muốn được sử dụng nó trong nhiều năm tới!

Nếu bạn cũng hào hứng, có thể bạn muốn đăng ký nhận bản tin của tôi để cập nhật về sự phát triển của PHP, cũng như theo dõi tôi trên Twitter. Hãy cho tôi biết suy nghĩ của bạn qua Twitter hoặc email và chia sẻ bài đăng này với khán giả nếu bạn thấy nó hữu ích, cảm ơn!



Leave a Comment

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Scroll to Top