- vừa được xem lúc

Tại Sao Mình Chuyển Từ React Sang Angular Cho Các Dự Án Cá Nhân

0 0 25

Người đăng: NGUYỄN ANH TUẤN

Theo Viblo Asia

Chào các bạn! Hôm nay, mình muốn chia sẻ với các bạn về hành trình chuyển đổi của mình từ React sang Angular trong các dự án cá nhân và công việc. Mình đã dành nhiều năm làm việc với React, nhưng gần đây, mình đã quyết định chuyển hướng sang Angular.

Mình biết rằng một số bạn coi React là một thư viện chứ không phải là một framework. Điều đó có lẽ chính xác hơn, nhưng trong bài viết này mình vẫn sẽ gọi nó là một framework bởi vì khi mình nói “React”, mình đang ám chỉ toàn bộ hệ sinh thái của nó chứ không chỉ riêng thư viện React.

1. Hành Trình Với React

Mình bắt đầu sử dụng React vào khoảng năm 2018 trong công việc, và từ đó, nó trở thành lựa chọn tự nhiên cho các dự án cá nhân của mình. Mình cũng đã thử nghiệm với Vue và một số framework khác, nhưng cuối cùng, mình luôn quay trở lại với React.

2. Bước Ngoặt: Công Việc Mới

Năm ngoái, mình bắt đầu công việc mới với vai trò frontend dev, mình được yêu cầu sử dụng Angular thay vì React. Điều này đã mở ra cơ hội để mình trải nghiệm một framework khác một cách sâu sắc hơn.

🔍 Angular Phù Hợp Với Backend Developer? Angular đòi hỏi bạn phải suy nghĩ nhiều hơn như một backend developer, với lối tiếp cận hướng đối tượng, sử dụng các class, service, component và module. Điều này tạo ra sự khác biệt lớn so với React hay Vue.

3. Lý Do Chuyển Sang Angular

Sau hơn một năm làm việc chuyên nghiệp với Angular, mình nhận ra React không thể so sánh với Angular ở một số khía cạnh:

3.1. Services Trong Angular

Services trong Angular là cách chính để xử lý dữ liệu, chúng đơn giản, trực quan và dễ kiểm thử. Mỗi service trong Angular được coi là một singleton, giúp dữ liệu được lưu trữ xuyên suốt phiên làm việc của người dùng.

3.2. Đồ nghề đầy đủ

Angular cung cấp hầu hết những gì bạn cần ngay khi bắt đầu, từ việc xử lý yêu cầu đến routing và quản lý trạng thái. Điều này giúp ích rất nhiều trong việc đảm bảo tính tương thích và tiết kiệm thời gian khi cập nhật.

3.3. Tổ Chức Dự Án

Angular hỗ trợ tốt việc tổ chức dự án, nhất là với các dự án lớn có nhiều developer. Cách tiếp cận hướng đối tượng và công cụ CLI của Angular giúp tạo ra một cấu trúc nhất quán cho dự án.

4. Binding Hai Chiều

Binding hai chiều trong Angular là một tính năng mạnh mẽ, giúp đồng bộ hóa dữ liệu giữa view và model một cách tự nhiên và hiệu quả.

5. Server-Side Rendering

Angular hỗ trợ server-side rendering ngay từ đầu, không cần thêm framework phụ trợ. Điều này làm cho việc thiết lập và cấu hình trở nên dễ dàng hơn nhiều.

6. Sự Kết Hợp Hoàn Hảo: Angular và RxJS

Sẽ thật thiếu sót khi nói tới Angular mà không đề cập tới RxJS.

6.1. Cuộc Chiến Ban Đầu Với RxJS

Để mình kể cho các bạn nghe về "cuộc chiến" của mình với RxJS. Ban đầu, RxJS thực sự là một thách thức khổng lồ - nó khù khoằm và phức tạp đến nỗi đôi lúc mình cảm thấy như mình đang cố bắt lấy một cái gì đó không thể nắm bắt được.

😂 Cười Để Quên Đi Sự Phức Tạp

Có những lúc, mình cứ tưởng mình đã hiểu RxJS, nhưng rồi... "Ối giời ơi!" - mình nhận ra mình chưa thể kiểm soát nó. Mình còn nhớ có lần, mình đã tự hỏi, "Mình đang làm cái quái gì vậy trời?" khi cố gắng áp dụng một operator phức tạp nào đó.

6.2. Khi RxJS 'Chinh Phục' Được Mình

Nhưng các bạn ạ, một khi bạn "thấm" được RxJS, bạn sẽ muốn dùng nó mọi lúc, mọi nơi. Sự linh hoạt và mạnh mẽ mà RxJS mang lại cho việc quản lý dữ liệu là không thể phủ nhận.

🔄 RxJS và React: Và không dừng lại ở đó, mình đã từng "vác" RxJS sang React để thử nghiệm.

6.3. Tình Yêu Ghét Cùng Lúc Với RxJS

Dù vậy, mình phải thừa nhận rằng, mặc dù RxJS là một phần quan trọng khiến mình yêu Angular, nó cũng là lý do khiến mình... có chút "ghét" Angular. Thật vô lý, phải không nào? 😅 Sự phức tạp của RxJS khiến nó trở thành một "liều thuốc đắng" mà mình phải học cách nuốt trôi. Nhưng cũng chính sự phức tạp ấy lại làm mình cảm thấy thích thú, giống như một trò chơi (một khi đã ghiềng thì...), mỗi lần giải được là một lần cảm thấy tự hào vô cùng.

Với mình, Angular và RxJS đã mang đến cho mình một trải nghiệm đầy thú vị và thách thức. Đúng là trong mọi sự ghét có yêu, và trong mọi sự yêu có ghét. Angular và RxJS, với mình, chính là minh chứng hoàn hảo cho điều đó. Còn bạn thì sao, bạn có code Angular không? Với bạn RxJS khó hay dễ? Bạn thích hay không thích nó? Comment bên dưới cho mình biết nhé! 💻👩‍💻

7. Lý Do Tiếp Tục Sử Dụng React

Mặc dù đã chuyển sang Angular, React vẫn có những ưu điểm riêng. Kinh nghiệm sử dụng React của mình cũng là lý do để tiếp tục sử dụng nó trong một số dự án cá nhân.

Kết Luận

Cuối cùng, mình muốn nhấn mạnh rằng, mặc dù tìm thấy nhiều ưu điểm trong Angular, nhưng điều đó không có nghĩa là React kém cạnh. Mỗi framework đều có những điểm mạnh riêng và sự lựa chọn phụ thuộc vào nhu cầu cụ thể của dự án cũng như sở thích cá nhân của mỗi người.


Mình hy vọng bạn thích bài viết này và học thêm được điều gì đó mới.

Donate mình một ly cafe hoặc 1 cây bút bi để mình có thêm động lực cho ra nhiều bài viết hay và chất lượng hơn trong tương lai nhé. À mà nếu bạn có bất kỳ câu hỏi nào thì đừng ngại comment hoặc liên hệ mình qua: Zalo - 0374226770 hoặc Facebook. Mình xin cảm ơn.

Momo: NGUYỄN ANH TUẤN - 0374226770

TPBank: NGUYỄN ANH TUẤN - 0374226770 (hoặc 01681423001)

Bình luận

Bài viết tương tự

- vừa được xem lúc

Giới thiệu Typescript - Sự khác nhau giữa Typescript và Javascript

Typescript là gì. TypeScript là một ngôn ngữ giúp cung cấp quy mô lớn hơn so với JavaScript.

0 0 525

- vừa được xem lúc

Type annotation vs Type Inference - Typescript

Trong bài viết này, chúng ta sẽ tìm hiểu kỹ về TypeScript bằng cách tìm hiểu sự khác biệt giữa kiểu chú thích và kiểu suy luận. Tôi sẽ cho rằng bạn có một số kinh nghiệm về JavaScript và biết về các kiểu cơ bản, như chuỗi, số và boolean.

0 0 45

- vừa được xem lúc

Type Annotation và Type Inference trong TypeScript là gì?

Khi làm việc với javascript chắc hẳn các bạn đã quá quen với việc dùng biến mà không cần phải quan tâm đến kiểu dữ liệu của nó là gì phải không? Đúng là mới đầu tiếp cận với Typescript mình cũng cảm thấy nó khá là phiền vì cần phải khai báo đủ type để nó chặt chẽ hơn. Lúc đó mình còn nghĩ: " JavaScr

0 0 37

- vừa được xem lúc

Tìm hiểu TypeScript và kiến thức cơ bản

TypeScript là gì. TypeScript sử dụng tất cả các tính năng của của ECMAScript 2015 (ES6) như classes, modules.

0 0 53

- vừa được xem lúc

TypeScript - P1: Vì sao TypeScript được yêu thích đến vậy?

Trải nghiệm thực tế. Trước khi là một Web Developer, tôi là một Mobile Developer và Java là thứ mà tôi từng theo đuổi.

0 1 69

- vừa được xem lúc

4 Tính năng rất hay từ TypeScript

Xin chào các bạn hôm nay mình xin chia sẽ những tính năng rất hay của TypeScript (TS), các bạn cùng tìm hiểu nhé. Ngoài việc set Type cho biến, tham số hay function thì ví dụ khi bạn nhìn vào một tham

0 0 96