Bài giảng Phát triển ứng dụng đa nền tảng - Chương 3.2: Cross-Platform
lượt xem 7
download
Bài giảng Phát triển ứng dụng đa nền tảng - Chương 3.2: Cross-Platform. Chương này cung cấp cho học viên những nội dung về: các công nghệ phát triển ứng dụng di động; các nội dung chính về Cross-platform framework; Flutter roadmap;... Mời các bạn cùng tham khảo chi tiết nội dung bài giảng!
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Phát triển ứng dụng đa nền tảng - Chương 3.2: Cross-Platform
- Cross-Platform Roadmap 1
- Các công nghệ phát triển ứng dụng di động • Ứng dụng di động có thể được phát triển theo nhiều cách tiếp cận: 2
- Các công nghệ phát triển ứng dụng di động • Native applications: 3
- Các công nghệ phát triển ứng dụng di động • Web applications (Web app / PWA): • Cách tiếp cận web dựa trên trình duyệt web dành cho thiết bị di động. • Sử dụng HTML, CSS và JavaScript; và dựa vào trình duyệt làm môi trường runtime và hưởng lợi từ việc hỗ trợ trình duyệt của các nền tảng di động. • Trong cách tiếp cận này, ứng dụng được triển khai như một trang web được tối ưu hóa duy nhất cho thiết bị di động. 4
- Các công nghệ phát triển ứng dụng di động • Web applications (Web app / PWA): Ưu điểm Nhược điểm • Các trình duyệt web đã có sẵn trên • Khó khăn khi truy cập các API gốc tất cả các thiết bị có liên quan (mặc dù một số ví dụ như dịch vụ vị trí hiện được hỗ trợ) • Hỗ trợ CSS cho sự khác biệt về độ phân giải màn hình • Chậm! Phụ thuộc vào kết nối mạng khả dụng • Tận dụng kỹ năng thiết kế web hiện có. Số lượng lớn các framework CSS • Khó phù hợp với giao diện native & JS có sẵn với tài liệu • Không thể phân phối qua các cửa hàng ứng dụng • Không cần cập nhật ứng dụng di động 5
- Các công nghệ phát triển ứng dụng di động • Hybrid applications: 6
- Các công nghệ phát triển ứng dụng di động • Hybrid applications: • Hybrid: một thuật ngữ chỉ nhiều loại ứng dụng cố gắng thu hẹp khoảng cách giữa phát triển web và phát triển gốc (native) • Đơn giản nhất, hybrid có thể chỉ liên quan đến việc đóng gói một ứng dụng web để nó có thể được triển khai cho các cửa hàng ứng dụng khác nhau • Hybrid cũng có thể phức tạp hơn qua việc sử dụng native UI và native API. 7
- Các công nghệ phát triển ứng dụng di động • Hybrid applications: ví dụ sử dụng Webview Native Code HTML Webview Native Code 8
- Các công nghệ phát triển ứng dụng di động • Hybrid applications: Ưu điểm Nhược điểm • Nhiều ưu điểm của các ứng dụng web • Vẫn còn chậm! (mặc dù bây giờ tắc tiêu chuẩn (tận dụng các bộ kỹ năng & nghẽn là CPU / bộ nhớ hơn là mạng) framework hiện có) • Vẫn khó để đạt được giao diện và • Không phụ thuộc vào mạng cảm giác nguyên bản • Hỗ trợ plugin JavaScript cho một số • Phân phối qua các cửa hàng ứng API gốc – cho phép chức năng không dụng - hiện phải tuân theo các nguyên thể thực hiện được với các ứng dụng tắc thiết kế (có thể khắc nghiệt, đặc web tiêu chuẩn biệt là đối với iOS) • Phân phối qua các cửa hàng ứng dụng 9
- Các công nghệ phát triển ứng dụng di động • Interpreted App: • Phương pháp thông dịch sử dụng ngôn ngữ chung (như JavaScript hoặc các ngôn ngữ khác) để viết mã giao diện người dùng và tạo thành phần tương đương cho thành phần gốc cho mỗi nền tảng. • Các tính năng native được cung cấp bởi một lớp trừu tượng giúp diễn giải mã trong thời gian chạy trên các nền tảng khác nhau để truy cập các API gốc. 10
- Các công nghệ phát triển ứng dụng di động • Interpreted App: với công nghệ JavaScript 11
- Các công nghệ phát triển ứng dụng di động • Interpreted App: Ưu điểm Nhược điểm • Cho phép các giao diện người dùng • Phụ thuộc vào môi trường phát triển. gốc • Nói chính xác hơn, các tính năng mới dành riêng cho nền tảng như các tính năng giao diện người dùng mới sẽ không được cung cấp cho các ứng dụng trừ khi chúng được hỗ trợ bởi môi trường phát triển. • Sự suy giảm hiệu suất ứng dụng do gọi lớp trừu tượng trong thời gian chạy. 12
- Các công nghệ phát triển ứng dụng di động • Cross-Compiled App: • Trong phương pháp biên dịch chéo, các nhà phát triển viết mã với việc sử dụng bất kỳ ngôn ngữ lập trình thông thường nào. • Các mã này được chuyển đổi bởi các trình biên dịch chéo thành một mã gốc cụ thể. 13
- Các công nghệ phát triển ứng dụng di động • Cross-Compiled App: Ưu điểm Nhược điểm • Có thể còn nhanh hơn các ứng dụng • Không thể tận dụng kỹ năng phát triển dựa trên JavaScript - có thể đạt đến web hiện có tốc độ của các ứng dụng gốc hoàn • Có thể cần học nền tảng hoàn toàn toàn mới • Giao diện tự nhiên • Có thể sử dụng ngôn ngữ lập trình "thực" 14
- Các công nghệ phát triển ứng dụng di động • Flutter: • Flutter không phụ thuộc vào widget của nhà sản xuất thiết bị gốc, nó tự hiển thị các giao diện đồ họa dựa trên engine hiệu năng cao của riêng nó. • Các widget được hiển thị trên Skia canvas và gửi lên trên nền tảng thiết bị. Nền tảng thiết bị sẽ hiển thị các canvas và gửi lại các sự kiện khi người dùng tương tác 15
- Các nội dung chính về Cross-platform framework Tổng quan về Framework Xây dựng ứng dụng 1 2 3 4 5 Navigation and Data and Language Basic Architectural User interface routing backend overview and UI development • State management • Reactive and declarative approach • Data persistence • Building complex layouts • Networking (RESTful • Assets management APIs, jSON Data Parsing,...) • Internationalization Kiểm thử và xuất bản ứng dụng 9 8 7 6 Quản lý chất Testing, Improving User Platform lượng phần Debugging, and Experience integration mềm + Bảo trì Deploymen phần mềm • Graphic Manipulations 16 • Animations
- https://github.com/olexale/flutter_roadmap Flutter roadmap 17
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Phát triển ứng dụng Web – Web Programming: Chương 0 - ThS. Lương Trần Hy Hiến
20 p | 243 | 19
-
Bài giảng Phát triển ứng dụng web: Bài 3 - Lê Đình Thanh
42 p | 123 | 11
-
Bài giảng Phát triển ứng dụng web: Bài 7 - Lê Đình Thanh
77 p | 82 | 9
-
Bài giảng Phát triển ứng dụng web 1: HTML From - ĐH Sài Gòn
34 p | 91 | 8
-
Bài giảng Phát triển ứng dụng đa nền tảng - Chương 7: Nguyên lý phát triển ứng dụng với Flutter
88 p | 24 | 8
-
Bài giảng Phát triển ứng dụng đa nền tảng - Chương 8: Đánh giá hiệu năng ứng dụng đa nền tảng
66 p | 24 | 8
-
Bài giảng Phát triển ứng dụng đa nền tảng - Chương 2: Tổng quan về kiến trúc của di động
53 p | 23 | 7
-
Bài giảng Phát triển ứng dụng đa nền tảng - Chương 0: Giới thiệu về môn học
27 p | 33 | 7
-
Bài giảng Phát triển ứng dụng đa nền tảng - Chương 1: Tổng quan về phát triển ứng dụng di động
46 p | 32 | 6
-
Bài giảng Phát triển ứng dụng đa nền tảng - Chương 4: Giới thiệu JS, JSX và ReactNative
74 p | 25 | 6
-
Bài giảng Phát triển ứng dụng web 1: Tổng quan về xây dựng ứng dụng web - ĐH Sài Gòn
60 p | 101 | 6
-
Bài giảng Phát triển ứng dụng: Chương 4
27 p | 70 | 6
-
Bài giảng Phát triển ứng dụng web: Bài 4 - Lê Đình Thanh
27 p | 80 | 5
-
Bài giảng Phát triển ứng dụng web 1: C.R.A.P - ĐH Sài Gòn
24 p | 71 | 5
-
Bài giảng Phát triển ứng dụng Web: Bài 6 - Nguyễn Hữu Thể
24 p | 43 | 4
-
Bài giảng Phát triển ứng dụng Web: Bài 4 - Nguyễn Hữu Thể
10 p | 47 | 4
-
Bài giảng Phát triển ứng dụng web: Chương 0 - Lê Đình Thanh
10 p | 16 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn