1. Loại tấn công nào sau đây nhắm vào các ứng dụng di động bằng cách chèn mã độc vào các ứng dụng hợp pháp?
A. Phishing.
B. Malware injection.
C. Denial-of-service (DoS).
D. Cross-site scripting (XSS).
2. Mô hình thiết kế nào sau đây thường được sử dụng để tách biệt dữ liệu (data), giao diện người dùng (UI) và logic điều khiển (control logic) trong ứng dụng di động?
A. Singleton.
B. Factory.
C. Model-View-Controller (MVC).
D. Observer.
3. Điều gì sau đây là một lợi ích của việc sử dụng các thành phần (components) có thể tái sử dụng trong phát triển ứng dụng di động?
A. Giảm thời gian phát triển và tăng tính nhất quán của ứng dụng.
B. Tăng độ phức tạp của mã nguồn.
C. Giảm hiệu suất ứng dụng.
D. Khó bảo trì hơn.
4. Loại kiểm thử nào sau đây tập trung vào việc đảm bảo ứng dụng di động dễ sử dụng, trực quan và đáp ứng nhu cầu của người dùng?
A. Kiểm thử chức năng.
B. Kiểm thử bảo mật.
C. Kiểm thử hiệu năng.
D. Kiểm thử khả năng sử dụng.
5. Điều gì sau đây là một thách thức lớn trong việc phát triển ứng dụng di động đa nền tảng (cross-platform)?
A. Khả năng sử dụng lại mã nguồn giữa các nền tảng khác nhau.
B. Đảm bảo hiệu suất ứng dụng tương đương với ứng dụng native.
C. Dễ dàng truy cập vào các tính năng phần cứng của thiết bị.
D. Sử dụng một ngôn ngữ lập trình duy nhất cho tất cả các nền tảng.
6. Điều gì sau đây là một lợi ích của việc sử dụng microservices trong phát triển ứng dụng di động so với kiến trúc monolithic?
A. Dễ dàng triển khai và mở rộng các tính năng mới một cách độc lập.
B. Giảm độ phức tạp của việc phát triển ứng dụng.
C. Tăng tốc độ phát triển ban đầu.
D. Đơn giản hóa việc quản lý cơ sở dữ liệu.
7. Điều gì sau đây là lợi ích chính của việc sử dụng kiến trúc microservices trong phát triển ứng dụng di động?
A. Giảm độ phức tạp của việc triển khai một ứng dụng duy nhất.
B. Tăng tính ổn định và khả năng mở rộng của ứng dụng.
C. Đơn giản hóa việc quản lý cơ sở dữ liệu.
D. Giảm chi phí phát triển ban đầu.
8. Điều gì sau đây là một lợi ích của việc sử dụng push notifications trong ứng dụng di động?
A. Cải thiện hiệu suất ứng dụng.
B. Tăng cường bảo mật dữ liệu.
C. Tương tác với người dùng ngay cả khi họ không mở ứng dụng.
D. Giảm kích thước ứng dụng.
9. Loại tấn công nào sau đây cố gắng truy cập trái phép vào dữ liệu nhạy cảm bằng cách giả mạo là một thực thể đáng tin cậy?
A. SQL injection.
B. Phishing.
C. Cross-site scripting (XSS).
D. Denial-of-service (DoS).
10. Công nghệ nào sau đây 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. Bluetooth.
B. WebSockets.
C. Local Storage.
D. Near Field Communication (NFC).
11. Trong ngữ cảnh phát triển ứng dụng di động, thuật ngữ `deep linking` đề cập đến điều gì?
A. Một kỹ thuật để tối ưu hóa hiệu suất ứng dụng.
B. Một phương pháp để theo dõi hành vi người dùng trong ứng dụng.
C. Một loại liên kết cho phép người dùng truy cập trực tiếp vào một trang cụ thể trong ứng dụng từ bên ngoài.
D. Một công cụ để gỡ lỗi ứng dụng.
12. Điều gì sau đây là một lợi ích của việc sử dụng kiến trúc serverless trong phát triển ứng dụng di động?
A. Giảm chi phí vận hành và quản lý máy chủ.
B. Tăng cường bảo mật dữ liệu.
C. Cải thiện hiệu suất ứng dụng.
D. Đơn giản hóa việc phát triển giao diện người dùng.
13. Điều gì sau đây là một yếu tố quan trọng cần xem xét khi thiết kế ứng dụng di động cho người dùng có khả năng tiếp cận hạn chế (ví dụ: người khiếm thị)?
A. Sử dụng màu sắc tương phản cao và cung cấp mô tả bằng giọng nói cho các yếu tố giao diện.
B. Sử dụng nhiều hiệu ứng động và chuyển động phức tạp.
C. Sử dụng phông chữ nhỏ và khó đọc.
D. Bỏ qua các hướng dẫn về khả năng tiếp cận.
14. Phương pháp nào sau đây giúp cải thiện hiệu suất của ứng dụng di động bằng cách giảm số lượng yêu cầu mạng?
A. Sử dụng lazy loading cho hình ảnh.
B. Tối ưu hóa mã nguồn bằng cách sử dụng các thuật toán hiệu quả hơn.
C. Nén dữ liệu trước khi truyền qua mạng.
D. Sử dụng bộ nhớ cache để lưu trữ dữ liệu thường xuyên được truy cập.
15. Điều gì sau đây là một yếu tố quan trọng cần xem xét khi thiết kế ứng dụng di động cho người dùng ở các quốc gia khác nhau?
A. Chỉ sử dụng tiếng Anh để đảm bảo tính phổ quát.
B. Hỗ trợ đa ngôn ngữ và tùy chỉnh giao diện người dùng cho các vùng khác nhau.
C. Sử dụng đơn vị tiền tệ mặc định của Hoa Kỳ.
D. Bỏ qua các khác biệt về văn hóa và tôn giáo.
16. Phương pháp nào sau đây giúp tối ưu hóa hình ảnh trong ứng dụng di động để giảm kích thước và tăng tốc độ tải?
A. Sử dụng hình ảnh có độ phân giải cao.
B. Nén hình ảnh và sử dụng định dạng phù hợp (ví dụ: JPEG, PNG, WebP).
C. Thêm nhiều hiệu ứng động và chuyển động phức tạp.
D. Sử dụng hình ảnh không nén.
17. Điều gì sau đây là một thách thức trong việc phát triển ứng dụng di động cho các thiết bị có màn hình kích thước khác nhau?
A. Đảm bảo giao diện người dùng hiển thị đúng và dễ sử dụng trên mọi kích thước màn hình.
B. Sử dụng một ngôn ngữ lập trình duy nhất cho tất cả các thiết bị.
C. Truy cập vào các tính năng phần cứng của thiết bị.
D. Quản lý bộ nhớ hiệu quả.
18. Điều gì sau đây là một thách thức trong việc phát triển ứng dụng di động cho các thiết bị có kết nối mạng không ổn định?
A. Đảm bảo ứng dụng hoạt động mượt mà và không bị gián đoạn khi kết nối mạng yếu hoặc bị mất.
B. Sử dụng một ngôn ngữ lập trình duy nhất cho tất cả các thiết bị.
C. Truy cập vào các tính năng phần cứng của thiết bị.
D. Quản lý bộ nhớ hiệu quả.
19. Loại kiểm thử nào sau đây tập trung vào việc đánh giá thời gian phản hồi, mức sử dụng tài nguyên và khả năng xử lý tải của ứng dụng di động?
A. Kiểm thử chức năng.
B. Kiểm thử bảo mật.
C. Kiểm thử hiệu năng.
D. Kiểm thử khả năng sử dụng.
20. Công cụ nào sau đây giúp phân tích và theo dõi hiệu suất của ứng dụng di động trong quá trình sử dụng thực tế?
A. Git.
B. Firebase Analytics.
C. Docker.
D. Slack.
21. Điều gì sau đây là một lợi ích của việc sử dụng các công cụ quản lý dự án như Jira hoặc Trello trong phát triển ứng dụng di động?
A. Giúp theo dõi tiến độ, quản lý công việc và cải thiện giao tiếp giữa các thành viên trong nhóm.
B. Tự động viết mã cho ứng dụng.
C. Tăng cường bảo mật dữ liệu.
D. Giảm kích thước ứng dụng.
22. Công cụ nào sau đây giúp tạo nguyên mẫu (prototype) nhanh chóng cho ứng dụng di động để thử nghiệm ý tưởng và thu thập phản hồi từ người dùng?
A. Android Studio.
B. Xcode.
C. Figma.
D. Visual Studio Code.
23. Loại kiểm thử nào sau đây tập trung vào việc xác minh ứng dụng di động hoạt động đúng trên các thiết bị và hệ điều hành khác nhau?
A. Kiểm thử hiệu năng.
B. Kiểm thử bảo mật.
C. Kiểm thử khả năng tương thích.
D. Kiểm thử chức năng.
24. Công nghệ nào sau đây cho phép ứng dụng di động giao tiếp với các thiết bị phần cứng khác thông qua sóng vô tuyến tầm ngắn?
A. Bluetooth.
B. WebSockets.
C. Local Storage.
D. Near Field Communication (NFC).
25. Công cụ nào sau đây thường được sử dụng để tự động hóa quá trình kiểm thử giao diện người dùng (UI) của ứng dụng di động?
A. Jenkins.
B. Selenium.
C. Jira.
D. Firebase.
26. Điều gì sau đây là mục tiêu chính của việc sử dụng Continuous Integration (CI) và Continuous Delivery (CD) trong phát triển ứng dụng di động?
A. Tăng tốc độ phát triển và giảm thiểu rủi ro khi triển khai ứng dụng.
B. Giảm chi phí kiểm thử ứng dụng.
C. Đơn giản hóa việc quản lý mã nguồn.
D. Cải thiện giao tiếp giữa các thành viên trong nhóm phát triển.
27. Phương pháp nào sau đây giúp bảo vệ dữ liệu nhạy cảm được lưu trữ trong ứng dụng di động?
A. Sử dụng xác thực đa yếu tố.
B. Mã hóa dữ liệu và sử dụng các biện pháp bảo mật phù hợp.
C. Thường xuyên cập nhật ứng dụng với các bản vá bảo mật mới nhất.
D. Tất cả các phương án trên.
28. Phương pháp nào sau đây giúp giảm kích thước của ứng dụng di động?
A. Sử dụng hình ảnh có độ phân giải cao.
B. Loại bỏ mã không sử dụng và tối ưu hóa tài nguyên.
C. Thêm nhiều thư viện và framework để tăng tính năng.
D. Sử dụng âm thanh chất lượng cao.
29. Framework nào sau đây được phát triển bởi Google để xây dựng giao diện người dùng (UI) cho ứng dụng di động, web và desktop từ một codebase duy nhất?
A. React Native.
B. Xamarin.
C. Flutter.
D. Ionic.
30. Yếu tố nào sau đây là quan trọng nhất để xem xét khi thiết kế giao diện người dùng (UI) cho ứng dụng di động?
A. Sử dụng nhiều màu sắc tươi sáng để thu hút người dùng.
B. Đảm bảo tính nhất quán và dễ sử dụng trên các thiết bị khác nhau.
C. Tích hợp nhiều hiệu ứng động và chuyển động phức tạp.
D. Sử dụng phông chữ lớn và đậm để dễ đọc.