React không phải là vấn đề. Vercel mới là vấn đề.
Các nhà phát triển đang cảm thấy thất vọng với React. Nhiều người tự hỏi liệu còn ai thích React nữa không. Câu trả lời thường là tiêu cực.
Tôi tin rằng chúng ta đang nhìn nhận sai nguyên nhân. React không hề tệ đi. Nó đã bị thâu tóm. Vercel chính là công ty đứng sau sự chuyển dịch này.
Vercel đã thuê các thành viên chủ chốt của đội ngũ React. React Server Components xuất hiện dưới dạng một khái niệm. Bản triển khai lớn đầu tiên nằm trong Next.js. Next.js là một framework của Vercel. Nó hoạt động tốt nhất trên nền tảng hosting của Vercel.
Đây là một chiến lược kinh doanh. Và nó đang hoạt động rất hiệu quả.
Nhiều nhà phát triển yêu thích React vì nó là một thư viện. Bạn tự chọn router cho mình. Bạn tự chọn quản lý state. Bạn tự chọn các công cụ build. React không can thiệp vào quy trình của bạn.
Điều đó đã thay đổi.
Hãy thử sử dụng React mà không có framework vào ngày hôm nay. Tài liệu chính thức khuyên bạn nên bắt đầu với Next.js. Họ không đề xuất Vite như một lựa chọn hàng đầu. Thông điệp rất rõ ràng: Chỉ mình React là không đủ. Bạn cần một framework. Và framework đó sẽ áp đặt quan điểm về việc bạn triển khai mã nguồn của mình ở đâu.
Đây không phải là một thư viện. Nó là một cái phễu với cú pháp JSX.
Một công ty được các quỹ đầu tư mạo hiểm (VC) hậu thuẫn hiện đang có tầm ảnh hưởng khổng lồ đối với một dự án mã nguồn mở được hàng triệu người sử dụng. Điều này tạo ra sự lệch lạc về động lực. Các tính năng không được xây dựng dựa trên nhu cầu của nhà phát triển. Chúng được xây dựng để giúp một nền tảng cụ thể hoạt động tốt hơn.
Server Components đẩy logic về phía server. Điều này khiến việc chọn hosting trở nên quan trọng hơn.
Vercel không xấu. Họ cung cấp những công nghệ tuyệt vời. Nhưng động lực của họ khác với bạn. Họ muốn giữ bạn trong hệ sinh thái của họ. Còn bạn muốn sự tự do và linh hoạt. Hai mục tiêu này xung đột với nhau.
Khi các nhà phát triển phàn nàn về React, họ thường ám chỉ sự phức tạp. Họ đặt ra những câu hỏi như:
- Tại sao tôi phải biết liệu một component là server component hay client component?
- Tại sao một ứng dụng đơn giản lại cần edge runtimes?
- Tại sao đội ngũ React lại đề xuất Next.js?
Sự thất vọng đến từ một hệ sinh thái được định hình bởi mục tiêu doanh thu của một công ty duy nhất.
Tôi chưa chuyển sang một framework mới. Tôi chỉ đang trở nên thận trọng hơn. Tôi tự hỏi liệu mình có thực sự cần Next.js hay không, hay chỉ cần Vite và React Router là đủ.
React vẫn là một thư viện rendering tuyệt vời. Vấn đề nằm ở những lớp được bồi đắp lên trên bởi những người trục lợi từ sự phụ thuộc của bạn.
Đây là một cuộc khủng hoảng về mặt chính trị, không phải về mặt kỹ thuật. Một công ty đang chi phối hướng đi của một công cụ được hàng triệu người sử dụng để phục vụ lợi ích tài chính của chính họ. Điều này đáng lẽ phải khiến bạn cảm thấy không thoải mái.
Chúng ta không nên từ bỏ React. Chúng ta nên yêu cầu một lộ trình phát triển phục vụ các nhà phát triển thay vì các nền tảng triển khai.
Bạn có nghĩ React có thể giành lại sự độc lập của mình không? Hay sự thâu tóm này là vĩnh viễn?
Nguồn: https://dev.to/adioof/reacts-real-problem-isnt-react-its-vercel-a7l
