Skip to main content

Tổng quan về React Native

Sự phát triển về CNTT ngày càng khủng khiếp. Những công nghệ mới đã và đang làm thay đổi thế giới một cách nhanh chóng. Từ lúc mới ra đời cho đến nay smartphone đã có những bước tiến mạnh mẽ vì vậy mà những công nghệ kèm theo cũng đòi hỏi những nhà phát triển phần mềm viết ra nhiều phần mềm hơn để có thể sử dụng được trên smartphone chứ không còn đơn thuần là những ứng dụng nhắn tin gọi điện thông thường.

Ngày nay chúng ta có hai nền tảng cạnh tranh chính là iOS và Android, mỗi kẻ một thế lực làm khuynh đảo giới lập trình. Từ đó sinh ra các công cụ hỗ trợ nhà phát triển ứng dụng có thể phát triển mỗi ứng dụng một cách dễ dàng chẳng hạn như Apple thì có XCode, Android thì có Android Studio.

Nhưng cũng chính vì lẽ mỗi kẻ một thế lực nên không ai chơi với ai, mỗi bên xưng đế một “phương” cuối cùng con dân lập trình viên là những người phải chịu trận. Và cũng từ lẽ đó mà giang hồ sinh ra hai môn vang danh thiên hạ là Native và Hybrid? Trước khi đi sâu vào React Native thì chúng ta nên biết Native và Hybrid là cái chi chi và những lợi và hại giữa hai môn phái này. Thông qua đó chúng ta sẽ biết được tại sao mà React/React Native lại được khai sinh ra đời để giải quyết vấn đề nan giải của con dân lập trình viên di động.

2. Native vs Hybrid


  • Native

Mình xin nói về khái niệm Native App trước, Native App khá là dễ hiểu, tức đó là các ứng dụng được phát triển và build trên chính những công cụ hỗ trợ mà nhà phát triển iOS và Android cung cấp cho người lập trình viên ở đây là XCode và Android. Chúng được viết bằng ngôn ngữ mà nhà phát triển iOS và Android cung cấp ra iOS thì là Swift hiện tại, xưa là Objective C, còn Android thì hiện tại tồn tại song song là Java và Kotlin. Các ứng dụng Native được build dựa trên ngôn ngữ của chính hệ điều hành và sử dụng những tính năng sẵn có của hệ điều hành mà không phải thông qua bất cứ ứng dụng bên thứ ba hay engine nào khác để vận hành nên tốc độ là nhanh nhất.

  • Hybrid

Hybrid App là sự kết hợp giữa ứng dụng Web và ứng dụng mobile. Tức là chúng vừa có thể cài đặt lên điện thoại người dùng giống như là những ứng dụng Native bình thường và bạn có thể tìm thấy chúng trên chợ ứng dụng nhưng khó có thể nhận ra đâu là ứng dụng Native và đâu là ứng dụng Hybrid thường thì người dùng sẽ không để ý quá nhiều. Đồng thời như ứng dụng Web chúng được xây dựng dựa trên HTML + CSS + JS. Nhược điểm của Hybrid App đó chính là vấn đề hiệu năng sẽ bị ảnh hưởng đáng kể cũng như không tương tác được hết những tài nguyên hệ thống phần mềm cũng như phần cứng.

Vì vậy, mà Native App là sự lựa chọn hàng đầu của giới lập trình trong việc phát triển phần mềm di động bởi vì nó mang lại hiệu năng cao, trải nghiệm người dùng tốt.

3. Tổng quan về React Native

Giới thiệu với các bạn, gương mặt đứa con của chúng ta hôm nay đây rồi React Native. React Native là một framework do công ty công nghệ nổi tiếng Facebook phát triển nhằm mục đích giải quyết bài toán hiệu năng của Hybrid và bài toán chi phí khi mà phải viết nhiều loại ngôn ngữ native cho từng nền tảng di động. Chúng ta sẽ build được ứng dụng Native, và chúng ta cũng có thể build ứng dụng đó một cách đa nền tảng (multi-platform) chứ không phải là một “mobile web app”, không phải là “HTML5 app”, và cũng không phải là một “hybrid app” hay cũng không chỉ build trên iOS hay Android mà chúng ta build và chạy được cả hai hệ sinh thái luôn, sợ chưa!!! Một điểm hay ho nữa mà mình có đề cập là giảm chi phí recompile của Native bằng cách sử dụng Hot-Loading tức là bạn không cần phải build lại ứng dụng từ đầu nên việc chỉnh sửa diễn ra rất nhanh chóng. Giúp cho lập trình viên có thể thấy được những chỉnh sửa của họ một cách nhanh chóng trực quan, không còn phải bỏ quá nhiều thời gian trong việc build và run ứng dụng nữa.

Và điểm lợi hại kế tiếp của React Native đó chính là chúng ta chỉ cần sử dụng JS để phát triển được một ứng dụng di động hoàn chỉnh, đồng thời giải quyết được các vấn đề mà Native App gặp phải mà mình đã nêu ở trên. Và rồi còn cả kết hợp với code native như Swift, Java, v.v… Tới đây mình chỉ có thể nói là “Thật là vi diệu”.

Việc làm React Native tại đây

Comments

Popular posts from this blog

Tại sao Java và JavaScript lại có tên gọi tương tự nhau?

Sự tương đồng về tên gọi này là có chủ ý. Java, được tạo ra vào năm 1990 bởi James A. Gosling, một nhà khoa học máy tính tại Sun Microsystems, đã rất nổi tiếng vào thời điểm Netscape đặt tên cho ngôn ngữ lập trình của mình là JavaScript vào cuối năm 1995. Việc dựa vào danh tiếng của Java là một động thái kinh doanh thông minh. Như một người dùng Quora từng đưa ra giả thuyết, Netscape muốn mọi người nghĩ rằng Javascript có liên quan đến Java và họ đã thành công. Java được tạo ra vào năm 1990 bởi James A. Gosling Lời giải thích đó hơi khiên cưỡng và không hoàn toàn chính xác. Thực tế là JavaScript, được thiết kế bởi Brendan Eich của Netscape, ban đầu gọi là LiveScript, nhưng một thỏa thuận marketing (hay có thể gọi vui là một “mánh khóe”) giữa Netscape và Sun đã khiến Netscape đổi tên thành JavaScript, vì mục đích hợp tác thương hiệu. Vào thời điểm đó, Sun đã đồng ý cho Netscape đóng gói trình duyệt hàng đầu với Java runtime. Việc thay đổi tên là một phần của thỏa thuận. ...

Giới thiệu về AngularJS

- Angular  là một bộ Javascript Framework rất mạnh do  google  phát triển và thường được sử dụng để xây dựng project Single Page Application (SPA). -Nó hoạt động dựa trên các thuộc tính mở rộng HTML. -Đây là Framework mã nguồn mở hoàn toàn miễn phí. -Framework này được thế hệ Web 2.0 phát triển khá mạnh ở nước ngoài, tuy nhiên ở Việt Nam thì vẫn chưa thông dụng lắm. Những thành phần cấu thành AngularJS Data-binding : (liên kết dữ liệu) tự động đồng bộ dữ liệu giữa model và view. Module  được sử dụng để phân biệt phần xử lý logic (service), controller và application … và giúp code trở nên rõ ràng. Scope : (Phạm vi) Đây là những đối tượng kết nối giữa Controller và View. Controller : Đây là những hàm javascript xử lý kết hợp với bộ điều khiển Scope. Service : Như tôi đề cập ở trên, AngularJS sử dụng các API được xây dựng từ các web service (PHP, ASP) để thao tác với DB. Filters : Bộ lọc lọc ra các thành phẩn của một mảng và trả về mảng mới. Dir...

Magento là gì và lập trình viên Magento làm gì?

Magento là gì? Magento là một mã nguồn mở để xây dựng các website thương mại điện tử dùng ngôn ngữ PHP dựa trên nền tảng Zend Framework.  Hiện có 2 phiên bảng Magento:  Magento Open Source  (tên trước đây là Community Edition  hay CE ) là phiên bản miễn phí và  Magento Commerce  (tên trước đây là Enterprise Edition   hay EE ) phải trả phí. Bạn sẽ được Magento hỗ trợ khi dùng Magento Commerce nhưng giá khá đắt. Magento được đánh giá là một trong những phần mềm thương mại  điện tử phức tạp nhất hiện nay. Sự phát triển của Magento Magento  được phát triển bởi công ty Varien Inc có trụ sở ở California, Mỹ với sự hỗ trợ của cộng đồng. Phiên bản Magento đầu tiên được đưa ra vào ngày 31/03 năm 2008. Sau đó eBay đã mua lại công ty này vào năm 2011 và tiếp tục phát triển phần mềm này. Năm 2018 Magento đã được Adobe mua lại với giá 1,68 tỉ USD. Ngày 17/11/2015, phiên bảng Magento 2.0 được công bố. Phiên bảng mới nhất của Magento là 2.3. Theo một k...