paint-brush
Có gì mới trong phát triển ứng dụng đa nền tảng?từ tác giả@mobidev
556 lượt đọc
556 lượt đọc

Có gì mới trong phát triển ứng dụng đa nền tảng?

từ tác giả MobiDev5m2023/08/01
Read on Terminal Reader

dài quá đọc không nổi

Các giải pháp đa nền tảng không thể mất đi tính phổ biến trong một thế giới nơi người dùng ưu tiên khả năng truy cập và những người sáng lập doanh nghiệp chọn hiệu quả về chi phí. Flutter cung cấp các khối xây dựng cho các ứng dụng được biên dịch nguyên bản dành cho thiết bị di động, web và máy tính để bàn từ một cơ sở mã duy nhất. Microsoft có kế hoạch ngừng Xamarin, để MAUI làm giải pháp thay thế tiếp theo cho các nhà phát triển .NET.
featured image - Có gì mới trong phát triển ứng dụng đa nền tảng?
MobiDev HackerNoon profile picture


Các giải pháp đa nền tảng không thể mất đi tính phổ biến trong một thế giới nơi người dùng ưu tiên khả năng truy cập và những người sáng lập doanh nghiệp chọn hiệu quả về chi phí. Tuy nhiên, những người đã gặp phải sự phát triển của các ứng dụng đa nền tảng đều biết rằng khái niệm viết một lần chạy mọi nơi giống như một viễn tưởng tiếp thị hơn là thực tế. Vì vậy, công nghệ hiện đại đã tiến gần hơn đến điều đó? Hãy xem xét một số xu hướng phát triển ứng dụng đa nền tảng mà bạn có thể đã bỏ lỡ để tìm hiểu.


Flutter đang chiếm lĩnh thị trường

Flutter cung cấp các khối xây dựng cho các ứng dụng được biên dịch nguyên bản dành cho thiết bị di động, web và máy tính để bàn từ một cơ sở mã duy nhất. Phát triển ứng dụng với Flutter là một lựa chọn phổ biến cho các nhà phát triển nhờ tính dễ sử dụng, thời gian phát triển nhanh và hiệu suất tuyệt vời. Vì vậy, không ngạc nhiên khi Flutter là framework đa nền tảng phổ biến nhất theo nhân viên thống kê .


Với việc mở rộng công nghệ lên web do phát hành Flutter 2.0, nó tiếp tục phát triển các khả năng đa nền tảng của mình. Ngày nay, Flutter là một lựa chọn tuyệt vời cho các nhóm muốn xây dựng ứng dụng web lũy tiến (PWA) hoặc ứng dụng một trang (SPA). Những công cụ này không mạnh bằng việc tận dụng các khả năng gốc của điện thoại thông minh hoặc máy tính để bàn, nhưng chúng giúp việc tạo các ứng dụng có thể truy cập dễ dàng hơn nhiều.


So sánh các khung đa nền tảng cho thấy điểm mạnh của Flutter và cách nó tiếp tục cải thiện trong những năm qua. Chi tiết về bản cập nhật tính năng tiếp theo của Flutter không chắc chắn. Họ dự kiến sẽ phát hành một công cụ kết xuất mới cho các mô hình 3D. Điều này có thể cải thiện hiệu suất của các ứng dụng có nhiều đối tượng chuyển động trên màn hình và mở rộng các trường hợp sử dụng của Flutter cho các trò chơi trên web.


React Native từ bỏ khái niệm về cây cầu

React Native đã được biết đến với kiến trúc cầu nối trong nhiều năm. Cây cầu cho phép JavaScript giao tiếp với mã gốc và chia sẻ dữ liệu.


Cách tiếp cận cầu nối đã hiệu quả, nhưng nó đi kèm với một số sự đánh đổi về hiệu suất. Nhóm React Native đã nghiên cứu các giải pháp thay thế cho phương pháp cầu nối. Công việc này đã dẫn đến một Kiến trúc mới từ bỏ cầu nối để ủng hộ Giao diện JavaScript (JSI). Điều này cho phép gọi phương thức trực tiếp giữa các đối tượng JavaScript và C++. Về nguyên tắc, điều này giúp mã JavaScript tương tác với các phần gốc của ứng dụng của bạn nhanh hơn và trực tiếp hơn.


Nhờ những thay đổi mới này, các nhà phát triển sẽ có thể tập trung hơn vào hiệu suất và tính linh hoạt. Cùng với đó, các đội có thể tận hưởng một hệ thống sắp xếp hợp lý hơn Phản ứng phát triển bản địa kinh nghiệm. Mặc dù có những ưu điểm này, điều quan trọng cần lưu ý là Kiến trúc mới vẫn chưa hoàn toàn ổn định và không phải tất cả các plugin đều được hỗ trợ. Vì vậy, không phải tất cả các ứng dụng đều có thể chuyển sang nó.


MAUI Thay thế Xamarin

Trong nhiều năm, Xamarin là một framework để phát triển các ứng dụng đa nền tảng trong C# với ngăn xếp .NET. Bước tiếp theo trong quá trình phát triển của Xamarin là MAUI. Vào tháng 5 năm 2024, Microsoft có kế hoạch ngừng Xamarin, để MAUI phát triển ứng dụng đa nền tảng làm giải pháp thay thế tiếp theo cho các nhà phát triển .NET.


Được xây dựng dựa trên Xamarin.Forms, MAUI là một kiến trúc hiện đại hóa được thiết kế để tận dụng các tính năng mới nhất của .NET 6. Điều này hứa hẹn hiệu suất mạnh hơn, độ tin cậy cao hơn và khả năng tích hợp được cải thiện với các công cụ .NET khác. MAUI cũng cung cấp hỗ trợ cải tiến để gỡ lỗi, thử nghiệm và triển khai. Do đó, các nhóm sẽ thấy MAUI có thể tăng năng suất và có thể hoàn thành dự án nhanh hơn.


Một số nhà phát triển nói rằng MAUI chưa sẵn sàng cho các ứng dụng lớn. Cải thiện độ ổn định là cần thiết, nhưng điều quan trọng là các doanh nghiệp phải xem xét tương lai của MAUI và liệu nó có phù hợp với họ hay không. Nếu bạn đang muốn làm việc trong ngăn xếp .NET và có một dự án nhỏ đơn giản, thì không có gì ngăn cản nhóm của bạn chuyển sang MAUI ngay bây giờ. Tuy nhiên, các dự án lớn hơn và phức tạp hơn có thể là một dấu hiệu tốt cho thấy nhóm của bạn nên chờ các bản cập nhật ổn định.


Sự kết hợp của các công nghệ mới nổi đang gia tăng

Các ứng dụng đa nền tảng đang ngày càng tích hợp nhiều hơn với các công nghệ mới nổi. Do đó, các ứng dụng ngày càng trở nên tiên tiến và sáng tạo hơn, cũng như mang lại nhiều trải nghiệm độc đáo hơn bao giờ hết.


Mặc dù những công nghệ này đang ngày càng trở nên phổ biến, nhưng không phải tất cả chúng đều hoạt động tốt với các công cụ phát triển đa nền tảng. Ví dụ: thiết bị Android và iOS sử dụng các khung thực tế tăng cường khác nhau. Điều này có nghĩa là các công nghệ đa nền tảng không thể đảm bảo logic độc lập với nền tảng. Điều này thậm chí còn quan trọng hơn khi các nhóm nhận ra rằng khả năng của điện thoại thông minh Android và iOS cho AR có thể khác nhau tùy thuộc vào phần cứng và phần mềm. Tùy chọn tạo hai ứng dụng riêng biệt, một cho iOS và một cho Android, vẫn mang lại nhiều lợi thế hơn về năng suất, hiệu quả chi phí và bảo trì.


Trong khi đó, có những công cụ khác hoạt động tốt với việc phát triển ứng dụng đa nền tảng, như trí tuệ nhân tạo và máy học.


Vấn đề trợ năng

Một trong những thành phần quan trọng nhất của ứng dụng dành cho thiết bị di động là khả năng truy cập. Đảm bảo quyền tiếp cận công bằng cho người dùng khuyết tật cho phép kết nối nhiều hơn với khán giả của bạn và cũng cải thiện khả năng giữ chân người dùng. Không chỉ vậy, nhiều quốc gia còn có quy định yêu cầu các trang web và ứng dụng phải có một số tính năng truy cập nhất định. Điều này khiến việc xem xét khả năng truy cập khi tạo các ứng dụng đa nền tảng thậm chí còn quan trọng hơn.


Nó có thể hữu ích cho các nhóm sử dụng kiểm tra khả năng truy cập di động . Điều này sẽ cho phép nhóm của bạn xem cách người dùng thực tương tác với ứng dụng và nhận phản hồi từ một số đối tượng của bạn trước khi phát hành rộng rãi hơn.


Khả năng tiếp cận không chỉ dành cho người khuyết tật. Làm cho ứng dụng của bạn dễ sử dụng là điều quan trọng đối với tất cả những người sử dụng nó. Ví dụ: phụ đề và bản chép lời cho video không chỉ giúp ích cho những người khiếm thính mà còn giúp ích cho những người thích xem video không có âm thanh.


Cái gì tiếp theo?

Viết một lần chạy mọi nơi là một cách tiếp cận hấp dẫn đối với nhiều doanh nghiệp. Nhu cầu về các loại ứng dụng đa nền tảng này có nghĩa là nhiều công cụ sẽ tiếp tục được phát triển để giúp quá trình này trở nên dễ dàng hơn. Vì các công cụ phát triển này cung cấp ngày càng nhiều trải nghiệm tương tự cho các ứng dụng gốc, nên nhiều khả năng các phương pháp tiếp cận đa nền tảng sẽ được chọn. Ví dụ, Flutter đã rất gần với hiệu suất của các ứng dụng gốc trong một số trường hợp.


Tuy nhiên, các công ty khởi nghiệp và các doanh nghiệp khác vẫn nên đặt câu hỏi liệu nền tảng chéo có phù hợp với họ hay không. Ví dụ: các công nghệ đa nền tảng chưa sẵn sàng để xử lý toàn bộ tiềm năng của các khung AR gốc trên Android và iOS và sự chênh lệch về khả năng phần cứng đã củng cố thực tế đó. Có khả năng là theo thời gian, điều này sẽ thay đổi và đa nền tảng sẽ lan rộng ra nhiều trường hợp sử dụng hơn nữa.