1. Phương pháp kiếm tiền nào cho ứng dụng di động dựa trên việc hiển thị quảng cáo trong ứng dụng cho người dùng?
A. In-app purchases
B. Subscription
C. Freemium
D. Advertising
2. Khái niệm `deep linking` trong ứng dụng di động dùng để chỉ điều gì?
A. Liên kết đến trang chủ của ứng dụng
B. Liên kết đến một vị trí cụ thể bên trong ứng dụng từ bên ngoài ứng dụng
C. Liên kết giữa các ứng dụng khác nhau
D. Liên kết đến các trang web bên ngoài từ ứng dụng
3. Kiểu thiết kế điều hướng nào (navigation pattern) phù hợp nhất cho ứng dụng di động có cấu trúc phân cấp sâu, nhiều cấp độ nội dung?
A. Tab bar navigation
B. Bottom navigation
C. Hamburger menu (Drawer navigation)
D. Gestures based navigation
4. Trong phát triển ứng dụng iOS, ngôn ngữ lập trình Swift có ưu điểm nổi bật nào so với Objective-C?
A. Tương thích ngược tốt hơn với các phiên bản iOS cũ
B. Hiệu năng runtime cao hơn và cú pháp hiện đại, dễ đọc hơn
C. Hỗ trợ nhiều thư viện và framework hơn
D. Dễ dàng tích hợp với các ngôn ngữ lập trình khác
5. Công nghệ nào sau đây thường được sử dụng để xây dựng giao diện người dùng (UI) cho ứng dụng Android native?
A. SwiftUI
B. Jetpack Compose
C. React Native Components
D. HTML, CSS, JavaScript
6. Trong quá trình phát triển ứng dụng di động, `code refactoring` là gì?
A. Viết lại toàn bộ mã nguồn ứng dụng từ đầu
B. Tối ưu hóa mã nguồn hiện có mà không thay đổi chức năng bên ngoài
C. Thêm tính năng mới vào ứng dụng
D. Sửa lỗi bảo mật trong mã nguồn
7. Loại cơ sở dữ liệu nào thường được sử dụng để lưu trữ dữ liệu cục bộ trên thiết bị di động, đặc biệt khi ứng dụng cần hoạt động ngoại tuyến?
A. Cơ sở dữ liệu quan hệ (SQL)
B. Cơ sở dữ liệu NoSQL đám mây
C. Cơ sở dữ liệu NoSQL nhúng (Embedded)
D. Data Warehouse
8. Khung phát triển ứng dụng di động đa nền tảng nào sử dụng ngôn ngữ Dart và được phát triển bởi Google?
A. React Native
B. Xamarin
C. Flutter
D. Ionic
9. Công nghệ nào cho phép ứng dụng web hoạt động tương tự như ứng dụng di động native trên thiết bị, bao gồm cả khả năng truy cập một số tính năng phần cứng?
A. Progressive Web Apps (PWAs)
B. Hybrid Apps
C. Native Apps
D. Web Apps truyền thống
10. Yếu tố nào sau đây quan trọng nhất khi thiết kế trải nghiệm người dùng (UX) cho ứng dụng di động?
A. Sử dụng công nghệ mới nhất
B. Tính năng phong phú và phức tạp
C. Giao diện đẹp mắt và ấn tượng
D. Tính hữu ích, dễ sử dụng và hiệu quả
11. Framework phát triển ứng dụng di động nào của Facebook cho phép xây dựng ứng dụng cross-platform bằng JavaScript và React?
A. Angular
B. Vue.js
C. React Native
D. Ionic
12. Công cụ nào thường được sử dụng để theo dõi và phân tích hành vi người dùng trong ứng dụng di động, giúp cải thiện trải nghiệm và hiệu quả ứng dụng?
A. Hệ thống quản lý cơ sở dữ liệu
B. Công cụ phân tích web server logs
C. Mobile analytics platform (ví dụ: Firebase Analytics)
D. Công cụ kiểm thử hiệu năng mạng
13. Phương pháp nào giúp giảm kích thước ứng dụng di động, đặc biệt quan trọng đối với người dùng có kết nối mạng hạn chế?
A. Tăng cường độ phân giải hình ảnh và video
B. Sử dụng nhiều thư viện và framework bên ngoài
C. Tối ưu hóa kích thước tài nguyên (hình ảnh, âm thanh), sử dụng code splitting và tree shaking
D. Thêm nhiều tính năng phức tạp để tăng giá trị ứng dụng
14. Loại kiến trúc ứng dụng di động nào mà phần lớn logic nghiệp vụ và dữ liệu được xử lý trên server, còn ứng dụng chỉ đóng vai trò hiển thị giao diện người dùng?
A. Ứng dụng native
B. Ứng dụng offline-first
C. Ứng dụng client-server (thin client)
D. Ứng dụng peer-to-peer
15. Trong bảo mật ứng dụng di động, `SSL pinning` dùng để làm gì?
A. Mã hóa toàn bộ dữ liệu ứng dụng
B. Ngăn chặn tấn công Man-in-the-Middle bằng cách xác thực certificate của server
C. Kiểm tra và loại bỏ virus khỏi ứng dụng
D. Giới hạn quyền truy cập của ứng dụng vào hệ thống
16. Công đoạn `unit testing` trong phát triển ứng dụng di động nhằm mục đích gì?
A. Kiểm tra tích hợp giữa các module của ứng dụng
B. Kiểm tra chức năng của từng thành phần (unit) nhỏ nhất của mã nguồn một cách độc lập
C. Kiểm tra hiệu năng tổng thể của ứng dụng
D. Kiểm tra giao diện người dùng và trải nghiệm người dùng
17. Phương pháp kiểm thử ứng dụng di động nào tập trung vào việc đảm bảo ứng dụng hoạt động đúng trên nhiều thiết bị và cấu hình khác nhau?
A. Kiểm thử chức năng
B. Kiểm thử hiệu năng
C. Kiểm thử khả năng tương thích
D. Kiểm thử bảo mật
18. Phương pháp phát triển ứng dụng `cross-platform` có ưu điểm chính nào so với phát triển `native`?
A. Hiệu năng vượt trội và truy cập phần cứng trực tiếp
B. Khả năng tùy biến giao diện người dùng cao hơn
C. Tiết kiệm thời gian và chi phí phát triển cho nhiều nền tảng
D. Ít phụ thuộc vào các thư viện và framework bên ngoài
19. Ngôn ngữ lập trình chính thức được sử dụng để phát triển ứng dụng cho hệ điều hành Android là gì?
A. Swift
B. Objective-C
C. Kotlin
D. C#
20. Trong ngữ cảnh phát triển ứng dụng di động, `technical debt` (nợ kỹ thuật) đề cập đến điều gì?
A. Chi phí thuê server và hạ tầng kỹ thuật
B. Các quyết định thiết kế hoặc code không tối ưu được thực hiện để đáp ứng thời hạn, dẫn đến khó khăn trong bảo trì và phát triển sau này
C. Số lượng lỗi (bugs) còn tồn đọng trong ứng dụng
D. Thời gian cần thiết để học công nghệ mới
21. Loại kiểm thử nào tập trung vào việc xác định các lỗ hổng bảo mật trong ứng dụng di động?
A. Kiểm thử tích hợp
B. Kiểm thử hệ thống
C. Kiểm thử bảo mật
D. Kiểm thử hồi quy
22. Phương pháp nào sau đây giúp ứng dụng di động hoạt động nhanh hơn và mượt mà hơn, đặc biệt khi xử lý dữ liệu lớn hoặc tác vụ phức tạp?
A. Tăng kích thước bộ nhớ cache
B. Sử dụng nhiều animation phức tạp
C. Tối ưu hóa thuật toán, sử dụng multithreading và lazy loading
D. Giảm độ phân giải hình ảnh để tiết kiệm bộ nhớ
23. Loại thông báo nào (push notification) thường được sử dụng để gửi thông tin quảng cáo hoặc khuyến mãi đến người dùng ứng dụng di động?
A. Transactional notifications
B. Promotional notifications
C. Alert notifications
D. Silent notifications
24. Trong ngữ cảnh UX/UI cho ứng dụng di động, `affordance` (tính năng gợi ý) đề cập đến điều gì?
A. Khả năng tùy biến giao diện người dùng
B. Thuộc tính của một đối tượng giao diện gợi ý cách sử dụng nó
C. Hiệu năng phản hồi của ứng dụng
D. Tính năng bảo mật của ứng dụng
25. Nguyên tắc thiết kế UI/UX nào nhấn mạnh việc giao diện người dùng cần đơn giản, dễ hiểu và dễ sử dụng?
A. Tính nhất quán
B. Tính thẩm mỹ
C. Tính trực quan
D. Tính đơn giản
26. Quy trình `App Store Optimization` (ASO) nhằm mục đích gì?
A. Tối ưu hóa hiệu năng ứng dụng
B. Tối ưu hóa mã nguồn ứng dụng
C. Tối ưu hóa ứng dụng để tăng khả năng hiển thị và tải xuống trên cửa hàng ứng dụng
D. Tối ưu hóa chi phí phát triển ứng dụng
27. Quy trình phát triển ứng dụng di động Agile nhấn mạnh điều gì?
A. Kế hoạch chi tiết và tuân thủ nghiêm ngặt kế hoạch
B. Làm việc theo tài liệu đầy đủ và chi tiết
C. Linh hoạt, thích ứng với thay đổi và phản hồi nhanh chóng
D. Phát triển theo từng giai đoạn lớn và bàn giao cuối kỳ
28. Công nghệ `mobile backend as a service` (MBaaS) cung cấp dịch vụ chính nào cho nhà phát triển ứng dụng di động?
A. Thiết kế giao diện người dùng
B. Quản lý cơ sở dữ liệu, xác thực người dùng, push notifications, lưu trữ đám mây
C. Kiểm thử và triển khai ứng dụng
D. Tối ưu hóa hiệu năng ứng dụng
29. Mô hình kiến trúc phần mềm nào thường được sử dụng trong phát triển ứng dụng di động để tách biệt logic giao diện người dùng, logic nghiệp vụ và dữ liệu?
A. Monolithic
B. Microservices
C. MVC (Model-View-Controller)
D. Client-Server
30. Trong ngữ cảnh phát triển ứng dụng di động, `API` viết tắt của cụm từ nào?
A. Application Programming Interface
B. Advanced Program Instruction
C. Automated Process Integration
D. Algorithm Performance Index