Battle of Frontend Frameworks (2022)

May 09 2022
Thiết lập bối cảnh lý do TẠI SAO tôi thực hiện nghiên cứu này Vì vậy, chúng ta hãy hiểu nghiên cứu này bắt đầu từ quan điểm nào và ai đó có thể hưởng lợi từ nó như thế nào.Trong tổ chức hiện tại của tôi, bảng điều khiển (trang web) được tạo trên Angular (9.

Thiết lập bối cảnh lý do TẠI SAO tôi thực hiện nghiên cứu này
Vì vậy, chúng ta hãy hiểu nghiên cứu này bắt đầu từ quan điểm nào và làm thế nào để ai đó có thể hưởng lợi từ nó.
Trong tổ chức hiện tại của tôi, bảng điều khiển (trang web) được tạo trên khung Angular (9.0) và có rất nhiều tính năng và các tính năng mới tiếp tục được bổ sung hàng tháng. Kiến trúc của dự án đôi khi không được sửa đổi và có vẻ như chúng ta có thể cần một kiến ​​trúc dự án tốt hơn để quản lý dự án đang phát triển này. Bây giờ nếu những nỗ lực đang được thực hiện, chúng tôi cũng có thể kiểm tra xem chúng tôi có thể tìm thấy một số khuôn khổ phù hợp hơn với nhu cầu và yêu cầu hiện tại của chúng tôi hay không.
Ngoài ra, nếu trong tương lai, chúng tôi bắt đầu làm việc với một số dự án mới và chúng tôi có cơ hội bắt đầu lại, thì khung công tác nào có thể giúp chúng tôi trong tình huống đó và cách chúng tôi có thể liên kết các dự án với nhau với một số thứ như các thành phần web hoặc giao diện người dùng vi mô.

Vì vậy, hãy ghi nhớ tất cả những điều này, nghiên cứu này đã tiến hành, so sánh và phân tích ưu và nhược điểm của tất cả các khuôn khổ theo yêu cầu của chúng tôi. Hãy cùng tìm hiểu nơi chúng ta hạ cánh.

Chúng tôi có những lựa chọn nào?

Vào tháng 1 năm 2022, chúng tôi có các khung công tác sau đây hơn những gì chúng tôi đang xem xét vì chúng có mức độ phổ biến và sử dụng cao nhất hiện nay trong số các khung công tác khác còn quá trẻ để xem xét hoặc các khung công tác cũ gần như không còn tồn tại hiện nay.
1) Angular
2) React
3) Vue
4) Svelte

ANGULAR

Angular là anh hùng hiện tại của chúng tôi về các khuôn khổ vì đó là khung duy nhất mà chúng tôi đang sử dụng trong dự án của mình tại công ty hiện tại của tôi. Nhưng có một số nhược điểm với Angular Vì vậy, chúng ta hãy kiểm tra ưu và nhược điểm của Angular

PROS-:

1-: Angular có thể được coi là Jack của tất cả các giao dịch (gần như tất cả), vì nó là SSR hoặc xử lý các kiến ​​trúc lớn hoặc ứng dụng phá vỡ trong các thành phần hoặc quản lý trạng thái hoặc định tuyến, nó xử lý tất cả. Hầu hết chúng đều có nguồn gốc từ nó và một số phải được thực hiện bằng cách sử dụng các thư viện / khung công tác khác nhưng nó làm được tất cả.

2-: Đây là điều rất cụ thể đối với chúng tôi, rằng chúng tôi đã có một đội ngũ giàu kinh nghiệm nên nếu chúng tôi bắt đầu một dự án mới nào đó, phần đào tạo sẽ không thành vấn đề.

CONS-:

1-: Hiệu suất - Các vấn đề về hiệu suất có thể được tìm thấy trong các ứng dụng Angular nếu tất cả phát hiện thay đổi và cách viết mã không được thực hiện đúng cách và ứng dụng không được quản lý tốt và thời gian sơn đầu tiên cũng nhiều hơn so với các framework khác.

2-: Kích thước - Nó có kích thước và phụ thuộc riêng được thêm vào lõi của khung làm tăng thời gian xây dựng và kích thước gói. Và kích thước gói và thời gian xây dựng cao hơn là dấu hiệu đỏ cho bất kỳ ứng dụng nào ngoài đó.

3-: Hệ thống sinh thái đa nền tảng - Nếu chúng tôi muốn tạo ứng dụng web và di động thì các giải pháp ứng dụng dành cho thiết bị di động và máy tính để bàn không được chấp nhận rộng rãi, vì vậy vì các khung công tác khác như React xử lý tốt điều đó, điểm này sẽ là một khó khăn cho điều này, như khả năng mở rộng nền tảng chéo là điều mà chúng tôi đang tìm cách đạt được trong tương lai gần.

4-: Hiện tại điểm này có thể mâu thuẫn đối với một số người, nhưng theo xu hướng mới nhất, Angular đang từng ngày giảm dần do số lượng người dùng sử dụng nó và sự phổ biến của nó đang bị các framework mới khác chiếm lấy, vì vậy trong một vài năm tới nó có thể là một công nghệ hiện đại và là một tổ chức tuyển dụng nhân tài mới có thể là một thách thức nếu công nghệ đang trở nên phổ biến.

PHẢN ỨNG

React là framework (hay thư viện?) Hot nhất hiện tại và không xem xét nó sẽ không phải là thứ mà hầu hết mọi người gọi là khôn ngoan, do đó chúng tôi đã thử và đây là một số ưu và nhược điểm của React.

PROS-:

1-: Kích thước: Vì vậy, React là một thư viện rất nhẹ không có các chức năng có sẵn như định tuyến và máy khách http và các chỉ thị, đường dẫn, v.v. mà Angular hoặc Vue có. Do đó, kích thước ban đầu rất nhỏ và có thể tăng lên nếu cần.

2-: Trong React Server Side Rendering dễ dàng hơn và được sử dụng rộng rãi hơn Angular. Ngoài ra NextJS và Gatsby là những framework tuyệt vời hoạt động trên nền tảng của React, vì vậy đó là một điểm cộng khác mà React có trong túi của mình.

3-: Hệ thống sinh thái đa nền tảng - React và React Native rất dễ sử dụng cùng nhau và mã có thể được chia sẻ rất dễ dàng trên ứng dụng web và ứng dụng di động lai.

4-: State Management tốt hơn trong react và Redux, công cụ nổi tiếng nhất để quản lý các trạng thái đã được tạo ra để lưu ý đến React, mặc dù nó cũng hoạt động với những người khác, nhưng với react thì nó liên quan nhiều hơn bất kỳ framework nào khác.

5-: Cộng đồng React rất lớn, có rất nhiều nhà phát triển tạo ra các hướng dẫn và thư viện mà từ đó bất kỳ ai cũng có thể giúp đỡ và việc tuyển dụng nhân tài mới cũng dễ dàng hơn khi cộng đồng này mở rộng nhanh chóng.

6-: Về điều này, tôi không tìm thấy bằng chứng nào nhưng từ những gì tôi đã đọc, mọi người nói rằng hiệu suất của React tốt hơn Angular trong hầu hết các trường hợp do Virtual DOM và thư viện trọng lượng nhẹ.

CONS-

1-: Vì React không có một thư mục cấu trúc cố định và hầu hết các công cụ được sử dụng là thư viện của bên thứ ba nên nó không được nhiều người ủng hộ và có nhiều cách để thực hiện cùng một việc, do đó nó trở thành một nhiệm vụ khó khăn để xây dựng và cấu trúc một dự án phức tạp mà không có nhiều kinh nghiệm trong đó.

VUE

Vue cũng đã trở nên nổi tiếng gần đây và có đủ các ngôi sao github để được xem xét trong danh sách này. Vue được phát triển bởi một người trước đó đã từng làm việc trong nhóm cốt lõi Angular tại Google và sau đó tạo ra một khung hoạt động với các phần tốt của Angular và một số phần tương tự như React.

PROS-:

1-: Đường cong học tập của Vue ít đến từ nền tảng Angular, nó là sự kết hợp của React và Angular vì nó có tùy chọn sử dụng loại định dạng JSX nơi chúng tôi xác định tất cả mã trong một tệp hoặc sử dụng 2 tệp riêng biệt cho phần HTML và Logic giống như trong Angular và nó cũng có các chỉ thị, đường ống và định tuyến tương tự như trong Angular. Vì vậy, nó hầu hết được các đội lựa chọn để di chuyển từ Angular sang React, nhưng Vue cung cấp một nền tảng tốt để hạ cánh.

2-: Hiệu suất của nó tốt hơn React về thời gian sơn đầu tiên.

3-: Cộng đồng của Vue cũng đang tăng lên nhanh chóng giống như cách mà React đã làm.

4-: Dễ dàng xây dựng ứng dụng lớn hơn khi so sánh với React

CONS-:

1-: Nếu chúng ta so sánh với React, thì thư viện, hướng dẫn, trợ giúp của cộng đồng ít hơn React và vì cộng đồng ít tuyển dụng hơn trong React có thể dễ dàng hơn trong React so với Vue, nhưng nó vẫn đang tăng lên từng ngày, vì vậy không phải là một vấn đề lớn .

2-: Hệ sinh thái ứng dụng Web và Di động không tốt và đối với SSR, thư viện của nó cũng không tốt bằng NextJS

SVELTE

Svelte là ứng cử viên trẻ nhất trong danh sách nhưng đã trở nên nổi tiếng nhờ trọng lượng nhẹ và hiệu suất tuyệt vời.

PROS-:

1-: Đây là một trình biên dịch JS, vì vậy đây là lần sơn đầu tiên và các chỉ số khác tốt hơn bất kỳ khung công tác nào khác hiện tại, vì vậy Nếu yêu cầu là tạo một ứng dụng tương đối nhỏ hơn mà không có bất kỳ sự thỏa hiệp nào về tốc độ, thì đây là cách để thực hiện.

2-: Đường cong học tập của nó ít hơn bất kỳ khuôn khổ nào khác trong danh sách này.

3-: Nó cho phép bạn viết ít dòng mã hơn và thực hiện nhiều công việc hơn trong đó, giúp giảm xác suất xuất hiện lỗi.

4-: Kích thước gói của nó rất nhỏ vì nó là trình biên dịch rất nhẹ.

CONS-:

1-: Cộng đồng của Svelte hiện tại rất ít và có thể là một nhiệm vụ để tìm các thư viện và hướng dẫn phù hợp để giải quyết một số thứ chưa được thực hiện dễ dàng, cũng như hệ thống sinh thái đa nền tảng không tốt lắm như hiện tại và việc ít phổ biến hơn đi kèm với khó khăn trong việc tuyển dụng nhân tài, Do đó, nó vẫn còn một thời gian để phát triển như các khuôn khổ khác đã làm.

Đây là sự so sánh giữa tất cả các khuôn khổ dựa trên nhu cầu của chúng tôi

PHẦN KẾT LUẬN

Vì vậy, bây giờ tôi sẽ đưa ra 2 xu cho khung mà tôi sẽ chọn,
Theo tôi Angular vẫn là khuôn khổ tốt nhất vào năm 2022 để tạo các ứng dụng lớn ở cấp độ sản xuất vì nó có cấu trúc thư mục tốt nhất và các tính năng nội bộ mà nó cung cấp.
Trong khi nếu bạn chỉ mới bắt đầu hành trình tìm hiểu một số framework và mục đích là kiếm việc làm, thì React là một trong những framework tốt nhất để học ngay bây giờ vì nó dễ học hơn và tiền đang rất nhiều trong các công việc React (tôi là một nhà phát triển Angular nức nở ).
Ngoại trừ điều này nếu bạn là người có Dự án Angular và muốn chuyển sang framework mới và React đang quyến rũ bạn, hãy đợi ở đó!
Sử dụng Vuethay vì React nếu bạn đang di chuyển từ Angular, vì nó khá giống với React nhưng sử dụng rất nhiều thứ ngoài Angular (nó được thực hiện bởi một nhà phát triển của nhóm cốt lõi của Angular tại Google )
Và nếu yêu cầu của bạn khá đơn giản mà bạn chỉ muốn một khuôn khổ để xây dựng một phần nhỏ của ứng dụng của bạn nhưng với hiệu suất tốt nhất hiện có (chẳng hạn như cổng thanh toán), sau đó sử dụng Svelte vì nó có điểm chuẩn hiệu suất tốt nhất trong tất cả những thứ này!

Tôi hy vọng điều này sẽ hữu ích cho bạn theo một cách nào đó.

© Copyright 2021 - 2022 | vngogo.com | All Rights Reserved