1. Trong thiết kế UX∕UI cho ứng dụng di động, 'affordance′ đề cập đến điều gì?
A. Khả năng ứng dụng tương thích với nhiều loại thiết bị khác nhau.
B. Thuộc tính của một đối tượng giao diện cho biết cách nó có thể được sử dụng (ví dụ, nút bấm cho biết có thể nhấn).
C. Tính thẩm mỹ và đẹp mắt của giao diện người dùng.
D. Tốc độ phản hồi và hiệu suất của ứng dụng.
2. Trong thiết kế UX, 'usability testing′ (kiểm thử khả năng sử dụng) nhằm mục đích gì?
A. Kiểm tra mã nguồn và tìm lỗi lập trình.
B. Đánh giá mức độ dễ dàng và hiệu quả khi người dùng sử dụng ứng dụng để hoàn thành mục tiêu.
C. Đo lường hiệu suất và tốc độ phản hồi của ứng dụng.
D. Đảm bảo ứng dụng tuân thủ các tiêu chuẩn bảo mật.
3. Khi lựa chọn nền tảng phát triển ứng dụng di động, yếu tố nào sau đây quan trọng nhất cần xem xét nếu mục tiêu là tiếp cận số lượng người dùng lớn nhất có thể?
A. Chi phí phát triển thấp nhất.
B. Thời gian phát triển nhanh nhất.
C. Khả năng tương thích với nhiều nền tảng (đa nền tảng).
D. Hiệu suất ứng dụng cao nhất trên một nền tảng cụ thể.
4. Nguyên tắc 'Mobile First′ trong phát triển ứng dụng di động nhấn mạnh điều gì?
A. Ưu tiên phát triển ứng dụng cho máy tính để bàn trước, sau đó tối ưu cho di động.
B. Thiết kế và phát triển ứng dụng di động trước, sau đó mở rộng hoặc điều chỉnh cho các nền tảng khác (nếu cần).
C. Phát triển đồng thời ứng dụng cho cả di động và máy tính để bàn với chức năng tương đương.
D. Chỉ tập trung phát triển ứng dụng cho các thiết bị di động màn hình lớn (tablet).
5. Loại hình tấn công bảo mật nào thường nhắm vào các ứng dụng di động bằng cách chèn mã độc vào ứng dụng hợp pháp?
A. Tấn công DDoS (Distributed Denial of Service).
B. Tấn công SQL Injection.
C. Tấn công Trojan.
D. Tấn công Phishing.
6. Khi thiết kế điều hướng (navigation) cho ứng dụng di động, nguyên tắc nào sau đây là quan trọng để đảm bảo trải nghiệm người dùng tốt?
A. Sử dụng càng nhiều hiệu ứng chuyển động phức tạp càng tốt.
B. Giữ cho điều hướng đơn giản, trực quan và dễ dự đoán.
C. Ẩn điều hướng để tạo sự bất ngờ cho người dùng.
D. Sử dụng quá nhiều cấp độ điều hướng để chứa nhiều nội dung.
7. Khái niệm 'deep linking′ trong ứng dụng di động có nghĩa là gì?
A. Liên kết đến trang chủ của ứng dụng trên App Store.
B. Liên kết trực tiếp người dùng đến một nội dung 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 trang khác nhau trong cùng một ứng dụng web.
D. Liên kết để chia sẻ ứng dụng với bạn bè.
8. Trong phát triển ứng dụng di động, 'code refactoring′ (tái cấu trúc mã) được thực hiện nhằm mục đích chính nào?
A. Thêm tính năng mới cho ứng dụng.
B. Sửa lỗi và vá các lỗ hổng bảo mật.
C. Cải thiện cấu trúc mã, tăng tính dễ đọc, dễ bảo trì và hiệu suất mà không thay đổi chức năng bên ngoài của ứng dụng.
D. Tối ưu hóa giao diện người dùng.
9. Trong phát triển ứng dụng di động native (ứng dụng thuần), hiệu suất thường cao hơn so với ứng dụng hybrid (ứng dụng lai) vì lý do chính nào?
A. Ứng dụng native được phát triển bằng các ngôn ngữ lập trình web (HTML, CSS, JavaScript).
B. Ứng dụng native truy cập trực tiếp vào phần cứng và API của thiết bị, không qua lớp trung gian.
C. Ứng dụng hybrid có giao diện người dùng phức tạp hơn.
D. Ứng dụng hybrid thường được phát triển bởi các nhà phát triển ít kinh nghiệm hơn.
10. Khi ứng dụng di động cần lưu trữ dữ liệu cục bộ trên thiết bị của người dùng (ví dụ, cài đặt ứng dụng, dữ liệu offline), phương pháp nào thường được sử dụng?
A. Lưu trữ trên đám mây (Cloud Storage).
B. Lưu trữ trong bộ nhớ cache của trình duyệt web.
C. Sử dụng cơ sở dữ liệu cục bộ (ví dụ, SQLite, Realm).
D. Gửi dữ liệu về máy chủ mỗi khi cần lưu trữ.
11. Khi phát triển ứng dụng di động có tích hợp bản đồ và định vị, công nghệ nào thường được sử dụng để cung cấp dịch vụ bản đồ?
A. Bluetooth.
B. NFC (Near Field Communication).
C. GPS (Global Positioning System) và các dịch vụ bản đồ như Google Maps, Apple Maps.
D. Wi-Fi Direct.
12. Quy trình 'App Store Optimization′ (ASO) tập trung vào việc tối ưu hóa những yếu tố nào?
A. Mã nguồn và hiệu suất kỹ thuật của ứng dụng.
B. Chiến lược marketing trên mạng xã hội để quảng bá ứng dụng.
C. Các yếu tố trên trang App Store và Google Play Store để cải thiện khả năng hiển thị và lượt tải ứng dụng.
D. Thiết kế giao diện người dùng và trải nghiệm người dùng trong ứng dụng.
13. Phương pháp 'Continuous Integration∕Continuous Deployment′ (CI∕CD) giúp ích gì trong phát triển ứng dụng di động?
A. Giảm chi phí phát triển ứng dụng.
B. Tăng tốc độ phát triển và triển khai ứng dụng, tự động hóa quy trình tích hợp và phân phối.
C. Đảm bảo ứng dụng không có lỗi bảo mật.
D. Cải thiện hiệu suất ứng dụng trên thiết bị di động.
14. Phương pháp kiếm tiền nào sau đây phổ biến cho các ứng dụng di động miễn phí?
A. Bán ứng dụng trực tiếp (Paid Apps).
B. Mô hình đăng ký (Subscription).
C. Quảng cáo trong ứng dụng (In-app Advertising).
D. Tính phí tải xuống (Download Fee).
15. Chức năng 'Push Notification′ trong ứng dụng di động thường được sử dụng để làm gì?
A. Thu thập dữ liệu vị trí người dùng liên tục.
B. Gửi thông báo, cập nhật hoặc khuyến mãi trực tiếp đến người dùng ngay cả khi họ không mở ứng dụng.
C. Theo dõi hành vi người dùng trong ứng dụng.
D. Tự động sao lưu dữ liệu ứng dụng lên đám mây.
16. Trong quy trình kiểm thử ứng dụng di động, 'Unit Testing′ tập trung vào việc kiểm tra thành phần nào?
A. Toàn bộ hệ thống ứng dụng sau khi tích hợp tất cả các module.
B. Từng module hoặc thành phần (unit) riêng lẻ của ứng dụng.
C. Giao diện người dùng và trải nghiệm người dùng.
D. Khả năng chịu tải và hiệu suất của ứng dụng khi có nhiều người dùng.
17. Công cụ nào sau đây thường được sử dụng để quản lý phiên bản mã nguồn (version control) trong dự án phát triển ứng dụng di động?
A. Firebase.
B. Git.
C. Jenkins.
D. Docker.
18. Ngôn ngữ lập trình chính thức được sử dụng để phát triển ứng dụng di động cho nền tảng iOS là gì?
A. Java.
B. Kotlin.
C. Swift.
D. C#.
19. Trong ngữ cảnh phát triển ứng dụng di động, 'API′ (Application Programming Interface) dùng để làm gì?
A. Thiết kế giao diện người dùng ứng dụng.
B. Quản lý cơ sở dữ liệu ứng dụng.
C. Cho phép các ứng dụng khác nhau giao tiếp và trao đổi dữ liệu với nhau.
D. Kiểm thử hiệu suất ứng dụng.
20. Loại hình kiểm thử nào sau đây mô phỏng trải nghiệm người dùng thực tế bằng cách cho người dùng thử nghiệm ứng dụng?
A. Unit Testing.
B. Integration Testing.
C. System Testing.
D. User Acceptance Testing (UAT).
21. Mục tiêu chính của việc 'phân tích người dùng′ (user research) trước khi phát triển ứng dụng di động là gì?
A. Chọn công nghệ phát triển ứng dụng phù hợp nhất.
B. Xác định các đối thủ cạnh tranh trên thị trường.
C. Hiểu rõ nhu cầu, mong muốn và hành vi của người dùng mục tiêu để thiết kế ứng dụng phù hợp.
D. Dự đoán doanh thu tiềm năng của ứng dụng.
22. Công cụ 'Firebase′ của Google cung cấp dịch vụ nào sau đây cho phát triển ứng dụng di động?
A. Thiết kế giao diện người dùng (UI Design).
B. Kiểm thử đơn vị (Unit Testing).
C. Cơ sở dữ liệu thời gian thực (Realtime Database) và dịch vụ backend.
D. Quản lý phiên bản mã nguồn (Version Control).
23. Thuật ngữ 'responsive design′ trong phát triển ứng dụng di động thường liên quan đến khía cạnh nào?
A. Khả năng ứng dụng phản hồi nhanh chóng với tương tác của người dùng.
B. Khả năng ứng dụng tự động điều chỉnh giao diện để phù hợp với kích thước màn hình khác nhau của thiết bị.
C. Khả năng ứng dụng phục hồi sau sự cố hoặc lỗi.
D. Khả năng ứng dụng tương thích với các phiên bản hệ điều hành cũ hơn.
24. Loại kiến trúc ứng dụng di động nào thường được ưu tiên khi cần xử lý dữ liệu phức tạp và đảm bảo tính bảo mật cao ở phía máy chủ?
A. Kiến trúc ứng dụng web tĩnh (Static Web App).
B. Kiến trúc ứng dụng thuần client-side (Client-side only App).
C. Kiến trúc client-server (Client-Server Architecture).
D. Kiến trúc serverless (Serverless Architecture).
25. Trong quá trình phát triển ứng dụng di động, giai đoạn 'phân tích yêu cầu′ (requirements analysis) có vai trò gì?
A. Viết mã nguồn cho ứng dụng.
B. Thiết kế giao diện người dùng.
C. Thu thập, phân tích và xác định rõ các yêu cầu chức năng và phi chức năng của ứng dụng từ người dùng và các bên liên quan.
D. Kiểm thử ứng dụng và sửa lỗi.
26. Công nghệ nào sau đây cho phép phát triển ứng dụng di động đa nền tảng (cross-platform) bằng cách sử dụng ngôn ngữ JavaScript và React?
A. Swift.
B. Kotlin.
C. React Native.
D. Java.
27. Yếu tố nào sau đây KHÔNG phải là một phần của 'User Interface′ (UI) trong ứng dụng di động?
A. Nút bấm (Buttons).
B. Cơ sở dữ liệu (Database).
C. Biểu tượng (Icons).
D. Màu sắc (Colors).
28. Khái niệm 'MVP′ (Minimum Viable Product) trong phát triển ứng dụng di động có nghĩa là gì?
A. Sản phẩm hoàn chỉnh với đầy đủ tính năng và giao diện người dùng tốt nhất.
B. Sản phẩm tối thiểu với các tính năng cốt lõi, đủ để thử nghiệm và thu thập phản hồi từ người dùng.
C. Sản phẩm có chi phí phát triển thấp nhất, không quan trọng tính năng.
D. Sản phẩm được phát triển nhanh nhất có thể, bỏ qua giai đoạn kiểm thử.
29. Yếu tố nào sau đây KHÔNG thuộc về khía cạnh 'backend′ của ứng dụng di động?
A. Cơ sở dữ liệu (Database).
B. Giao diện người dùng (User Interface).
C. Máy chủ ứng dụng (Application Server).
D. API (Application Programming Interface).
30. Phương pháp 'Agile′ trong phát triển ứng dụng di động ưu tiên điều gì?
A. Lập kế hoạch chi tiết và cố định toàn bộ yêu cầu dự án từ đầu.
B. Thay đổi yêu cầu là không được phép sau khi giai đoạn phân tích đã hoàn thành.
C. Linh hoạt và thích ứng với thay đổi, phát triển ứng dụng theo từng vòng lặp ngắn.
D. Tài liệu hóa chi tiết mọi khía cạnh của dự án trước khi bắt đầu phát triển.