Skip to content
Gaeun Lee edited this page Dec 3, 2024 · 8 revisions

1주차 - JAVA

JVM 메모리 영역

  • 좀더 자세히 말하면 좋을 듯

class는 어떤 메모리 영역에 적재되나요

class 로드될때 -> 힙 메서드 -> 스택 영역 저장

자바 파일이 실행되는 과정

  • 런타임 데이터 are로 적재되고~ engine

GC

  • 힙 메모리 영역에서 필요하지 않으면 해제

필요없다고 판단될 때

  • 시점은 모르지만, 프로그램에서 ~ 세부적인 로직 설명함

list와 array의 차이

오버로딩 오버라이딩

오버라이딩을 자바에서 어떻게 방지할 수 있을까요

익명함수와 람다 표현식

try-with-resources

  • 학습 필요

stringBuffer/stringBuilder 차이

  • stringBuffer 단일 스레드에 좋고~

string 설명

  • String: (스레드 safety하지 않다? ㄴㄴㄴㄴ)

string pool 설명

string을 2가지 선언 방식의 차이

Call by Value vs Call by Reference 차이

  • 학습 필요

Wrapper vs boxing vs unboxing

좋았는데, 제네릭을 통해서 class를 감싼다? (설명 부족)

boxing vs unboxing 학습 필요

직렬화 역직렬화

  • 대답 굿

자바의 접근제어자

  • 몰라도 지어내면 좋을텐데ㅠㅠ

syncryonized

  • 학습 필요
  • 어노테이션?? Nono

equals hashcode

  • hashcode 학습 필요

equals 는 동등성 비교인가요 동일성 비교인가요

  • good

hashCode는 메모리 주소값??

  • 학습 필요

hashSet hashMap에 대해 설명해주세요

  • 학습필요

static non-static 차이

  • 학습필요

인터페이스와 추상클래스 차이

  • 알고 있는게 너무 많아서 말로 정리 안되는듯???

for문, stream, sequence 차이

  • 학습 필요

trasient

  • 학습 필요

enum 장단점

  • 객체 상수화할 때 사용~~~, 컴파일 단계에서 처리 확인 가능~
  • 객체가 유연하지 못하다는 단점이 있습니다.

숫자 when이 없다, else 문을 말하려고 한듯??

소프트스킬

  • 답변이 너무 간단하다.
  • 음~~ 엔진! 보다는 당당하게 엔진!! 이라고 말하는게 좋을 듯
  • 할 답변이 많다면, 모르는 부분에 대해서는 굳이 언급하지 않아도 좋을듯
  • 저번 인터뷰보다 샤이하게 답변하는듯? 자바라서 그런가??
  • 확실히 천천히 말하니깐 알아듣기 쉽다.
  • 모르는 부분에 대해 확실히 말해서 좋다.
  • 임기응변이 좋은 것 같음
  • 적당한 제스처, 발성, 속도가 좋았음

2주차 - Kotlin

간단한 자기소개

  • 광화문? 에디는 KT에 가고싶은걸로~

파이썬과 코틀린의 차이

  • 타입캐스팅? -> 강타입이 뭐지

컴파일러 언어, 인터프리터

  • 알아보면 좋을듯?

컴파일시점에 예외의 장점

  • 코드를 작성하면서 예외를 대처할 수 있음

코틀린과 자바의 차이

  • nullable
  • 확장함수?

확장함수는 뭔가요?

  • 굿

일급시민에 대한 개념

  • 자신감이 없었음

확장함수와 일반함수의 차이?

멤버변수로 선언하면 해결?

  • 탑레벨? func

확장함수 사용할 때의 단점

  • 메서드명이 오해를 불러일으킴? -> 예를 들어줄 수 있을까요?
  • person? plus

init 블록

  • 설명 굿 실행순서 굿 -> init 블록과 프로퍼티의 순서?
  • init블록

자바의 필드와 코틀린의 프로퍼티 차이

  • 학습필요

코틀린 프로퍼티에 대해서 설명

  • 게터세터 굿

백킹 프로퍼티

  • 내부 가변, 외부 불변 굿

커스텀게터와 함수를 사용하는 본인만의 기준?

  • 객체를 조작하고 반환 -> 커스텀게터
  • 이외의 함수

compainon object

  • java static

compainon과 object로 하는 것의 차이

  • (질문과의 의도가 다르게 대답함)

static 키워드 왜 없어졌을까? (본인만의 기준)

data class

  • 굿 -> 언제 data class
  • 사용하는 이유 굿

value 클래스

  • 예시를 들어서 설명

프로퍼티가 1개만 있으면, data? value?의 기준

코틀린 class와 java class의 차이

  • 생성자, 게터세터

open 키워드

  • 자바는 잘 모르는듯

const의 이점

  • 굿

val, const val 선언

  • JVM이야기 했다가 혼남

GC의 관리영역?

  • heap

Label

  • 굿 -> 태그가 없다면 어떤 문제점?

inline 키워드

  • 굿굿 -> 람다식은 항상 새로운 객체를 만드는가?
  • 그렇다. -> inline 단점
  • 오버헤드 + 뭐가 더 있을까? -> inline을 언제 사용하는지?
  • 자신감있게 굿

cross, noinline

  • 지역적 반환을 하고싶지 않을 때?
  • 아까 질문했던, 라벨 이야기를 해서 좋았음

refied

  • 굿 -> 왜 Inline 내부에서만 사용할 수 있을까?
  • 굿

제네릭이란?

  • 학습 필요, refied은 알지만 제네릭?

소프트 스킬 피드백

  • 고민을 하면서 팔짱이나 턱을 만짐
  • 질문의 의도를 다시 물어보는게 좋았음
  • 본인만의 기준을 이야기할 때, 조금 더 자신감있게 이야기하면 좋을듯
  • 대답을 하고 면접관의 눈치를 약간 봄

3주차 - Android

안드로이드 4대 컴포넌트

  • 브로드캐스트 리시버 빼먹음

액티비티 생명주기

  • 예시 굿

Context

-> Application Context, Activity Context의 차이점 -> SingleActivity를 사용하는 앱에서는 Application Context처럼 사용해도 될까?

  • 역할과 책임관점 -> 기능적인 문제는 없나?

MVVM 뷰모델, AAC 뷰모델

  • 굿

launchMode

-> singletask와 singletop은 언제 사용해야할까

  • 학습필요

inflate

  • 조금 더 구체적이면 좋을듯

안드로이드 배포 프로세스

  • 테스터 이야기까지 굿

apk와 aab

  • 학습필요

캐싱방법

-> 캐싱의 단점

  • 용량문제,무결성 굿

MVVM vs MVI

  • MVI 는 정리하면 더 좋을듯 -> MVVM에서 UDF를 사용못하나? -> UDF를 지키지 않는 사례 -> View → ViewModel에서 이벤트로 볼 수 있지않나?

repository 패턴을 왜 사용했나?

  • 구현하다보니, 레포지토리패턴이 된 것 같다.

adapter 패턴을 알고있나?

  • 학습필요

클린아키텍처가 무엇인가?

  • 도메인 레이어를 모듈화하여 다양한곳에서 사용 -> 구권아랑은 어떤점이 다른지?
  • 의존방향이 다름 -> DI, DIP의 차이
  • 클린아키텍처 이야기한 것 굿

화면회전시 보존하는 방법?

  • 인스턴스, 뷰모델 -> 어떤경우에 인스턴스, 뷰모델에 저장?
  • 예시 굿

힐트가 어떻게 의존성을 주입하나

-> entry point같은 애노테이션에 대한 설명 -> activity,viewmodel-component간의 부모-자식관계

  • 조금 더 구체적으로 설명하면 좋을듯

apply, with, run

  • 굿

코루틴이 뭔가요?

-> 병렬성,동시성일까 동기,비동기와 관련된걸까? -> 코루틴 context가 뭔가요 -> 코루틴 dispatcher가 뭔가요

소프트 스킬 피드백

  • 고민을 하면서 팔짱이나 턱을 만짐
  • 질문의 의도를 다시 물어보는게 좋았음
  • 본인만의 기준을 이야기할 때, 조금 더 자신감있게 이야기하면 좋을듯
  • 대답을 하고 면접관의 눈치를 약간 봄

5주차 - Android

왜 안드 개발 시작했나요?

아버지가 원하는 프로그램을 개발하다가 흥미를 가져봄

플러터 vs 안드 native 중 안드 native를 왜 선택함?

JVM 실행 과정에 대해 설명해주세요

kotlin은 어떻게 실행되나요?

KAPT KSP 차이점

학습 필요

안드로이드 4대 컴포넌트

Context란

생명주기 얘기는 빼면 좋을듯?

Service Context를 통해 알수 있는 정보?

학습 필요

Context를 통해 생명주기를 어떻게 아는 건가요?

학습 필요

이미지 로딩 라이브러리 설명해주세요

coil은 컴포즈에서 사용하기 편하다 ++ ...

coil 단점 설명해주세요

학습 필요

launchMode 설명해주세요

task 관련 학습 필요

DIP와 DI에 대해 설명해주세요

굿

고수준 모듈, 저수준 모듈에 대해 설명해주세요

굿

DIP 쓸 때 얻을 수 있는 점

굿

Gson, serialization 등등 여러 라이브러리 중 하나를 선택한 이유

좀만 더 설명하면 좋을듯

DI 라이브러리 중 hilt와 koin 선택 기준

굿

hilt의 동작 과정에 대해 설명해주세요

자신감 넘 없이 말했다.

hilt component에 대해 설명해주세요

보충 필요

코루틴과 스레드 차이

굿

코루틴과 스레드를 왜 사용하나요

비동기 굿

안드로이드 개발시에는 스레드를 쓸 일이 없을까요? 코루틴만 쓰는것 같아서요

CoroutineScope가 뭔가요

학습필요

코루틴 job이 뭔가요?

학습필요

코루틴 context에 대해 설명해주세요

학습필요

Flow

굿

hot vs cold 각각 어떤 장단점이 있는지, 언제 활용해야 하나요

굿

각각 안드로이드 어느 레이어에서 어떤 stream을 쓰는게 좋을까요

굿

Dalvik ART 등등 설명

학습필요

collection과 stream의 차이

학습 필요

Java Int Integer vs Kotlin Int

학습 필요

Jetpack에 대해 설명

굿

List와 ArrayList의 차이점에 대해 설명

학습 필요

안드 공부하면서 어려웠던 점은?

MVVM 디자인 패턴 가장 어려웠음

setHasFixedSize 왜 썻고, 어떤 장점이 있나요?

inflate

setHasStableIds왜 썼고 어떤 장점

학습 필요

looper handler 스레드 설명

다이나믹 프로그래밍

학습 필요

동등성 비교가 필요한 이유

동등성 동일성 둘이 헷갈린듯?

Clone this wiki locally