Native apps với Vue.js: Chọn Weex hay NativeScript?

3536

Vue.js là một framework tuyệt vời! Nó rất dễ học và là tinh hoa của những gì tốt nhất từ React’s component và Angular’s templates. Tuy vậy, Vue.js vẫn có điểm yếu: khác với React Native, Vue.js không hề ổn định cũng như được dùng nhiều vào việc phát triển các app Native.

Tin vui là điều nay sắp được thay đổi với 2 framework mới đang được phát triển nhằm giúp cho Vue.js có thể dùng được trong lập trình ứng dụng Native. Chúng chính là WeexNativeScript. Trong bài viết này, tôi sẽ so sánh chúng và cho bạn cái nhìn rõ hơn về cả hai framewoek đầy tiềm năng này.

Weex

Weex là một project của người khổng lồ đến từ Trung Quốc – Alibaba. Với slogan “Write once, run Everywhere”, có nghĩa là bạn có thể lập trình cho web (html5), Android và iOS chỉ với cùng một database. Hiện có một vài Weex projects đang được phát triển, với số lượng hàng triệu người dùng Trung Quốc. Weex có nhiều components, plugins để tương tác với native platform với một set tool riêng nhưng vẫn còn khá thô sơ.

Không may là Weex developers vẫn chưa nghĩ đến việc để nó thành open source là ưu tiên hàng đầu. Tuy bạn sẽ có khá nhiều tài liệu, github repos, etc., để học nhưng việc làm một project từ bàn tay trắng sẽ là bất khả thi nếu không dùng vài thủ pháp hack lên native code.

NativeScript

Trong tháng 4, Igor Randjelovic mở ra cơ hội sử dụng Vue với NativeScript. `nativescript-vue` là một NativeScript plugin giúp lấp đầy khoảng cách giữa Vue.js virtual DOM và NativeScript components, cho phép bạn lập trình cross-platform apps với Vue.js. Mặc dù project vẫn còn khá non trẻ và không phù hợp để thật sự áp dụng vào làm app. Nhưng điều không thể chối bỏ là ứng dụng có tiềm năng rất lớn bởi nó thúc đẩy NativeScript framework với những tools cùng kho đồ sộ các components và plugins. Với webpack, bạn thậm chí còn dùng được cả .vue single file components.

Cộng đồng của Native Script cũng khá xôm tụ và được quan tâm. Nếu bạn tham gia vào official slack thì sẽ thấy có rất nhiều thành viên khá thân thiện sẽ sẵn sàng giúp đỡ bạn, bao gồm NativeScript core team developers, cha đẻ của nativescript-vue, và các member khác.  

Tóm tắt điểm mạnh và yếu

Weex :

Tốt – Đã trong giai đoạn sản xuất (Tuy chỉ là ở Trung quốc thôi);

Tốt – Dành cho Web, Android và iOS;

Dở – Cộng đồng quá tệ;

Dở – Tool còn quá hoang sơ;

Dở – Không biết bắt đầu từ đâu để làm một project

nativescript-vue:

Tốt – Cộng đồng quá tuyệt vời;

Tốt – Thúc đẩy tất cả NativeScript platforms;

Dở – Còn quá non trẻ;

Dở – Chỉ dành cho Android và iOS

Kết luận

Trong open source projects, cộng đồng tốt luôn là ưu tiên hàng đầu. Weex  tuy được ra đời sớm hơn vài tháng và có một đế chế to lớn đứng đằng sau thế nhưng cộng đồng lại rất yếu ớt. Trái ngược lại, NativeScript + Vue có một cộng đồng rất mạnh mẽ và phát triển nhanh chóng. Mặc dù vẫn còn trẻ nhưng tiềm năng và tương lai lại đầy hứa hẹn. Chính vì thế mà tôi chọn NativeScript.

Weex:

 

 

NativeScript + Vue.js:

 

Nguồn: blog.topdev.vn via Hackernoon