profile
Hola, Mundo

[DI] Dagger Hilt

Dagger Hilt의 기본적인 것들을 설명하는 글입니다.

2023년 2월 27일
·
0개의 댓글
·

[DI] Dagger2 - Multibinding

Dagger2가 제공하는 기능중에 Multibinding이 있습니다. Multibinding은 같은 type의 여러 dependency를 Map이나 Set을 이용하여 하나의 object로 제공할 수 있도록 해줍니다.

2022년 6월 19일
·
0개의 댓글
·

[DI] Dagger2 - Scope, Qualifier, Provider, Lazy

Identifies scope annotations. A scope annotation applies to a class containing an injectable constructor and governs how the injector reuses instances

2022년 6월 19일
·
0개의 댓글
·

[DI] Dagger2 - Module, Component, Inject

Android에서 dependency injection을 할 때 많이 사용하는 framework중 하나로 Dagger2가 있습니다. Dagger2는 Square에서 개발하여 현재 Google에서 유지보수를 하는 library로 compile time에 코드 생성을 통해

2022년 6월 15일
·
0개의 댓글
·
post-thumbnail

[DI] Pure Dependency Injection

Pure dependency injection은 어떠한 library의 도움 없이 직접 dependency injection을 하는 것을 말합니다. Dependency injection을 할 때 클래스 내부에 필요한 dependency의 생성을 외부로 전가하게 됩니다.

2022년 6월 11일
·
0개의 댓글
·
post-thumbnail

[DI] Dependency Injection

Dependency injection이란?필요한 dependency를 클래스 내부에서 생성하는 것이 아니라 외부에서 주입받는 것왜 사용할까?to decrease couplingto reduce boilerplate codeto allow concurrent develo

2022년 6월 7일
·
0개의 댓글
·

[Android] DataBinding - Binding Adapter

Binding adapter를 이용하여 값을 View에 어떻게 binding할지 지정해줄 수 있습니다. 대표적인 예로 아래와 같이 URL을 이용하여 이미지를 라이브러리를 통해 불러오는 경우가 많은데 이를 binding adapter를 이용하여 간단하게 할 수 있습니다.

2022년 5월 25일
·
0개의 댓글
·

[Android] DataBinding - Two-way Data Binding

View의 속성 값을 이용해야 할 때, one-way data binding을 사용하면 listener를 등록하여 View의 속성이 변경될 때 동작을 설정할 수 있습니다. 하지만 two-way data binding을 사용하면 listener를 등록할 필요 없이 같은

2022년 5월 25일
·
0개의 댓글
·

[Android] DataBinding - Observable

ViewDataBinding은 자동으로 생성되는 DataBinding 클래스의 base 클래스로 BaseObservable을 상속받고 ViewBinding interface를 구현합니다. 생성된 binding 클래스 내부에는 <data>로 정의한 data bind

2022년 5월 25일
·
0개의 댓글
·

[BOJ] 16472번 : 고냥이

코드

2022년 5월 24일
·
0개의 댓글
·
post-thumbnail

[Design Principle] Dependency Inversion Principle

정의 > - High-level modules should not depend on low-level modules. Both should depend on abstractions. > - Abstractions should not depend on details. D

2022년 5월 23일
·
0개의 댓글
·

[BOJ] 15650번 : N과 M (2)

자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오.1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열고른 수열은 오름차순이어야 한다.첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8)한 줄에

2022년 5월 21일
·
0개의 댓글
·

[BOJ] 2230번 : 수 고르기

문제 N개의 정수로 이루어진 수열 A[1], A[2], …, A[N]이 있다. 이 수열에서 두 수를 골랐을 때(같은 수일 수도 있다), 그 차이가 M 이상이면서 제일 작은 경우를 구하는 프로그램을 작성하시오. 예를 들어 수열이 {1, 2, 3, 4, 5}라고 하자.

2022년 5월 21일
·
0개의 댓글
·
post-thumbnail

[Design Principle] Interface Segregation Principle

Clients should not be forced to depend on methods that they do not use."Client는 사용하지 않는 method에 강제로 의존해서는 안된다."가 interface segregation principled(이하 I

2022년 5월 21일
·
0개의 댓글
·
post-thumbnail

[Design Principle] Liskov Substitution Principle

정의 > What is wanted here is something like the following substitution property: If for each object o1 of type S there is an object o2 of type T such

2022년 5월 18일
·
0개의 댓글
·
post-thumbnail

[Design Principle] Open-Closed Principle

정의 > A software artifact should be open for extension but closed for modification. 소프트웨어의 artifact(class, module, function, etc.)는 상속에 대해 open되어 있어야

2022년 5월 17일
·
0개의 댓글
·
post-thumbnail

[Design Principle] Single Responsibility Principle

정의 > A module should have one, and only one, reason to change. 하나의 모듈은 단 하나의 변경 사유를 가져야 하는 것이 single responsibility principle(이하 SRP)의 정의입니다. Reason

2022년 5월 14일
·
0개의 댓글
·

[BOJ] 3273번 : 두 수의 합

코드

2022년 5월 12일
·
0개의 댓글
·

[BOJ] 2003번 : 수들의 합 2

문제 N개의 수로 된 수열 A[1], A[2], …, A[N] 이 있다. 이 수열의 i번째 수부터 j번째 수까지의 합 A[i] + A[i+1] + … + A[j-1] + A[j]가 M이 되는 경우의 수를 구하는 프로그램을 작성하시오. 시간 제한 : 0.5초 메모리 제한 : 128MB 입력 첫째 줄에 N(1 ≤ N ≤ 10,000), M(1 ...

2022년 5월 7일
·
0개의 댓글
·

[BOJ] 2470번 : 두 용액

문제 KOI 부설 과학연구소에서는 많은 종류의 산성 용액과 알칼리성 용액을 보유하고 있다. 각 용액에는 그 용액의 특성을 나타내는 하나의 정수가 주어져있다. 산성 용액의 특성값은 1부터 1,000,000,000까지의 양의 정수로 나타내고, 알칼리성 용액의 특성값은

2022년 5월 7일
·
0개의 댓글
·