프로그래밍

Android 취준 중인데, 개발자 면접 질문 부탁드려요

댓글 남겨주시면 학습한 후 답변 달아서, 검사 받고 싶습니다.

너무 딥하지 않은 Android 또는 CS 관련 기본 지식에 대해 질문해주셨으면 합니다.

 

미리 감사합니다. 시간 내주셔서 감사합니다, 현업 선배 님들.

10개의 댓글

2024.03.02

1. TCP 연결 수립과정을 설명하기

2. 가상 메모리가 필요한 이유와 메커니즘을 설명하고, 스왑 메모리 작동 방식을 설명하기

0
2024.03.03
@잉텔

1.

TCP는 UDP와 다르게 수신 측과 송신 측의 연결을 수립하는 3-way handShaking 과정을 거칩니다.

#1. 클라이언트 측에서 연결 요청을 위해 SYN 비트가 1로 설정되어 있고, sequence number가 x(이 값은 랜덤)인 TCP Segment를 보냅니다.

#2. 서버 측에서 SYN, ACK 비트가 1, Acknowledgment number가 x+1, sequence number가 y(이 값은 램덤)인 TCP Segment를 보냅니다.

#3. 클라이언트 측에서 서버 응답을 수신했다는 의미로, ACK 비트가 1, Acknowledgment number y+1인 TCP Segment를 보냅니다.

 

클라이언트와 서버는 연결을 요청하는 쪽과 연결 요청을 허용하는 쪽에 따른 차이로, 가정용 PC, 서비스를 운영하는 "서버"와는 다른 개념입니다.

 

참고 자료

https://velog.io/@averycode/%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-TCPUDP%EC%99%80-3-Way-Handshake4-Way-Handshake

 

2.

모든 프로세스가 필요로 하는 데이터를 메모리에 모두 올려두기에는 메모리 크기에 한계가 있습니다. 그래서 프로세스에서 사용하는 부분만 메모리에 올리고, 나머지는 디스크에 보관하는 기법을 가상메모리라고 합니다.

 

메커니즘은 다음과 같습니다.

1. Page No(processor가 필요로하는 데이터의 index 번호), Frame No(해당 데이터의 memory에서의 위치인 주솟값), valid bit(메모리에 데이터가 존재하는지 여부를 나타내는 비트값으로 1이 존재함을 의미)로 구성된 Page Table이 있습니다.

2. processor가 요청하는 page no의 valid bit가 1이면 메모리의 주솟값을 전달합니다.

3. valid bit가 0일 경우, disk에서 해당 데이터를 꺼내 메모리에 적재하고, process에게 주솟값을 전달합니다. 또한 Page table도 업데이트합니다.

 

Swap 메모리 작동 방식은 다음과 같습니다.

 

1. 메모리가 가득차, 더 이상 데이터를 메모리에 올릴 수 없는 경우에 발생합니다.

2. 가장 이전에 사용되었던 데이터가 무엇인지 확인합니다.

3. 이 데이터를 디스크로 옮깁니다.

4. Processor가 필요로 하는 데이터를 RAM에 올립니다.

 

참고 자료

https://phoenixnap.com/kb/swap-memory

0
2024.03.02

Android 기술 면접이라고 인터넷 검색하면 나오는거 외우셈

다른 업종 프로그래밍인데 그런거 보고 가니깐 한 70%는 나옴

 

단 ㅈㄴ 많은 블로그, 카페 뒤지면서 해야됨 막 3~4개 보고 끝이 아니라 수십개를 보면서 자주 중복되는거 가끔 보이는거 구분없이 다 외우셈ㅇㅇ(시간 없으면 자주 언급되는거 위주)

0
2024.03.03
@RX7900XTX

이거요?

https://github.com/gyoogle/tech-interview-for-developer?tab=readme-ov-file

0
2024.03.02

코루틴이 무엇이죠?

0
2024.03.03
@프로그래머스

코루틴은 중단했다가 다시 실행할 수 있는 컴포넌트입니다. 코루틴은 비선점형(하나의 프로세스가 CPU를 할당받으면 종료되기 전까지 다른 프로세스가 CPU를 강제로 차지할 수 없음)이고, 쓰레드는 선점형입니다.

코루틴은 병행성(Concurrentcy, 논리적으로 병렬로 작업이 실행되는 것처럼 보이는 것)은 제공하나, 병렬성(Parallelism, 물리적으로 병렬로 작업이 실행되는 것)은 제공하지 않습니다.

0
2024.03.03

OAuth를 이용한 로그인의 동작방식을 설명하고 이 과정에서 앱에 보관하게되는 정보와 보안 방법에 대해서 설명해볼 것

프로젝트에서 상태관리를 위한 라이브러리는 뭘 사용했고 특별히 더 신경쓴 부분이 있는지

겆줌은 쳐내는게 맞는가?

0
2024.03.03
@역시자네야

1.

OAuth는 사용자가 자신의 비밀번호를 노출하지 않으면서, 제3자에게 자신의 정보 접근을 허용하는 방식입니다. OAuth 서비스를 사용하는 앱은 인증 과정에서 발생하는 어떤 정보도 보관하지 않으며, 단순히 인증이 완료되었을 때, OAuth 서버가 전달하는 사용자의 정보를 전달받아 저장하여 사용합니다.

OAuth 서버 또한 사용자가 이전에 무엇을 요청했고, 어떤 데이터를 가져갔는지에 관한 정보인 state를 저장하지 않습니다.

 

OAuth 요청에 사용되는 Access Token은 접근 가능한 정보 범위와 기간이 정해져 있습니다. 기간이 만료될 경우, refresh Token 또는 다시 Authorization 과정을 통해 access token을 재발급 받아야 합니다.

 

2.

상태관리가 어떤 것을 말하는지 모르겠습니다. Android의 lifecycle을 의미하는 것이라면, Activity와 Fragment 객체의 lifecycle이 View lifecycle보다 길기 때문에, UI 업데이트는 ViewModel에 있는 데이터를 observing 함으로써 업데이트하도록 구현했습니다.

 

또한 RecyclerView에서 ViewHolder에서 이미지를 로딩하는 중에 사용자가 스크롤을 내려 화면이 보이지 않게 됐을 경우, coroutineScope을 cancel하여 이미지 로딩을 중단하도록 했습니다.

 

3.

🤫

0
2024.03.04

1. 액티비티 라이프 사이클을 순서대로 그려보세요

2. Toast 를 Customize 하는 코드를 작성하세요 (pseudo-code 무관)

3. AsyncTask에 대해 아는대로 기술하시오

0
2024.03.05
@동천마을

답변이 늦어 죄송합니다 ㅠ

말씀 주신 질문들은 제가 모르는 내용이고, 학습에 시간이 오래 걸릴 것 같아요.

 

질문 해주셔서 감사하고, 꼭 학습해서 제 것으로 만들도록 할게요.

 

@Android 학습

1. 액티비티 라이프 사이클을 순서대로 그려보세요

2. Toast 를 Customize 하는 코드를 작성하세요 (pseudo-code 무관)

3. AsyncTask에 대해 아는대로 기술하시오

0
무분별한 사용은 차단될 수 있습니다.
번호 제목 글쓴이 추천 수 날짜 조회 수
180515 [컴퓨터] 유튜브 자동재생이 작동을 하지 않습니다. 프바이 0 14 분 전 8
180514 [컴퓨터] 공유기 질문좀 5 그레이트닭 0 1 시간 전 37
180513 [모바일] 갤럭시 미세 팁) 알림 숫자에 조금이라도 덜 신경쓰고 싶을 때 최수연 0 1 시간 전 61
180512 [잡담] 이어폰연결하면 스피커로 잡히는현상 질문점용 Untitle 0 1 시간 전 29
180511 [컴퓨터] 수제 슬픈개구리, 빤쮸토끼 키보드 키캡 1 마두라지 0 2 시간 전 55
180510 [모바일] 어무니 갤23이나 24 사드리려는데 5 카오링 0 2 시간 전 57
180509 [컴퓨터] 19년도에 산 컴인데 질문좀 4 탈출하고싶다 0 6 시간 전 160
180508 [모바일] 갤럭시 내비게이션바 업데이트 8 Inquisitive 0 7 시간 전 241
180507 [모바일] 아이폰 이거 설정하는법 앎? 4 건들면6년 0 7 시간 전 158
180506 [컴퓨터] 저전력,배터리 오래가는 노트북 찾아요! 4 sgfkshj 0 14 시간 전 173
180505 [잡담] 유튜브 프리미엄 우회 질문드립니당 7 개드립눈팅4년 0 15 시간 전 305
180504 [잡담] 블랙샤크v2 pro 2023 vs 소니 mv1 추천좀 1 게임게임하자 0 15 시간 전 83
180503 [컴퓨터] 인텔 그래픽 드라이버 최신화 인식 왜이따위임? 2 넌뭔데시비냐 0 17 시간 전 149
180502 [모바일] 안드로이드 카메라 어플중에 쓸만한거 뭐있음? 1 일째다이어트하는중 0 17 시간 전 76
180501 [컴퓨터] 집에서 투 컴퓨터 사용시 키보드 마우스 세팅 7 해물잠봉 0 18 시간 전 136
180500 [잡담] 동글 사려는데 싼거사도됨? 7 제로콜라는닥터페... 0 20 시간 전 132
180499 [컴퓨터] 가난개붕이 글카샀다 11 69746974 0 20 시간 전 258
180498 [컴퓨터] 로지텍 무선마우스가 g502x 이거 많이씀?? 13 울그락푸르락 1 21 시간 전 156
180497 [컴퓨터] DDR5는 렘오버한거 차이많이남? 15 창원토박이 0 23 시간 전 255
180496 [컴퓨터] 형들 제품키만 파는것들 써도 되는거야? 5 우루루옳지 0 23 시간 전 127