brunch

You can make anything
by writing

C.S.Lewis

by 이승현 Jun 03. 2016

안드로이드 개발자 이직 공부 #06

안드로이드 [Android]

6. 이직 공부

  - 안드로이드



Activity life cycle 설명해주세요.
onCreate는 ~~~~


Activity 생명 주기만으로 1시간 면접을 봤었어요...

중요한 개념이긴 한데 다른 건 안 물어보고 왜...


면접관들은 자신의 질문에 면접자가 대답을 못하면 희열을 느끼나 봐요.

정말 창의적인 질문들에 경의를 표합니다..ㅠ



안드로이드 면접은 가늠할 수가 없어요.

매번 질문이나 면접 스타일이 달랐거든요.


하지만 이것만은 마스터하고 가시는 게 좋을 거 같아요.


경력기술서에 나온 내용
안드로이드 4가지 component



경력기술서에 나온 내용


경력기술서 한 줄로 10가지의 질문을 하십니다.


PDF 뷰어 개발 - 다양한 보기 모드(한 페이지, 연속 페이지, 썸네일) 구현.

- 다양한 보기 모드에 대해 자세히 설명해주세요.

- configuration은 어떻게 처리하셨나요?

- configuration 관련한 문제는 없었나요?

- 페이지는 이미지인가요?

- 메모리 관련해서 Bitmap들은 어떻게 처리하셨나요?

- 다른 앱에서 이 앱을 실행시키려면 어떻게 해야 하나요?

- 인텐트 필터에 들어가야 하는 게 뭐가 있죠?

- 명시적, 암시적 인텐트 차이가 뭔가요?


대충 이런 식으로 꼬리에 꼬리를 물고 계속 질문하십니다..

철저히 준비합시다.




안드로이드 4가지 component


Activity, Service, Broadcast receiver, Content provider


자주 쓰는 개념이라 다 알거라 생각하지만 깊게 물어보면 더 어려운 개념들이에요.

안드로이드 면접에서 어렵거나 생소한 개념들을 물어도 보지만 의외로 4가지 component에 대해 많이 물어봐요.

단순히 각자의 특성뿐만 아니라 component 간 연동까지 물어보니 헷갈리는 질문들이 많았네요.


- Activity 생명 주기에 대해 설명해주세요.

- 만약 카카오톡 메시지가 오면 Top activity 생명주기는? (onPause)

- onSaveInstanceState, onRestoreInstanceSate는 언제 호출되나요? 

- Bundle이 뭔가요?

- onRestart는 언제 호출되나요?

- startActvitiy에서 intent flag에 대해 설명해주세요.

- onDestroy에선 어떤 처리를 하나요?

- Intent에 대해 설명해주세요.

- 명시적 인텐트, 암시적 인텐트

- 암시적 인텐트는 언제 쓰나요?

- Service를 시작할 때 start service, bind service에 대해 설명해주세요.

- 메인 스레드와 다른 스레드 간 어떻게 연동하나요?

- 핸들러에 대해 자세히 설명해주세요.

- music player를 만든다 생각하고 각각의 생명주기에서 처리해야 하는 것들을 설명해주세요.


기억나는 질문들을 적었는데 Activity만 해도 물어볼게 너무 많아요.

그리고 저렇게 직접적으로 용어나 개념을 물어보기보다는 돌려서 물어보기 때문에 힘들었네요. 


이와 관련해 글을 쓰고 싶었지만 너무 방대해서...

책 하나 잡고 처음부터 끝까지 공부해서 이해합시다.




안드로이드 면접 질문을 구글링 해보니 의외로 몇 개 안 뜨더라고요.

그래서 안드로이드 질문 몇 개만 번역해야지 했던 게 아래처럼 6개나 썼네요.

어색한 번역이지만 보시고 대충 이런 식으로 질문이 나오겠구나 하고 이해하세요 ㅎㅎ


https://brunch.co.kr/@oemilk/14

https://brunch.co.kr/@oemilk/15

https://brunch.co.kr/@oemilk/16

https://brunch.co.kr/@oemilk/17

https://brunch.co.kr/@oemilk/18

https://brunch.co.kr/@oemilk/19




글을 많이 쓰면서 확실히 저한테는 도움이 되는데 다른 분들은 도움이 되는지 모르겠네요.

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari