1. Yếu tố nào sau đây quan trọng nhất để đảm bảo khả năng tiếp cận (accessibility) của ứng dụng di động cho người dùng khuyết tật?
A. Sử dụng màu sắc bắt mắt
B. Thiết kế giao diện phức tạp
C. Cung cấp văn bản thay thế cho hình ảnh
D. Sử dụng hiệu ứng động quá mức
2. Loại kiến trúc ứng dụng nào tách biệt giao diện người dùng (UI) khỏi logic nghiệp vụ và lớp dữ liệu?
A. Kiến trúc monolithic
B. Kiến trúc microservices
C. Kiến trúc MVC (Model-View-Controller)
D. Kiến trúc serverless
3. Loại kiểm thử nào tập trung vào việc đánh giá hiệu năng của ứng dụng di động dưới các điều kiện tải khác nhau?
A. Kiểm thử chức năng
B. Kiểm thử giao diện người dùng (UI)
C. Kiểm thử hiệu năng
D. Kiểm thử bảo mật
4. Phương pháp nào giúp che giấu mã nguồn của ứng dụng di động để ngăn chặn việc đảo ngược mã (reverse engineering) và sao chép trái phép?
A. Code minification
B. Code obfuscation
C. Code compression
D. Code encryption
5. Phương pháp nào giúp giảm thiểu mức tiêu thụ pin của ứng dụng di động?
A. Tăng tần suất cập nhật vị trí
B. Sử dụng hiệu ứng động liên tục
C. Tối ưu hóa việc sử dụng mạng và CPU
D. Tải tất cả dữ liệu cùng một lúc
6. Công cụ nào giúp tự động hóa quá trình kiểm thử ứng dụng di động trên nhiều thiết bị và hệ điều hành khác nhau?
A. Trình biên dịch (Compiler)
B. Môi trường phát triển tích hợp (IDE)
C. Khung kiểm thử tự động (Automated testing framework)
D. Hệ thống quản lý cơ sở dữ liệu (DBMS)
7. Nguyên tắc thiết kế UI/UX nào nhấn mạnh việc cung cấp phản hồi rõ ràng và kịp thời cho người dùng khi họ tương tác với ứng dụng?
A. Tính nhất quán
B. Khả năng học
C. Phản hồi
D. Tính thẩm mỹ
8. Phương pháp nào giúp bảo vệ dữ liệu nhạy cảm trong ứng dụng di động, chẳng hạn như thông tin đăng nhập và dữ liệu cá nhân?
A. Mã hóa dữ liệu (encryption)
B. Sử dụng giao thức HTTP
C. Lưu trữ dữ liệu trên thiết bị
D. Chia sẻ dữ liệu với bên thứ ba
9. Phương pháp phát triển ứng dụng di động nào cho phép phát triển ứng dụng cho nhiều nền tảng (iOS, Android) từ một codebase duy nhất?
A. Phát triển ứng dụng native
B. Phát triển ứng dụng web
C. Phát triển ứng dụng hybrid/cross-platform
D. Phát triển ứng dụng backend
10. Phương pháp nào giúp giảm thiểu kích thước ứng dụng di động, từ đó cải thiện tốc độ tải xuống và cài đặt?
A. Sử dụng hình ảnh chất lượng cao
B. Tối ưu hóa tài nguyên (images, code, etc.)
C. Thêm nhiều thư viện bên ngoài
D. Tăng độ phân giải của video
11. Phương pháp nào giúp cải thiện trải nghiệm người dùng bằng cách tải trước dữ liệu và tài nguyên cần thiết trước khi người dùng yêu cầu?
A. Lazy loading
B. Caching
C. Code splitting
D. Minification
12. Công nghệ nào cho phép ứng dụng di động hoạt động ngoại tuyến bằng cách lưu trữ dữ liệu cục bộ trên thiết bị?
A. Cloud computing
B. Serverless computing
C. Local storage (ví dụ: SQLite)
D. Edge computing
13. Mô hình phát triển ứng dụng nào tập trung vào việc phát hành các bản cập nhật nhỏ và thường xuyên để nhanh chóng đáp ứng các yêu cầu thay đổi của người dùng?
A. Waterfall
B. Agile
C. Big Bang
D. Spiral
14. Kiểu tấn công nào lợi dụng việc ứng dụng lưu trữ dữ liệu nhạy cảm (ví dụ: token) không an toàn trên thiết bị di động?
A. Tấn công man-in-the-middle
B. Tấn công reverse engineering
C. Tấn công local data storage
D. Tấn công cross-site scripting (XSS)
15. Yếu tố nào sau đây quan trọng nhất để đảm bảo tính bảo mật của API mà ứng dụng di động sử dụng để giao tiếp với máy chủ?
A. Sử dụng giao thức HTTP
B. Xác thực và ủy quyền (Authentication and authorization)
C. Lưu trữ khóa API trên thiết bị
D. Chia sẻ khóa API công khai
16. Khái niệm nào mô tả quá trình tối ưu hóa ứng dụng di động để đạt được thứ hạng cao hơn trong kết quả tìm kiếm của các cửa hàng ứng dụng (App Store, Google Play)?
A. SEO (Search Engine Optimization)
B. ASO (App Store Optimization)
C. SEM (Search Engine Marketing)
D. CRO (Conversion Rate Optimization)
17. Loại tấn công bảo mật nào khai thác các lỗ hổng trong ứng dụng di động để truy cập trái phép vào dữ liệu người dùng hoặc hệ thống?
A. Tấn công DDoS
B. Tấn công phishing
C. Tấn công malware
D. Tấn công SQL injection
18. Trong quy trình phát triển ứng dụng di động, giai đoạn nào tập trung vào việc xác định các yêu cầu chức năng và phi chức năng của ứng dụng?
A. Kiểm thử và triển khai
B. Thiết kế giao diện người dùng (UI)
C. Phân tích yêu cầu
D. Phát triển và lập trình
19. Kỹ thuật nào cho phép ứng dụng di động tải dữ liệu và hiển thị nội dung một cách dần dần khi người dùng cuộn trang, thay vì tải toàn bộ nội dung cùng một lúc?
A. Eager loading
B. Lazy loading
C. Code obfuscation
D. Sharding
20. Loại cơ sở dữ liệu nào thường được sử dụng để lưu trữ dữ liệu có cấu trúc trong ứng dụng di động?
A. Cơ sở dữ liệu NoSQL
B. Cơ sở dữ liệu quan hệ (ví dụ: SQLite, MySQL)
C. Cơ sở dữ liệu đồ thị
D. Cơ sở dữ liệu hướng đối tượng
21. Quy trình nào giúp đảm bảo rằng ứng dụng di động tuân thủ các nguyên tắc và tiêu chuẩn của cửa hàng ứng dụng (App Store, Google Play) trước khi được phát hành?
A. Quy trình phát triển (Development process)
B. Quy trình kiểm thử (Testing process)
C. Quy trình đánh giá ứng dụng (App review process)
D. Quy trình triển khai (Deployment process)
22. Yếu tố nào sau đây cần được xem xét khi thiết kế ứng dụng di động cho các thiết bị có kích thước màn hình khác nhau?
A. Sử dụng bố cục cố định
B. Sử dụng đơn vị đo tuyệt đối (pixels)
C. Sử dụng thiết kế đáp ứng (responsive design)
D. Bỏ qua các thiết bị có màn hình nhỏ
23. Phương pháp kiếm tiền nào phổ biến cho các ứng dụng di động miễn phí, bằng cách hiển thị quảng cáo trong ứng dụng?
A. Bán ứng dụng trả phí
B. Mua trong ứng dụng (In-app purchases)
C. Quảng cáo trong ứng dụng (In-app advertising)
D. Mô hình đăng ký (Subscription)
24. Kỹ thuật nào cho phép ứng dụng di động tự động điều chỉnh giao diện người dùng (UI) dựa trên ngôn ngữ và khu vực địa lý của người dùng?
A. Localization
B. Internationalization
C. Globalization
D. All of the above
25. API nào cho phép ứng dụng di động truy cập các tính năng phần cứng của thiết bị, chẳng hạn như camera, GPS, và cảm biến?
A. API của bên thứ ba
B. API hệ điều hành (OS API)
C. API web
D. API đám mây
26. Loại thông báo nào được gửi đến thiết bị di động ngay cả khi ứng dụng không hoạt động, để thông báo cho người dùng về các sự kiện quan trọng?
A. Thông báo trong ứng dụng (In-app notifications)
B. Thông báo đẩy (Push notifications)
C. Thông báo SMS
D. Thông báo email
27. Phương pháp nào giúp xác định và giải quyết các vấn đề tiềm ẩn trong ứng dụng di động trước khi phát hành chính thức?
A. Phát triển nhanh (Agile)
B. Kiểm thử Beta
C. Phát triển thác nước (Waterfall)
D. Phát triển lặp (Iterative)
28. Công cụ nào sau đây thường được sử dụng để quản lý mã nguồn và theo dõi các thay đổi trong quá trình phát triển ứng dụng di động?
A. Microsoft Word
B. Adobe Photoshop
C. Git
D. Microsoft Excel
29. Công cụ nào giúp phân tích hành vi người dùng trong ứng dụng di động, từ đó đưa ra các quyết định cải thiện sản phẩm?
A. Google Analytics
B. Firebase Analytics
C. Amplitude
D. Tất cả các đáp án trên
30. Framework nào của Google được sử dụng để phát triển ứng dụng di động đa nền tảng với hiệu suất cao?
A. React Native
B. Ionic
C. Flutter
D. Xamarin