Có thể thấy Android đang được hàng triệu người trên thế giới yêu thích. Được phát triển bới “ông lớn” Google, Android developer là công việc mơ ước của những chuyên viên phát triển phần mềm. May mắn, có rất nhiều cơ hội việc làm cho những ai mong muốn làm lập trình Android. Tuy nhiên, với vị trí này thường yêu cầu chuyên môn cao và mang lại mức lương tuyệt vời. Trước khi để có thể nắm bắt được cơ hội với công việc lập trình Android, bạn cần phải hiểu các kiến thức về lập trình. Và sau đó sử dụng nó để vượt qua các câu hỏi phỏng vấn Android để có được công việc mơ ước đó.
Đọc thêm: Giải mã về lập trình viên front-end.
Những điều cơ bản mà một lập trình viên back-end cần nắm rõ
Bây giờ, tôi sẽ chia sẻ bộ 20 câu hỏi phỏng vấn Android kinh điển mà bất cứ cuộc phỏng vấn nào cũng sẽ có kèm theo câu trả lời tham khảo. Bộ tài liệu sẽ được chia làm 2 phần nhỏ bao gồm những câu hỏi về nguyên tắc có bản và những câu hỏi nâng cao.
Bắt đầu nào!
-
TÓM TẮT
- 1 Những Nguyên Tắc Cơ Bản Về Phát Triển Android
- 1.1 Câu hỏi 1: Android là gì?
- 1.2 Câu hỏi 2:Application là gì?
- 1.3 Câu 3:Nơi lưu trữ GUI của Android được gọi là gì?
- 1.4 Câu 4:Định nghĩa “implicit” và “explicit”
- 1.5 Câu 5: 4 lớp cảm biến của Java
- 1.6 Câu 6:Tại sao bytecode không thể chạy được trong Android?
- 1.7 Câu 7:Liệt kê một vài ưu điểm của hệ thống Android
- 1.8 Câu 8: “Content Provider” có nhiệm vụ gì?
- 1.9 Câu 9: Bytecode mà Android sử dụng là gì?
- 1.10 Câu 10: Sử dụng Adapter để làm gì?
- 2 2. Những Câu Hỏi Phỏng Vấn Chuyên Sâu
- 2.1 Câu 1: Hai phương pháp lưu trữ dữ liệu chính trong Android là gì?
- 2.2 Câu 2: Sử dụng ‘intent’ như thế nào?
- 2.3 Câu 3: ‘activity’ là gì?
- 2.4 Câu 4: Các thành phần cốt lõi của hệ điều hành Android là gì?
- 2.5 Câu 5: Handlers sử dụng để làm gì?
- 2.6 Câu 6: Đâu là cơ sở dữ liệu tốt nhất cho các ứng dụng Android
- 2.7 Câu 7: Liệu hai ứng dụng Android khác nhau có thể chia sẻ cùng một Linux ID không?
- 2.8 Câu 8: DDMS là gì?
- 2.9 Câu 9: ANR là gì?
- 2.10 Câu 10: Điểm khác biệt giữa “AsyncTask” và “Thread” là gì?
- 3 Kết Luận
Những Nguyên Tắc Cơ Bản Về Phát Triển Android
- 1 Những Nguyên Tắc Cơ Bản Về Phát Triển Android
Đầu tiên, chúng ta sẽ bắt đầu với bộ câu hỏi nguyên tắc cơ bản.
Tuy nhiên, đừng vì hai chữ “cơ bản” mà bạn bỏ qua kiến thức phổ thông này. Ngay cả khi bạn đã là một lập trình viên Android chuyên nghiệp, vẫn có một số khái niệm đơn giản nhưng lại rất khố để giải thích. Những câu hỏi dưới đây sẽ định hướng cho bạn cách trả lời để đối phó với những tình huống khó khăn.
Các câu hỏi phỏng vấn Android cơ bản
Điều này giúp bạn được đánh giá cao trong mắt nhà tuyển dụng, vì vậy không nên bỏ qua bộ những câu hỏi phỏng vấn Android cơ bản này.
Câu hỏi 1: Android là gì?
Đây là câu hỏi đầu tiên trong hầu hết các cuộc phỏng vấn lập trình viên Android. Để trả lời câu hỏi này một cách hoàn hảo thì không chỉ có lý thuyết. Chúng tôi khuyên bạn nên thể hiện khả năng (sự thấy hiểu) bằng cách trình bày theo ngôn ngữ của bạn.
Để trả lời câu hỏi này, Android là một dịch vụ điều hành trên thiết bị di động. Như đã đề cập lúc đầu, nó được tạo ra và phát
triển bởi đội ngũ Google. Code của nó dựa trên nhân Linux nguồn mở và nó (Android) được thiết kế để chủ yếu được sử dụng trên các thiết bị màn hình cảm ứng, và là đối thủ lớn nhất của IOS.
Câu hỏi 2:Application là gì?
Applicationtrong Android là lớp cơ sở trong ứng dụng Android chứa tất cả các yếu tố quan trọng khác cho các hoạt động và dịch vụ khác mà Android thực hiện. Lớp hoặc bất kỳ lớp con nào của lớp nó sẽ được khởi tạo trước bất kỳ lớp nào khác khi quy trình cho ứng dụng của bạn được khởi tạo.
Câu 3:Nơi lưu trữ GUI của Android được gọi là gì?
GUI nghĩa là đồ họa giao diện người dùng (Graphical User Interface). Nó là một công cụ giúp các nhà lập trình Android mô phỏng các kịch bản cụ thể nhất định và xem chúng theo hướng mà người dùng ứng dụng sẽ nhìn thấy.
Câu 4:Định nghĩa “implicit” và “explicit”
Với implicit intent giao diện Android sẽ kiểm tra hệ thống để biết các cài đặt có thể giúp bạn thực hiện nhiệm vụ của mình. Còn với explicit intent (mục đích rõ ràng) là khi bạn chỉ định các thành phần mà hệ thống của bạn sẽ sử dụng trong khi thực hiện nhiệm vụ.
Câu 5: 4 lớp cảm biến của Java
Android sử dụng 4 lớp Java cụ thể dựa trên các cảm biến: Sensor, SensorEvent, SensorEventListener, và SensorManager.
Câu 6:Tại sao bytecode không thể chạy được trong Android?
Nếu nhà tuyển dụng đặt câu hỏi phỏng vấn Android này thì họ hầu hết sẽ hỏi một câu hỏi tiếp theo (thông thường sẽ là “Tại sao?”). Câu trả lời chỉ cần là Android dựa trên và sử dụng một loại bytecode đặc trưng và khác biệt.
Câu 7:Liệt kê một vài ưu điểm của hệ thống Android
Vì câu trả lời mang tính chủ quan nên không có câu trả lời đúng hay sai cho kiểu câu hỏi phỏng vấn Android này. Tuy nhiên, hãy tham khảo một vài ví dụ từ quan điểm của nhiều người khác khi học lập trình Android về các tính năng tốt nhất như: Android là nguồn mở, được hỗ trợ bởi nhiều nhà phát triển phần cứng, dựa trên Java,…
Câu 8: “Content Provider” có nhiệm vụ gì?
Lệnh này được sử dụng để truy cập các loại dữ liệu có tổ chức và có cấu trúc một cách cụ thể. Nó có thể được xem như một loại phương tiện – kết nối các chuỗi mã với các chuỗi mã khác.
Câu 9: Bytecode mà Android sử dụng là gì?
Nếu bạn để ý thì ở câu hỏi thứ 6 đã đề cập tới vấn đề Android không thể sử dụng bytecode Java vì nó có mã riêng. Mã này được gọi là Dalvik Virtual Machine.
Câu 10: Sử dụng Adapter để làm gì?
Adapters (các bộ điều hợp) được sử dụng để kết nối AdapterView với nguồn dữ liệu bên ngoài.
2. Những Câu Hỏi Phỏng Vấn Chuyên Sâu
Nếu bạn chưa từng tham gia một cuộc phỏng vấn chưa phải trả lời các câu hỏi phỏng vấn Android thì có thể sẽ khá khó hiểu. Có thể bạn sẽ nghĩ rằng thuật ngữ trong những câu hỏi phỏng vấn Android nâng cao là một cái gì đó rất hoành tráng. Nhưng đừng lo lắng quá nhiều về điều đó. Hãy theo dõi chia sẻ tiếp theo của tôi.

Câu hỏi phỏng vấn lập trình viên Androud chuyên sâu
Câu 1: Hai phương pháp lưu trữ dữ liệu chính trong Android là gì?
Shared Preferences (Tùy chọn chia sẻ) chủ yếu được sử dụng để lưu trữ các cặp khóa giá trị.
Internal Storage (Bộ nhớ trong) là nơi lưu trữ tất cả dữ liệu và thông tin riêng tư của nhà lập trình Android trong bộ nhớ trong của thiết bị.
Câu 2: Sử dụng ‘intent’ như thế nào?
Trong các câu hỏi phỏng vấn Androir, phần lớn các cấu hỏi đều có nhiều hơn một câu trả lời. Và câu này cũng không phải là ngoại lệ.
Có 3 trường hợp phổ biến mà bạn sẽ sử dụng intent: để khởi động thiết bị, bắt đầu một hoạt động cụ thể và bắt đầu phát sóng.
Câu 3: ‘activity’ là gì?
Thực ra, đây là một câu hỏi rất đơn giản và dễ hiểu với một câu trả lời thậm chí còn đơn giản hơn -activity là vật chứa trong giao diện người dùng. Tuy nhiên nó lại được nhà tuyển dụng đưa vào câu hỏi nâng cao với mục đích làm bạn mất cân bằng với câu hỏi siêu dễ.
Câu 4: Các thành phần cốt lõi của hệ điều hành Android là gì?
Hệ điều hành Android có 5 thành phần cốt lõi:
- Activity
- Content Provider
- Fragment
- Intents
- Services
Câu 5: Handlers sử dụng để làm gì?
Handlers được sử dụng phổ biến nhất để truyền thông giữa các luồng khác nhau.
Câu 6: Đâu là cơ sở dữ liệu tốt nhất cho các ứng dụng Android
Cơ sở dữ liệu nguồn mở tốt nhất cho các ứng dụng Android là SQLite. Đây là một câu hỏi tương đối nâng cao vì một là bạn biết câu trả lời hoặc là bạn không biết gì.
Câu 7: Liệu hai ứng dụng Android khác nhau có thể chia sẻ cùng một Linux ID không?
Câu trả lời là có. Tuy nhiên câu trả lới của bạn không nên chỉ có vậy. Mà cần phải thêm điều kiện đó là hai cả hai sẽ phải ký cùng một certificate(chứng chỉ) và chia sẻ chung một VP.
Câu 8: DDMS là gì?
Đó là viết tắt của Dalvik Debug Monitor Server (Máy chủ theo dõi gỡ lỗi Dalvik). Đóng vai trò là một máy chủ theo dõi lỗi đi kèm với chính hệ điều hành Android. DDMS có trách nhiệm theo dõi lỗi, cuộc gọi đến, SMS, giả mạo dữ liệu vị trí và – theo cách tự nhiên – gỡ lỗi.
Câu 9: ANR là gì?
Application Not Responding (Ứng dụng không phản ứng) là một cửa sổ bật lên. Qua đó chuyên viên lập trình Android sẽ nhận được nếu họ đã khởi xướng quá nhiều quá trình cùng một lúc.
Câu 10: Điểm khác biệt giữa “AsyncTask” và “Thread” là gì?
AsyncTasks được sử dụng để làm việc với các quy trình ngắn tối đa là 5 giây. Ngược lại Thread sẽ được sử dụng để xử lý các quy trình dài hơn.
Kết Luận
Trong bài chia sẻ này, tôi đã đưa cho bạn bộ câu hỏi phỏng vấn Android từ cơ bản đến nâng cao. Tuy nhiên đây chỉ là một trong số hàng nghìn câu hỏi từ các nhà tuyển dụng. Song khi nói đến câu hỏi phỏng vấn Android thì những câu hỏi được cung cấp trong hướng dẫn này sẽ giúp bạn có được một số ý tưởng hay định hướng câu trả lời trong cuộc phỏng vấn của bạn.
Hãy cố gắng để gây ấn tượng với nhà tuyển dụng của bạn và là chính mình! Chúc các bạn nhanh chóng có được công việc mơ ước này.