[React native] Làm quen với React native
Chào mọi người, cũng đã rất lâu rồi mình cũng chưa có post bài mới. Có thể dạo này cũng đang khá bận với công việc trên công ty cũng như chuyện cá nhân :)) Nhưng hôm nay mình muốn chia sẻ một chút về công việc thời gian qua.
Như vậy là mình vừa có 2 tháng vừa học vừa làm về React native. Giới thiệu qua một chút là kinh nghiệm của mình với lập trình Web hay Javascript thì gần như là con số 0 tròn trịa. Nhưng biết sao được, công ty có dự án thì mình phải tự học, tự nghiên cứu công nghệ mới thôi. Nói qua một chút về khoảng thời gian 2 tháng qua. Thực sự mình cũng đã từng bắt đầu học ngôn ngữ, công nghệ mới khá nhiều. Tuy nhiên, React native thực sự mang đến cho mình một sự phản hồi tích cực. React-native chú trọng việc code UI, cái mà khi mình lập trình iOS mình đã có một trải nghiệm vô cùng tốt khi làm việc với auto layout trên Xcode(không cùi bắp như lập trình Android :)). Do cũng đã có kinh nghiệm về lập trình mobile nên việc làm quen với một ngôn ngữ phát triển trên mobile như React-native cũng không phải điều quá khó khăn. Chắc chỉ khoảng mất 1 đến 2 tuần để làm quen với các khái niệm mới về component, flex, state, props,... Sau đây mình sẽ nói ra các ưu điểm của React-native, cái mà mình đã nhận ra được khi làm việc với nó:
Có vẻ từ nãy đến giờ mọi người thấy mình toàn khen thôi à, vậy tại sao không bỏ hết code native đi, chuyển hết qua react-native. Cũng không hẳn, bỏi dù sao thì nó vẫn là ngôn ngữ hybrid, code 1 lần chạy trên nhiêu nền tảng nên nó cũng sẽ gặp phải những nhược điểm cố hữu của những ngôn ngữ hybrid đó là chúng ra phải dành nhiều thời gian để hiệu chỉnh trên từng nên tảng. Đặc biết là trên Android, chúng ta sẽ gặp khá nhiều lỗi UI ngớ ngẫn, do đó minh khuyên các bạn nếu lập trình trên cả 2 nền tảng Android và iOS thì nên chú trọng trên android trước. Hơn thế nữa React native chỉ hỗ trợ bạn code giao diên thôi, để quản lý source code của bạn rõ ràng, mình khuyên các bạn nên học thêm Redux, một framework hỗ trợ tốt cho việc quản lý các state trong react. Nếu bạn nào chưa từng code React-native thì mình cũng khuyên các bạn nên thử qua. Chắc chắn các bạn sẽ có những cảm nhận mới mà chỉ react mới mang lại. Chúc mọi người có ngày cuối tuần học tập và làm việc vui vẻ. Thân ái và quyết thắng.
Như vậy là mình vừa có 2 tháng vừa học vừa làm về React native. Giới thiệu qua một chút là kinh nghiệm của mình với lập trình Web hay Javascript thì gần như là con số 0 tròn trịa. Nhưng biết sao được, công ty có dự án thì mình phải tự học, tự nghiên cứu công nghệ mới thôi. Nói qua một chút về khoảng thời gian 2 tháng qua. Thực sự mình cũng đã từng bắt đầu học ngôn ngữ, công nghệ mới khá nhiều. Tuy nhiên, React native thực sự mang đến cho mình một sự phản hồi tích cực. React-native chú trọng việc code UI, cái mà khi mình lập trình iOS mình đã có một trải nghiệm vô cùng tốt khi làm việc với auto layout trên Xcode(không cùi bắp như lập trình Android :)). Do cũng đã có kinh nghiệm về lập trình mobile nên việc làm quen với một ngôn ngữ phát triển trên mobile như React-native cũng không phải điều quá khó khăn. Chắc chỉ khoảng mất 1 đến 2 tuần để làm quen với các khái niệm mới về component, flex, state, props,... Sau đây mình sẽ nói ra các ưu điểm của React-native, cái mà mình đã nhận ra được khi làm việc với nó:
- Điểm cộng đầu tiên so với các ngôn ngữ khác là việc debug hay run chương trình chạy bằng react native vô cùng mượt mà và nhanh chóng. Nó không mang lại cảm giác khó chịu như khi bạn phải chờ cả phút để run 1 chương trình android(ngày trước mình dùng cái máy cùi bắp để code :))).
- Bản chất React native cũng là code native, nó chỉ sử dụng react là trung gian để biên dịch thành Objective C(Swift) trong iOS hay Java trong Android. Do đó về hiệu năng thì chắc không kém hơn code native là bao.
- Công đồng phát triển React nói chung và React-native nói riêng vô cùng mạnh. Bạn sẽ nhận được sự hỗ trợ rất lớn khi có rất nhiều thư viện, mã nguồn mở để tham khảo. Một ngôn ngữ chỉ thật sự phát triển nếu cộng đồng tin tưởng và lớn mạnh.
Có vẻ từ nãy đến giờ mọi người thấy mình toàn khen thôi à, vậy tại sao không bỏ hết code native đi, chuyển hết qua react-native. Cũng không hẳn, bỏi dù sao thì nó vẫn là ngôn ngữ hybrid, code 1 lần chạy trên nhiêu nền tảng nên nó cũng sẽ gặp phải những nhược điểm cố hữu của những ngôn ngữ hybrid đó là chúng ra phải dành nhiều thời gian để hiệu chỉnh trên từng nên tảng. Đặc biết là trên Android, chúng ta sẽ gặp khá nhiều lỗi UI ngớ ngẫn, do đó minh khuyên các bạn nếu lập trình trên cả 2 nền tảng Android và iOS thì nên chú trọng trên android trước. Hơn thế nữa React native chỉ hỗ trợ bạn code giao diên thôi, để quản lý source code của bạn rõ ràng, mình khuyên các bạn nên học thêm Redux, một framework hỗ trợ tốt cho việc quản lý các state trong react. Nếu bạn nào chưa từng code React-native thì mình cũng khuyên các bạn nên thử qua. Chắc chắn các bạn sẽ có những cảm nhận mới mà chỉ react mới mang lại. Chúc mọi người có ngày cuối tuần học tập và làm việc vui vẻ. Thân ái và quyết thắng.
Nhận xét
Đăng nhận xét