inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

냉동코더의 알기 쉬운 Modern Android Development 입문

Dependency Injection 기초

의존성의 문제가 있어도 컴파일 타임에 확인하는 것이 불가능하다는 것의 의미

379

jminie

작성한 질문수 29

0

여러 의존성 라이브러리의 장단점을 찾아보다 보면

"컴파일 타임에 문제를 확인할 수 있다"

"컴파일 타임(Complie Time)에 의존성 주입 코드를 생성해 런타임 성능이 좋다"

"런 타임(Run Time)에 의존성 주입 코드를 생성해 성능이 좋지 않다"

이러한 글들을 볼 수 있는데요

컴파일 타임에 의존성 주입 코드를 생성하는 것이 왜 성능이 좋은 것인지?

컴파일 타임에 문제를 확인할 수 있다는 것이 왜 장점인지?

이 두가지가 궁금합니다!

architecture kotlin android jetpack

답변 1

2

냉동코더

컴파일 타임이란 개발자가 빌드하는 시간이고 런타임은 사용자가 앱을 사용하는 시간이죠.

의존성 주입이 잘못된걸 컴파일 타임에 확인하면 바로 코드를 수정하는 것으로 끝나지만 런타임에 의존성 주입이 잘못되면 NPE로 앱이 크래시 나버리게 되어 유저에게 나쁜 경험을 주게 되고 그걸 보고로 받아 문제를 역추적해서 수정해야 하는 번거로운 과정을 거쳐야 하게 되지요.

성능도 런타입에 주입하면 그만큼 처리에 시간이 걸려 사용중인 앱이 느려지게 되는데 컴파일타임에 주입을 해 놓으면 그럴 문제가 없죠.

Coroutine, Flow 질문

0

401

1

Transformations import 안됨

0

588

1

moshi관련 질문입니다.

0

566

2

searchBooks() 에서 북 검색 입력을 너무 빨리 할 경우 마지막 글자로 검색이 안돼요.

0

375

1

안드로이드에서 아키텍처 패턴

0

423

1

RecyclerView.Adapter vs ListAdpater

0

473

1

Flows 와 Coroutine

1

572

1

[BookSearchAdapter] onBindViewHolder의 currentList[position] 질문

0

370

1

코루틴 메모리 관련해서 질문드립니다!

0

456

1

Java Bill Pugh Solution 에서 INSTANCE

0

469

1

nested json에서 특정 부분만 파싱하는법

0

495

1

Fragment에서의 viewBinding

0

525

3

toolbar 질문드립니다.

0

417

2

EditText 에서 delay 주셔서 처리하셨는데 flow 의 debounce() 하고 같은건가요?

2

568

1

코루틴 관련 질문

0

549

1

오류

1

494

2

강사님! 직렬화 라이브러리를 Moshi, kotlin serialization 두개를 사용하시던데 이유가 있으신가요?

1

749

1

EditText 는 kill 해도 값이 잘 저장되어있던데 혹시 제가 잘못테스트했을까요?

1

354

1

서버도 페이징 기능이 되는데 Paging 라이브러리가 필요할까요?

1

530

1

GSON 이 아닌 Moshi 를 사용하시는 이유가 있을까요?

1

1271

1

EditText 는 액티비티가 재생성되어도 값이 남아있던데 이유가 궁금해요

1

498

1

ViewModel 생성시 왜 초기값을 받지 않도록 했을까요?

1

438

1

Room DB에 id 항목 추가

0

255

1

안녕하세요. 용어에 대해 질문이 있어 글 남깁니다.

0

408

2