Networks Business Online Việt Nam & International VH2

Lập trình ứng dụng đa nền tảng Xamarin – Tài liệu text

Đăng ngày 07 November, 2022 bởi admin

Lập trình ứng dụng đa nền tảng Xamarin

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (725.6 KB, 7 trang )

XAMARIN
I.

TỔNG QUAN
1. Giới Thiệu Về Xamarin
XAMARIN là hãng phần mềm lập trình di động được thành lập vào năm 2011
viết trên ngôn ngữ C# để viết các ứng dụng chạy trên hệ điều hành iOS,
Android, Windows và đến 11/2013 Microsoft đã mua lại và tích hợp chạy trên
môi trường Widnows 8. Công cụ Xamarin được Microsoft giới thiệu tại thị
trường Việt Nam vào 18/4/2014 trong cho cộng đồng các giảng viên các
trường CĐ, ĐH tại TP.HCM và được chuyển giao các tài liệu, bản quyền với giá
ưu đãi giảng dạy cho các sinh viên trên nền Microsoft Visual Studio và được
chuyên gia Microsoft demo lập trình Xamarin để app chạy trên môi trường iOS,
Android, Windows Phone và Windows 8.1 với các công cụ khác nhau khác
nhau.

Nhà đồng sáng lập và CEO của Xamarin, Nat Friedman

2. Mục đích

Xamarin công cụ giúp sử dụng ngôn ngữ C# để xây dựng App native(ứng dụng
gốc) cho cả iOS, Android lẫn Window một cách nhanh chóng và dễ dàng hỗ trợ
đầy đủ các tính năng mạnh mẽ. Sản phẩm Xamarin đơn giản hóa việc tạo ra và
duy trì hiệu suất cao, nền tảng ứng dụng di động với mục tiêu là điện thoại,
máy tính bảng và các thiết chạy iOS, Android và Windows. Với Xamarin bạn sẽ
không phải lập trình nhiều lần, xây dựng ứng dụng gốc cho nhiều nền tảng trên
một cơ sở dữ liệu code C# được chia sẻ, sử dụng cùng một IDE, ngôn ngữ và
API.

II.

ĐẶC ĐIỂM
Với gói công cụ của Xamarin, lập trình viên có thể viết các ứng dụng hoàn toàn
bằng C# đồng thời chia sẻ các mã lập trình tương tự lên iOS, Android, Windows
và Mac. Ngoài ra, lập trình viên cũng có thể tái sử dụng thư viện .NET trong khi
vẫn có thể dễ dàng tích hợp các thư viện và khung phát triển đặc trưng của từng
nền tảng. Xamarin cũng cung cấp các đoạn mã soạn sẵn hiệu năng cao với khả
năng truy xuất vào tất cả các hàm API nội trú để lập trình viên có thể phát triển
các ứng dụng nội trú (native app) tùy theo trải nghiệm của thiết bị. Mọi thứ lập
trình viên cần phải làm với Objective-C hay Java đều có thể được thực hiện bằng
C# với Xamarin.

1. Giao diện người dùng tương thích với từng nền
tảng
Sử dụng bộ control chuẩn của từng
Tạo giao diện chuẩn quen thuộc cho người dùng của từng hệ điều hành
Xử lý và phản hồi các thao tác người dùng như ứng dụng nguyên bản

2. Truy cập API gốc
Tất cả những gì có thể làm trong Objective-C hay Java đều có thể được thực
hiện bằng C#.
Sử dụng và có quyền truy cập vào toàn bộ các chức năng của nền tảng và
thiết bị, bao gồm cả khả năng thù như: iBeacons, NFC, Bluetooth, Media
Android Fragments…

3. Hiệu suất:
Các ứng dụng Xamarin tăng tốc phần cứng dựa trên nền tảng cụ thể và được
biên dịch cho hiệu suất của từng hệ điều hành, thiết bị. Điều này không thể
đạt được với các giải pháp thông dịch tại thời gian chạy (runtime).

• Sử dụng bộ biên dịch Ahead Of Time (AOT) cho iOS
• Sử dụng bộ biên dịch Just In Time (JIT) cho Android
III.

TÍNH NĂNG CỦA XAMARIN
1. Xamarin Platform
Nói đơn giản, chỉ khác với app truyền thống là dùng C# thay cho Java/ObjC
còn mọi thứ còn lại vẫn được giữ nguyên như: các câu lệnh, cấu trúc Files &
Resources, UI (XML, XIB, StoryBoard)…

Ví dụ: trên Android để bắt đầu 1 activity thì gọi hàm startActivity(), bên này viết
bằng C# thì thành StartActivity(). Bên kia bạn viết bằng Java, object-c, swift
như nào thì bên xamarin cũng viết như thế.
Xamarin Platform cụ thể bao gồm:
• Xamarin.iOS
o Đưa gói ứng dụng lên App Store như native app: nhờ trình biên
dịch Ahead-of-Time (AOT) hỗ trợ biên dịch ứng dụng thành một tệp
o

nhị phân (mã hợp ngữ ARM) dùng trên mọi nền tảng
Truy cập đến mọi API của nền tảng iOS: Xamarin.iOS mang đến
100% bộ SDK iOS và đang cải thiện mạnh mẽ quy tắc đặt tên các

o

bộ API Objective-C và .NET như đang viết code bằng ngôn ngữ gốc
Có thể sử dụng mã nguồn, frameworks, controls Objective-C hiện

o

tại từ C# và liên kết với các bộ giả lập một cách tự động
Có thể xây ứng dụng WatchKit ngay trên Xamarin như xây dựng

GUI trên iOS Designer và debug như trên iOS Simulator
Luôn cập nhật cùng Apple
Xamarin.Android
o Tương tự như Xamarin.iOS chỉ khácXamarin.Android dùng trình
o

biên dịch just-in-time

2. Xamarin.Froms
Giúp bạn có thể xây dựng ứng dụng đa nền tảng một cách nhanh chóng, với
việc chia sẻ code Backend lẫn UI code (viết bằng C#/XAML)

Xây dựng Native User Interface trên cùng một mã nguồn (gần như

100%)
Xây dựng sẵn bộ control riêng (hơn 40 native controls) để viết cross-


platform
Sử dụng C# và XAML để thiết kế giao diện người dùng
Áp dụng MVVM và data bindings trong thiết kế và phát triển

Vậy khi nào dùng Xamarin Form và khi nào dùng Xamarin.Android và
Xamarin.iOS?
Dùng Xamarin Form khi
 Ứng dụng không yêu cầu nhiều

chức năng đặc trưng trên thiết bị.
 Ứng dụng không yêu cầu cao về

UI/UX.
 Sử dụng ngôn ngữ XAML thành
thạo.
Có hiểu biết về code sharing

Dùng Xamarin.Android, Xamarin.iOS
khi
 Ứng dụng đòi hỏi các chức năng
đặc trưng
 Ứng dụng yêu cầu cao về UI/UX
 Ứng dụng đòi hỏi hiệu năng cao
Có hiểu biết về code app Android
và iOS Native

3. Xamarin Test Cloud
 Giúp Tìm lỗi trước khi bạn phát hành với các bài kiểm tra tự động chạy trên
các thiết bị mà khách hàng có thể sử dụng(hơn 2000 thiết bị)

 Bạn có thể kiểm tra tất cả mọi thứ mà người dùng của bạn có thể làm, Từ
vuốt cho đến nhấn hai lần và cuộn.
 Tìm hiểu vấn đề về hiệu suất trên bất kỳ hệ điều hành nào một cách tự động
với công cụ step-by step memory và performance tracking.
 Báo cáo đẹp mắt, dễ nhìn làm mọi việc trở nên dễ dàng để biết khi bạn đã
sẵn sàng cho ra mắt.
 Tự động hoá ứng dụng của bạn bằng việc sử dụng các ngôn ngữ và công
cụ có thật: Xamarin tạo ra một framework gọi là Calabash có thể tự động
hóa và kiểm tra bất kỳ ứng dụng iOS hoặc Android,native(ứng dụng gốc)
hoặc hybrid(ứng dụng lai).Xamarin cung cấp cả các framework tự động hóa
và các thiết bị điện toán đám mây

4. Xamarin Insights


Báo cáo về crash và các cảnh báo khi ứng dụng hoạt động
Nắm bắt cách người dùng tương tác với ứng dụng
Theo dõi các sự kiện thường xảy ra trên ứng dụng
 Cải thiện và nâng cấp ứng dụng ngày một tốt hơn

5. Continuous Integration-CI (tích hợp liên tục)
Tích hợp liên tục là phương pháp phát triển phần mềm đòi hỏi các thành viên
trong nhóm tích hợp công việc thường xuyên. Mỗi ngày, các thành viên đều phải
theo dõi và phát triển công việc của họ ít nhất một lần. Việc này sẽ được một
nhóm khác kiểm tra tự động, nhóm này sẽ tiến hành kiểm thử truy hồi để phát
hiện lỗi nhanh nhất có thể. Cả nhóm thấy rằng phương pháp tiếp cận này giúp
giảm bớt vấn đề về tích hợp hơn và cho phép phát triển phần mềm gắn kết

nhanh hơn
CI là một phương pháp hữu ích khi phát triển các ứng dụng di động chất lượng.
Có rất nhiều lựa chọn khả thi cho việc tích hợp liên tục, Xamarin hỗ trợ 3 sản
phẩm:

IV.

Microsoft Visual Studio Team Services (VSTS) và Team Foundation Server


(TFS)
TeamCity
Jenkins

Thư viện và cộng đồng

Cộng đồng Xamarin hiện ngày càng được mở rộng, ngoài ra ngày 27/4/2016 trong sự
kiện Xamarin Evolve 2016 Xamarin SDK đã chính thức Open Source.
Bạn có 2 nguồn cung cấp các thư viện là Xamarin Components và nuget để truy cập và
cài đặt các thư viện có sẵn hỗ trợ xây dựng app nhanh hơn.

ĐẶC ĐIỂMVới gói công cụ của Xamarin, lập trình viên hoàn toàn có thể viết những ứng dụng hoàn toànbằng C # đồng thời san sẻ những mã lập trình tương tự như lên iOS, Android, Windowsvà Mac. Ngoài ra, lập trình viên cũng hoàn toàn có thể tái sử dụng thư viện. NET trong khivẫn hoàn toàn có thể thuận tiện tích hợp những thư viện và khung tăng trưởng đặc trưng của từngnền tảng. Xamarin cũng phân phối những đoạn mã soạn sẵn hiệu năng cao với khảnăng truy xuất vào toàn bộ những hàm API nội trú để lập trình viên hoàn toàn có thể phát triểncác ứng dụng nội trú ( native app ) tùy theo thưởng thức của thiết bị. Mọi thứ lậptrình viên cần phải làm với Objective-C hay Java đều hoàn toàn có thể được thực thi bằngC # với Xamarin. 1. Giao diện người dùng thích hợp với từng nềntảngSử dụng bộ control chuẩn của từngTạo giao diện chuẩn quen thuộc cho người dùng của từng hệ điều hànhXử lý và phản hồi những thao tác người dùng như ứng dụng nguyên bản2. Truy cập API gốcTất cả những gì hoàn toàn có thể làm trong Objective-C hay Java đều hoàn toàn có thể được thựchiện bằng C #. Sử dụng và có quyền truy vấn vào hàng loạt những công dụng của nền tảng vàthiết bị, gồm có cả năng lực thù như : iBeacons, NFC, Bluetooth, MediaAndroid Fragments … 3. Hiệu suất : Các ứng dụng Xamarin tăng cường phần cứng dựa trên nền tảng đơn cử và đượcbiên dịch cho hiệu suất của từng hệ quản lý và điều hành, thiết bị. Điều này không thểđạt được với những giải pháp thông dịch tại thời hạn chạy ( runtime ). • Sử dụng bộ biên dịch Ahead Of Time ( AOT ) cho iOS • Sử dụng bộ biên dịch Just In Time ( JIT ) cho AndroidIII. TÍNH NĂNG CỦA XAMARIN1. Xamarin PlatformNói đơn thuần, chỉ khác với app truyền thống cuội nguồn là dùng C # thay cho Java / ObjCcòn mọi thứ còn lại vẫn được giữ nguyên như : những câu lệnh, cấu trúc Files và Resources, UI ( XML, XIB, StoryBoard ) … Ví dụ : trên Android để mở màn 1 activity thì gọi hàm startActivity ( ), bên này viếtbằng C # thì thành StartActivity ( ). Bên kia bạn viết bằng Java, object-c, swiftnhư nào thì bên xamarin cũng viết như thế. Xamarin Platform đơn cử gồm có : • Xamarin. iOSo Đưa gói ứng dụng lên App Store như native app : nhờ trình biêndịch Ahead-of-Time ( AOT ) tương hỗ biên dịch ứng dụng thành một tệpnhị phân ( mã hợp ngữ ARM ) dùng trên mọi nền tảngTruy cập đến mọi API của nền tảng iOS : Xamarin. iOS mang đến100 % bộ SDK iOS và đang cải tổ can đảm và mạnh mẽ quy tắc đặt tên cácbộ API Objective-C và. NET như đang viết code bằng ngôn từ gốcCó thể sử dụng mã nguồn, frameworks, controls Objective-C hiệntại từ C # và link với những bộ giả lập một cách tự độngCó thể xây ứng dụng WatchKit ngay trên Xamarin như xây dựngGUI trên iOS Designer và debug như trên iOS SimulatorLuôn update cùng AppleXamarin. Androido Tương tự như Xamarin. iOS chỉ khácXamarin. Android dùng trìnhbiên dịch just-in-time2. Xamarin. FromsGiúp bạn hoàn toàn có thể thiết kế xây dựng ứng dụng đa nền tảng một cách nhanh gọn, vớiviệc san sẻ code Backend lẫn UI code ( viết bằng C # / XAML ) Xây dựng Native User Interface trên cùng một mã nguồn ( gần như100 % ) Xây dựng sẵn bộ control riêng ( hơn 40 native controls ) để viết cross-platformSử dụng C # và XAML để phong cách thiết kế giao diện người dùngÁp dụng MVVM và data bindings trong phong cách thiết kế và phát triểnVậy khi nào dùng Xamarin Form và khi nào dùng Xamarin. Android vàXamarin. iOS ? Dùng Xamarin Form khi  Ứng dụng không nhu yếu nhiềuchức năng đặc trưng trên thiết bị.  Ứng dụng không nhu yếu cao vềUI / UX.  Sử dụng ngôn từ XAML thànhthạo. Có hiểu biết về code sharingDùng Xamarin. Android, Xamarin. iOSkhi  Ứng dụng yên cầu những chức năngđặc trưng  Ứng dụng nhu yếu cao về UI / UX  Ứng dụng yên cầu hiệu năng caoCó hiểu biết về code app Androidvà iOS Native3. Xamarin Test Cloud  Giúp Tìm lỗi trước khi bạn phát hành với những bài kiểm tra tự động hóa chạy trêncác thiết bị mà người mua hoàn toàn có thể sử dụng ( hơn 2000 thiết bị )  Bạn hoàn toàn có thể kiểm tra toàn bộ mọi thứ mà người dùng của bạn hoàn toàn có thể làm, Từvuốt cho đến nhấn hai lần và cuộn.  Tìm hiểu yếu tố về hiệu suất trên bất kể hệ điều hành quản lý nào một cách tự độngvới công cụ step-by step memory và performance tracking.  Báo cáo thích mắt, dễ nhìn làm mọi việc trở nên thuận tiện để biết khi bạn đãsẵn sàng cho ra đời.  Tự động hóa ứng dụng của bạn bằng việc sử dụng những ngôn từ và côngcụ có thật : Xamarin tạo ra một framework gọi là Calabash hoàn toàn có thể tự độnghóa và kiểm tra bất kể ứng dụng iOS hoặc Android, native ( ứng dụng gốc ) hoặc hybrid ( ứng dụng lai ). Xamarin phân phối cả những framework tự động hóa hóavà những thiết bị điện toán đám mây4. Xamarin InsightsBáo cáo về crash và những cảnh báo nhắc nhở khi ứng dụng hoạt độngNắm bắt cách người dùng tương tác với ứng dụngTheo dõi những sự kiện thường xảy ra trên ứng dụng  Cải thiện và tăng cấp ứng dụng ngày một tốt hơn5. Continuous Integration-CI ( tích hợp liên tục ) Tích hợp liên tục là chiêu thức tăng trưởng ứng dụng yên cầu những thành viêntrong nhóm tích hợp việc làm liên tục. Mỗi ngày, những thành viên đều phảitheo dõi và tăng trưởng việc làm của họ tối thiểu một lần. Việc này sẽ được mộtnhóm khác kiểm tra tự động hóa, nhóm này sẽ thực thi kiểm thử truy hồi để pháthiện lỗi nhanh nhất hoàn toàn có thể. Cả nhóm thấy rằng chiêu thức tiếp cận này giúpgiảm bớt yếu tố về tích hợp hơn và được cho phép tăng trưởng ứng dụng gắn kếtnhanh hơnCI là một giải pháp có ích khi tăng trưởng những ứng dụng di động chất lượng. Có rất nhiều lựa chọn khả thi cho việc tích hợp liên tục, Xamarin tương hỗ 3 sảnphẩm : IV.Microsoft Visual Studio Team Services ( VSTS ) và Team Foundation Server ( TFS ) TeamCityJenkinsThư viện và cộng đồngCộng đồng Xamarin hiện ngày càng được lan rộng ra, ngoài những ngày 27/4/2016 trong sựkiện Xamarin Evolve năm nay Xamarin SDK đã chính thức Open Source. Bạn có 2 nguồn phân phối những thư viện là Xamarin Components và nuget để truy vấn vàcài đặt những thư viện có sẵn tương hỗ kiến thiết xây dựng app nhanh hơn .

Source: https://vh2.com.vn
Category : Tin Học