본문 바로가기
♞ | 공부일지/♝ | TIL

[Android] 공부일지(2024-09-13)

by immgga 2024. 9. 13.
오늘 공부한 내용 정리(2024년 9월 13일)

 

출처: unsplash.com

 

코드카타 문제풀이

멋쟁이 포닉스(25551번)

https://rkdrkd-history.tistory.com/250

 

[Kotlin, B1] 백준 25551번 멋쟁이 포닉스

멋쟁이 포닉스(25551번)Bronze 1#수학 문제 내용  문제 접근포닉스가 옷을 입는 규칙에서 눈여겨볼 것은 옷의 색이다.마스크와 티셔츠의 색이 달라야 하고, 티셔츠와 바지 역시 색이 달라야 한다.

rkdrkd-history.tistory.com

 

 

모의 면접

1차 모의 면접

활동 내용 간단 정리

어제 공부일지에 잠깐 언급한 모의 면접 예상 문제의 질문들을 기반으로 질문을 해주셨다.

예상 질문 말고도 프로젝트 진행 중의 팀 내의 의사소통에 대해 추가적인 꼬리 질문을 던져주시기도 했다.

오랜만에 하는 면접이라서 말을 많이 더듬었다.

면접 준비가 좀 미흡했던 것 같다. 완벽하게 준비했으면 술술 나왔을 텐데 아쉽다.

 

 

면접 이론 학습 23일 차

RESTful Api란 무엇인지 REST의 핵심 원칙에 맞추어 설명

Restful Api란 rest의 원리를 따르는 시스템 api를 뜻한다.

rest의 핵심 원칙 6가지는 다음과 같다.

  • 균일한 인터페이스(Uniform Interface)
  • 클라이언트 - 서버 분리(Client-Server Separation)
  • 무상태(Stateless)
  • 캐시 가능성(Cacheable)
  • 계층형 시스템(Layerd System)
  • 온디맨드 코드(Code-on-demand)

rest는 http를 효율적으로 잘 사용하기 위한 방법론이다. 따라서 http만 잘 지켜도, 클라이언트-서버 분리, 무상태, 계층형 시스템, 캐시 가능성을 만족할 수 있다.

 

 

Android의 메모리 관리에서 GC Root와 WeakReference의 개념과 사용 사례

Garbage Collction은 Mark & Sweep 방식으로 동작한다.gc가 실행되면 현재 진행 중인 스레드, 정적 변수, 로컬 변수, JNI Reference에서 참조되고 있는 변수를 순차적으로 marking 한다.marking 되지 않은 객체들은 쓰레기 객체로 판정하고 정리한다(sweep)

 

Garbage Collctor는 reference의 강약에 따라 도달 가능한 객체를 제외하고 모두 쓰레기로 간주한다.reference object는 참조의 강약에 따라 Strong, Soft, Weak, Phantom으로 나누고 순서대로 참조가 강하다.하나의 객체가 Strong과 Weak 참조가 있으면 그 객체는 Strong 한 객체로 생각하게 된다.

 

개인 공부

부트캠프 최종 팀 프로젝트 기능 마이그레이션

공부 내용 간단 정리

먼저 기존의 google sign in을 google one-tap sign in으로 마이그레이션을 진행했다.

https://rkdrkd-history.tistory.com/249

 

[Android] Firebase Google One-Tap login으로 마이그레이션

부트캠프 최종 팀 프로젝트 기록 10  서론이번에 코드 수정 사항을 스캔하다가 눈에 보이는 것을 발견했다.바로 GoogleSignIn, GoogleSignInClient가 deprecated 되어 있는 것을 발견했다. 이와 관련해서 자

rkdrkd-history.tistory.com

 

마이그레이션으로 google sign in 쪽 코드가 줄어서 기존의 kakao sign in 코드를 SignInRepository에 google sign in 코드와 같은 repository에 위치시켜 놓았다.

아무래도 소셜 로그인이라는 같은 주제(?)가 있어서 SignInRepository에 넣고 싶었다.

같은 Repository에 넣은 김에 ViewModel에서도 1개의 sign in 확인용 state로 로그인 완료 여부를 확인해 주었다.

어차피 여러 소셜에 동시 로그인은 불가능하기 때문이고, 사용자가 로그아웃 또는 처음 들어왔을 때의 uiState는 init 상태일 것이기 때문에 1개의 state로 해도 가능할 것 같다는 생각이 들었다.

 


 

오늘 공부 내용 정리 및 회고

프로젝트 기능 마이그레이션을 말로 설명하려니까 뭔가 보는 사람들 입장에서는 이해하기 힘들 것 같다.모의 면접인데도 긴장해서 말을 더듬게 되었다.면접은 확실한 준비가 있어야 한다는 것을 다시 깨닫게 되었다.

728x90