일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 테스트
- 회고
- g 단위테스트
- mockito
- 스레드
- 코틀린
- 디자인패턴
- 코루틴
- viewmodel
- Coroutine
- Compose
- theming
- Kotlin
- 병럴프로그래밍
- 책
- 알게되는
- k8s
- ReactiveProgramming
- 글또
- 안드로이드스튜디오
- 알고리즘
- kotlin강좌
- 커스텀상태
- 병렬프로그래밍
- 자바
- 안드로이드강좌
- Rxjava
- 안드로이드
- android
- Gradle
- Today
- Total
목록Kotlin (13)
선생님, 개발을 잘하고 싶어요.

다루는 거 영역 특화 언어, DSL, Domain-Specific Language 수신 객체 지정 람다, invoke 관례 API에서 DSL로 클래스간 상호작용을 이해하기 쉽고 명확하게 표현할 수 있게 만드는 것이 목표 2부에서 살펴본 내용은 API를 깔끔하게 작성할 수 있게 돕는 코틀린 특성 깔끔하다는 것은? 코드를 읽을 때, 어떤 일이 벌어질지 명확하게 이해할 수 있어야함. 이를 위해서 이름과 개념의 선택을 잘 해야한다. 코드가 간결해야함, 불필요한 구문이나 보일러플레이트가 가능한 적어야한다. 개념적 DSL? 범용 프로그래밍 언어: 모든 문제를 충분히 풀 수 있는 기능을 제공 영역 특화 언어: 특정 과업 또는 영역에 초점을 맞추고 그 영역에 필요하지 않은 기능을 제거, (e.g. SQL, 정규식) D..

다루는 거 애노테이션(annotation) 라이브러리가 요구하는 의미를 클래스에게 부여 리플렉션(reflection) 실행 시점에 컴파일러 내부 구조를 분석 애노테이션 메타데이터를 선언에 추가해 애노테이션을 처리하는 도구가 컴파일 시점이나 실행 시점에 적절한 처리 애노테이션 인자로 원시 타입 값, 문자열, enum, 클래스 참조, 다른 애노테이션 클래스 그리고 이러한 배열이 들어갈 수 있다. 애노테이션 인자는 컴파일 시점에 알 수 있어야한다. 코틀린 한 소스코드의 선언을 컴파일한 결과가 여러 자바 선언과 대응하는 경우가 있다. (e.g. var로 선언한 property는 getter, setter에 대응된다) 사용 지점 대상(use-site target) 선언으로 애노테이션을 붙일 요소를 정할 수 있다...

도입 어떤 프로젝트를 해도 사용자 인증은 중요한 키워드다. 그리고 사용자의 쉬운 접근을 위해서는 소셜 로그인 지원은 거의 필수적이다. 이번에는 카카오 로그인에 대해서 a-to-z까지 따라만 하면 성공하는 형태로 포스팅을 쓴다. (유용한 gists 도 제공한다!) 절차 준비물 카카오 로그인을 설정하기 위해선 다음을 미리 준비하자. 카카오 개발자 계정 카카오 로그인 적용을 위한 안드로이드 프로젝트 카카오 디벨로퍼 페이지에서 준비하기 카카오 디벨로퍼 페이지에서 사용할 애플리케이션을 등록하자. https://developers.kakao.com/console/app 애플리케이션 추가하기 버튼을 눌러준다. 앱 이름, 사업자명을 지정한 다음 저장하기를 누른다. SampleOauthLogin 애플리케이션이 추가된 걸..

다루는 거 코틀린 제네릭과 자바 제네릭의 유사한 부분 런타임 파라미터 타입 소거 - type erasure 실체화된 타입 파라미터 - reified type 타입 파라미터의 상위하위 관계에 따른 두 제네릭 타입의 상위하위 관계, 변성 - variance: 변성 → 타입 인자의 상하 관계에 따라 제네릭 타입의 상하 관계가 어떻게 처리되는가? 에 대한 개념 invariant: 무변성 → 타입 인자의 상하 관계가 제네릭 타입의 상하 관계와 관련 없음 covariant: 공변성 → 타입 인자의 상하 관계가 제네릭 타입의 상하 관계와 같음 contravariance: 반공변성 → 타입 인자의 상하 관계와 제네릭 타입의 상하 관계가 역전됨 선언 지점 변성 - declaration-site variance 사용 지점..