오늘 새롭게 배운 혹은 삽질한 경험, 그리고 히스토리 정리 목적의 간단한 글들을 마크다운 문서로 정리 해 보자.
- 폴더와 파일명은 될 수 있으면 영문으로 작성한다.
- Github-Flavoured Markdown으로 작성하고 파일 확장자는
md
. - 짧고 간결하며 핵심적인 문장을 사용한다. 필요한 설명이 있으면 관련된 정보가 포함된 외부 링크를 사용 하자.
- 211005 / (번역) Measure, measure, measure
- 210830 / (번역) Clean Code with Kotlin
- 210817 / (번역) Safe delay in Android Views: goodbye Handlers, Hello Coroutines!
- 210726 / (번역) Guidelines for writing better tests
- 210712 / (번역) How To Securely Build and Sign Your Android App With GitHub Actions
- 210709 / (번역) Android 12 review for developers
- 210616 / (번역) The Kotlin modifier that shouldn't be there
- 210609 / Gradle 오류 "Minimum supported Gradle version is #최소버전 Current version is #현재버전"
- 210518 / (번역) Kotlin SharedFlow or: How I learned to stop using RxJava and love the Flow
- 210503 / (번역) Flow/LiveData….What Are They? Best Use Case. (Lets Build a Login System)
- 210420 / (번역) Android Runtime — How Dalvik and ART work?
- 210405 / (번역) Common Design Patterns and App Architectures for Android
- 자주 사용되는 디자인 패턴 위주로 작성 하였음.
- 210329 / (번역) All About PendingIntents
- 210315 / (번역) Measuring Realtime Database performance with Firebase Performance Monitoring
- 210302 / (번역) Activity Result Contract – Outside the Activity
- 210225 / (번역) An opinionated guide on improved Kotlin code
- 210223 / (번역) Activity Result Contract – The Basics
- 210222 / Webview data directory Android 9
- 210215 / Firebase Realtime Database Basic
- 210213 / (번역) Using gradient for styling text
- 210212 / (번역) RxJava : Disposables Can Cause Memory Leaks
- 210208 / ViewBinding delegate functions
- 210207 / (번역) Helpful ADB commands
- 210204 / (번역) A Garbage Collection Story
- 210202 / (번역) Modelling UI State on Android
- 210201 / (번역) LiveData: Migrate from LiveData to StateFlow and SharedFlow
- 210129 / (번역) LiveData: Good practices
- 210128 / (번역) LiveData: under the hood
- 210126 / (번역) Android Parcelable: There's a better way
- 210125 / (번역) Using Hilt’s ViewModelComponent
- 210122 / (번역) Choose Wisely: 5 Ways To Show A Message In Android
- 210121 / (수정중) Sonarqube 적용기 2/2 - Jacoco를 이용해서 코드 커버리지를 측정하고 Sonrqube에 전달하기
- 210119 / Sonarqube 적용기 1/2 - Docker와 Sonarqube컨테이너 설정 및 안드로이드 앱 분석 해보기
- 210114 / (번역) When LiveData and Kotlin don’t play well together
- 210112 / (번역) Unit Tests and Concurrency
- 210111 / (번역) 2 Best Ways To Use Custom Fonts In Android
- 210106 / (번역) Files, Boilerplate, and Testability
- 201229 / (번역) How To Share Files With Android FileProvider
- 201228 / (번역) The Quick Developers Guide to Migrate Their Apps to Android 11
- 201222 / (번역) Ultimate Guide to Android Custom View
- 201215 / (번역) Adapting to ListAdapter. and?
- 번역 외에
ListAdapter
를 이용하여 구현한 예제를 포함.
- 번역 외에
- 201117 / (번역) Kotlin으로 Dagger-Hilt를 사용할때 가이드 - Android에서 의존성 주입을 사용하는 쉬운 방법
- 201111 / (번역) View Binding Android - 3개의 주요 이점
- 201110 / (번역) Signature클래스를 이용한 데이터 확인
- 201107 / (번역) 잘가~ Gson, 반가워! Moshi
- 201105 / (번역) Kotlin을 이용한 앱 크래시 감소와 안정성 향상
- 201104 / (번역) 넷플릭스의 안드로이드와 iOS앱 - 코틀린 멀티플랫폼으로 만들어지다
- Netflix Technology Blog의 Netflix Android and iOS Studio Apps - now powered by Kotlin Multiplatform을 번역
- 201103 / (번역) DayNight - 다크모드를 간단하게 적용 하는 방법
- 201014 / Firebase - Crashlytics 추가 하기
- 201007 / (번역) 안드로이드 퍼포먼스에 대한 팩트 체크
- Calin Juravle의 Busting Android performance myths를 번역.
- 201006 / 안드로이드에서 사용자 모듈 추가 하기
- 200915 / (번역)
SharedPreference
에서DataStore
Preference으로 마이그래이션 - 200914 / Moshi - 티끌같지만 도움이 될 수도 있는 팁
- 200911 / (번역) Lottie for Android - Advanced 4
- 성능과 관련된 정보
- 200910 / (번역) Lottie for Android - Advanced 3
- image asset, Lottie가 APK에 대한 영향
- 200907 / (번역) Lottie for Android - Advanced 2
- 런타임 중 Lottie에 대한 설정
- 200906 / (번역) Lottie for Android - Advanced 1
- 애니메이션의 콜백 구현, 애니메이션의 반복
- 200905 / (번역) Lottie for Android - Basic
- Lottie의존 추가, 기본적인 사용 법
- 200904 / (번역) Lottie for Android - Lottie란 무엇인가
- 200902 / Android Clean architecture
- 200831 / (번역) Dagger hilt cheat sheet
- 200828 / View Binding의 메모리누수와 해결 방법
- 200827 / (번역) LeakCanary 2 - Fixing a memory leak
- 200826 / (번역) LeakCanary 1 - Basic, How LeakCanary works
- LeakCanary문서를 바탕으로 번역, 정리
- 200823 / (번역) Glide 11 - Hardware Bitmaps
- 200821 / (번역) Glide 10 - Debugging
- 200820 / (번역) Glide 9 - Resource Reuse
- 200819 / (번역) Glide 8 - Caching
- 200817 / (번역) Glide 7 - Configuration (2/2)
- 200816 / (번역) Glide 6 - Configuration (1/2)
- 200815 / (번역) Glide 5 - Transitions
- 200814 / (번역) Glide 4 - Targets
- 200813 / (번역) Glide 3 - Transformations
- 200812 / (번역) Glide 2 - Options
- 200811 / (번역) Glide 1 - Basic
- Glide v4의 문서를 바탕으로 번역, 정리 하고 kotlin코드와 코드 직관성 및 개발편의를 위한 확장함수들을 추가
- 200810 / AndroidX - CoodinatorLayout
- 200730 / Koin - Activity Scope
- Koin이라는 DI tool을 사용해 Activity scope를 적용 하면서 Custom scope적용 방법에 대해서 정리
- 200729 / TextWatcher with ReactiveX
- 200728 / 구글맵 이슈 처리
Error using newLatLngBounds(LatLngBounds, int): Map size can't be 0.
이슈
- 200614 / dagger.android 기초 공부
- 200508 / Koin 에서 ViewModel 주입하는 방법
- 200507 / ViewModel 에서 데이터 상태 관리 방법
SavedStateHandle
의 사용방법에 대해 정리.
- 200306 / Redux - android architecture 예제
- 191101 / 그동안 만들었던 확장함수 들
- 170110_Android / DataBinding 과 Rx 를 이용한 View 의 이벤트 제어
- 161031_Android / JVM의 Dalvik 과 안드로이드의 ART, 그리고 JAVA의 Runtime Data Area 정리
- 161007_Android / Flat color
- Android Studio에서 Color resource를 관리하는 유용한 plug in인 Color Manager소개.
- 160928_Android / Realm 2.0 release
- 160922_Android / JUnit과 Espresso를 이용한 TDD 개발
- 160926 / 예제 소스 추가
- 160921_Android / multiDexOptions속성이 true인 상태에서 Android Studio의 컴파일, 빌드가 너무나도 느려졌을 경우
- 160912_Android / Configure Android Status Bar
- 160909_Android / Gradient transition effect like Instagram
- 160906_Android / Parallax ViewPager page transition effect
- 160904_Android / ViewPager와 PageTransformer를 활용한 Carousel UI pattern의 구현
- 160823_Android / 비동기 작업의 State에 따라 바뀌는 Customized Button의 구현
- 160816_Android / SoftKeyboard상태 Callback을 구현한 Activity
- 160808_Android / Gradle error : processReleaseResource issue
- 160803_Android / SwImageView Library module
- Rounded corner, Circle 이미지 뷰.
- 외각선 효과, 터치시 dimm효과, 이미지 로드 후 Transition효과.
- 160802_Android / RxAndroid lifecycle management
- 160801_Android / Nested Recycler View / Scroll state with Picasso
- 160727_Android / Nested Recycler View / Empty View
- 160726_Android / Nested Recycler View / Load More Pattern
- 160725_Android / Nested Recycler View / RecyclerView Item Decorations
- 160722_Android / Nested Recycler View / Infinite loop ViewPager, position Indicator
- 160720_Android / Nested Recycler View example project
- MVP, RxAndroid 적용.
- 160715_Android / SpannableTextView library module
- 160712_Android / Daily development learning / Method counting
- 160711_Android / Daily development learning / Generic RecyclerView Adapter 2
- 160927 / Generic RecyclerView Adapter /
NestedRecyclerView
의 지원에 따른 내부 메소드 추가/변경점 업데이트 - 160709_Android / Daily development learning / Generic RecyclerView Adapter 1
- 160708_Android / RxAndroid 이슈 / CompositeSubscription을 이용한 LifeCycle 관리
- 160707_Android / ViewPager 이슈 / Picasso와 비트맵 OOM
- 160706_Android / LegoLibrary 프로젝트 이슈 / private key 관리 해 보기
- 160705_Android / LegoLibrary 프로젝트 이슈 / Retrofit, Realm issue
- 210419 / (번역) How to parse JSON in Android using Kotlin
- 210310 / (번역) Coroutine 4 - Cancellation and timeout
- 210219 / (번역) Coroutine 3 - Create a basic coroutine – tutorial
- 210218 / (번역) Coroutine 2 - Coroutines basics
- 210217 / (번역) Coroutine 1 - Asynchronous programming techniques
- 200829 / Delegated Properties
- 200529 / Collection of kotlins
- 200424 / lateinit, by lazy. 늦은 초기화 방법 정리
- 200423 / 코틀린 표준 라이브러리 함수 일부 정리
- 191103 / Data class mapping 방법 정리
- 191102 / high order function, lambda
- 191031 / extension, infix function 을 이용한 kotlin unit test
- 201118 / pythonanywhere에 Flask세팅 하고 간단한 Restful API 세팅하기
- 170227 / Python 에서 싱글턴을 구현 하는 방법 정리
- 170225 / Python 기초 간단 정리
- 170214 / Python 기초 공부 여섯번째 시간
- 모듈과 패키지, 내장 메소드
- 170207 / Python 기초 공부 다섯번째 시간
- 클래스 와 상속, 오버라이딩, 오버로딩
- 170201 / Python 기초 공부 네번째 시간
- 함수, 사용자 입출력, 파일 입출력
- 170130 / 반복문과 제어문 연습 문제 풀이
- 170128 / Python 기초 공부 세번째 시간
- if-else, do-while, for
- 170118 / Python 기초 공부 두번째 시간
- 리스트, 튜플, 딕셔너리, 셋 자료 구조
- 170115 / PyCharm 을 이용한 개발 환경 세팅 및 기초 공부 첫번째 시간
- 원시 자료형, 문자열 자료형 및 관련 함수
- 170108 / Python3 와 django 세팅 하기
- 161124 / Builder Pattern
- 161123 / Prototype Pattern
- 161120 / Singleton Pattern
- 161119 / Factory Method Pattern
- 161118 / Template Method Pattern
- 161117 / Adapter Pattern
- 161114 / Iterator Pattern
- 201112 / 프로그래머스 / 문제 풀이 기록 14 - H-Index
- 201005 / 프로그래머스 / 문제 풀이 기록 13 - 피보나치 수
- 201004 / 프로그래머스 / 문제 풀이 기록 12 - 최댓값과 최솟값
- 200924 / 프로그래머스 / 문제 풀이 기록 11 - 제일 작은 수 제거하기, 핸드폰 번호 가리기
- 200921 / 프로그래머스 / 문제 풀이 기록 10 - 정수 내림차순으로 배치하기, 평균 구하기
- 200918 / 프로그래머스 / 문제 풀이 기록 9 - 자릿수 더하기, 문자열을 정수로 바꾸기
- 200913 / 프로그래머스 / 문제 풀이 기록 8 - 문자열 다루기 기본, 자연수 뒤집어 배열로 만들기
- 200913 / 프로그래머스 / 문제 풀이 기록 7 - 수박수박수박수박수박수?, 시저 암호
- 200912 / 프로그래머스 / 문제 풀이 기록 6 - 두 정수 사이의 합, 문자열 내림차순으로 배치하기
- 200911 / 프로그래머스 / 문제 풀이 기록 5 - 2016년, 가운데 글자 가져오기
- 200813 / Matrix spiral traversal
- n x n 2차원 배열에서 원소들을 시계방향, 역 시계방향으로 순회하는 방법에 대해 정리
- 200808 / 프로그래머스 / 문제 풀이 기록 4
- 200807 / 프로그래머스 / 문제 풀이 기록 3
- 200806 / 2개의 Stack으로 Queue구현 예제
- 200719 / 프로그래머스 / 문제 풀이 기록 2
- 200716 / 프로그래머스 / 문제 풀이 기록 1
- 161028 / 백준 온라인 저지 / 문제 풀이 기록 8
- 161029 / 문제 풀이 기록 추가
- 161014 / 백준 온라인 저지 / 문제 풀이 기록 7
- 161013 / 백준 온라인 저지 / 문제 풀이 기록 6
- 161012 / 백준 온라인 저지 / 문제 풀이 기록 5
- 160929 / 알고리즘 공부 정리
- 160922 / 문자열 관련 알고리즘
- 160722 / 백준 온라인 저지 / 문제 풀이 기록 4
- 160718 / Daily algorithms learning
- 160714 / 백준 온라인 저지 / 문제 풀이 기록 3
- 문자열 처리, 정렬
- 160713 / 백준 온라인 저지 / 문제 풀이 기록 2
- 정렬, 피보나치의수(DP)
- 161014 / 추가 피보나치의 수 2, 3
- 160712 / 백준 온라인 저지 / 문제 풀이 기록 1
- 주로 문자열 처리 관련 문제.
- 160710 / 기본기 BFS, DFS
- 기본적으로 알아둬야 할 것들 정리
- 230929 / Ryzen 7700x 바이오스 설정
- 210416 / 수면을 위한 유튜브 채널 및 플레이리스트 정리
- 210118 / 저나트륨 식단 및 도시락등 정리
- 201207 / gRPC 기초 개념 정리
- 201121 / Project Diablo II 정리
- 계속 추가될 예정...
- 201021 / Agile 업무 기록 - 이전 회사 에서 애자일업무를 했을때 경험을 정리한 글
- 200925 / (번역) 테크니컬 리더쉽을 위한 7단계
- 200923 / Android Studio(intellij)에서 특정 폰트가 보이지 않을 경우
- 200527 / AMD Ryzen CPU, Windows 10 환경에서 HAXM AVD 사용 하기 - 삽질
- 200305 / Redux 기초 조금 정리
- redux based android architecture 를 적용 하기 위해 가볍게 정리한 redux.
- 170106 / 프로그래밍 기초 1
- 161113 / 객체지향 개발 5 원칙 정리
- 160717_TDD / 테스트 주도 개발 방법론 정리
- 160707_Git / commit log 제거 하기