포스팅 썸네일 이미지

학습

ViewModelProvider, ViewModelStore

오늘은 Pluu 개발자 님의 ViewModelProvider 글을 읽고 정리했습니다. https://pluu.github.io/blog/android/2020/05/04/viewmodel-b-to-d/ Pluu Dev - ViewModel의 B에서 D까지 [DataBinding] 중복으로 BindingAdapter가 생성되는 문제 코드 Posted on 23 Mar 2024 UI Code Snippet용 Plugin 제작기 ~ 4부 : Drag, Copy, Paste Posted on 17 Mar 2024 UI Code Snippet용 Plugin 제작기 ~ 3부 : Import Posted on 09 Mar 2024 UI pluu.github.io ViewModelProvider activity-ktx..

2024.03.29 게시됨

포스팅 썸네일 이미지

TIL

240328 TIL - 공공데이터 포털 버스 API 돌아보기

오늘도 이전 프로젝트 코드들을 다시 점검했으며, 주된 목표는 API 확인 및 로직 간소화였습니다. 초정밀 버스 구현을 위한 API 다시 확인해보기 이전에 카카오에서 제공하는 초정밀 버스를 서울시와 경기도 API를 이용해 구현하고자 했습니다. 경기도는 버스 좌표를 제공하지 않아 구현하지 못했지만, 서울시는 API를 통해 버스의 실시간 GPS 좌표를 제공하여 구현을 시도했습니다. 아래 영상은 당시 API를 이용해 서울시 버스의 실시간 좌표를 추적하며 테스트해본 것입니다. API를 통해 위치를 업데이트할 때마다 버스 마커가 깜빡이도록 설정했습니다. 최소한 5초는 지나야 위치가 업데이트 되어, 갱신 주기를 5초로 설정했습니다. 당시에는 이 기능을 빼는 것으로 결정했습니다. 구로디지털단지 주변의 일부 버스는 30..

2024.03.29 게시됨

포스팅 썸네일 이미지

TIL

240327 TIL - 학습 방향 수정

기존 학습 방향 아래의 내용들을 1~2시간 씩 시간을 쪼개서 매일 학습하고 있었습니다. Hilt 주입 강의 Kotlin In Action 책 코틀린 코루틴 책 인프런 CS 강의 LeetCode Android 구현(사이드 프로젝트) 피드백 받은 부분과 지금 학습할 내용 부족하다고 생각되는 모든 것을 학습하는 것이 아니라, 취업을 위해 당장 부족한 부분을 하나 하나 채워가는 것이 좋다는 피드백을 받았습니다. 현재 저의 서류는 거의 백지와도 같은데, 이전에 진행했던 팀프로젝트에서 적을 내용이 없다고 생각했기 때문입니다. 그런 생각에서 멈추지 말고, 그러면 적을 내용이 있도록 프로젝트를 개선하고, 다른 팀원이 구현한 내용들도 보면서 서류를 우선 완성하는 것이 좋겠다는 피드백을 받았습니다. 그래서 기존에 학습하던..

2024.03.27 게시됨

포스팅 썸네일 이미지

TIL

240326 TIL - Volatile, Custom View 그리고 String 문자열 다루기

오늘 학습한 내용 인프런 CS 강의 DEEP DIVE : 싱글톤 패턴을 구현하는 7가지 방법 #2 ( Volatile 관련 개념 ) 사이드 프로젝트 - PickPick Custom View에서 Layout이 View를 어떻게 그리는지 분석 프로그래머스 문자열 내림차순으로 배치하기 문제 다시 풀어보기 Volatile 멀티쓰레딩 환경에서 쓰레드가 2개 이상 생성되면 각 쓰레드는 변수가 케시메모리에 존재하면 그 값을 사용하며, 존재하지 않을 때 메인메모리에 접근하여 가져온다. 만약 쓰레드 A가 특정 Flag가 false로 바뀌기 전까지 while문을 반복할 때, 다른 쓰레드가 해당 값을 바꿔도 쓰레드 A는 캐시 메모리에 있는 값만 바라봄으로써 영원히 while문을 벗어나지 못할 수 있다. 예를 들어, 아래 코..

2024.03.26 게시됨

포스팅 썸네일 이미지

코딩테스트

Kotlin Boxing Type 쓰지 마세요 체질이라는게바뀝니다

240409 내용 추가 이 글에서 설명한 시간 측정 차이는 프로그래머스 채점 오류라고 생각합니다. 아래 글을 참고해주세요. https://dodobest.tistory.com/96 프로그래머스 시간 측정 오류와 H-Index 문제 프로그래머스 Kotlin 시간 측정 오류 https://dodobest.tistory.com/86 Kotlin Boxing Type 쓰지 마세요 체질이라는게바뀝니다 프로그래머스 문자열 내림차순으로 배치하기 문제를 풀어보며, String을 다룰 때 어 dodobest.tistory.com ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 프로그래머스 문자열 내림차순으로 배치하기 문제를 풀어보며, String을 다룰 때 어떻게 하면 시간을 단축할 수 있는지 알아보겠습니다. https://s..

2024.03.26 게시됨

포스팅 썸네일 이미지

TIL

240325 TIL

오늘 학습한 내용 Kotlin In Action - 6.3 컬렉션과 배열 - 7.1 산술 연산자 오버로딩 일부 인프런 CS 강의 - 디자인패턴 소개 - 라이브러리와 프레임워크의 차이 - 싱글톤 패턴 DEEP DIVE : 싱글톤 패턴을 구현하는 7가지 방법 #1 Hilt 주입 강의 - 5-4. Hilt를 이용한 의존성 주입 예제 사이드프로젝트 - SwipeDeck Repository Kotlin으로 변환하면서 로직 흐름 살펴보기 240325 23:05 기준으로 Notion이 고장나서, 오늘 학습한 내용을 정리한 노션 페이지에 접근할 수 없다. 내일 아침에 노션이 고쳐지면 학습한 내용 목록을 업데이트할 것이다. PDT는 한국 표준시보다 16시간 느리다고 한다.

2024.03.25 게시됨

포스팅 썸네일 이미지

TIL

240322 TIL

Kotlin Companion Object와 Java static에 대해 학습했습니다. 가독성이 좋지 않은 것 같아, 주말에 부족한 내용(object와 companion object의 차이, Kotlin의 const 키워드에 따른 차이 등)을 보충하면서 글을 정돈할 예정입니다. https://dodobest.tistory.com/82 Kotlin의 companion object vs Java의 static Kotlin에서의 object 키워드 object 키워드를 이용해서 클래스를 정의하면, 정의와 동시에 인스턴스(객체)를 생성합니다. object 키워드를 사용하는 상황은 아래와 같습니다. 이 중에서 객체 식을 제외 dodobest.tistory.com 처음에는 Stack을 이용했으며, 그 다음에는 Mu..

2024.03.22 게시됨

포스팅 썸네일 이미지

코딩테스트

프로그래머스 햄버거 만들기 Kotlin 빠른 답안

https://school.programmers.co.kr/learn/courses/30/lessons/133502 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제의 테스트 케이스가 모든 경우를 다루고 있지 않아, 꼼수로 소요 시간을 줄일 수 있다. class Solution { fun solution(ingredient: IntArray): Int { var answer: Int = 0 var idx = 0 val stack = IntArray(100) var cursor = 0 for (num in ingredient) { if (num == or..

2024.03.22 게시됨

포스팅 썸네일 이미지

학습

Kotlin companion object vs Kotlin object in class vs Java static

목차 object 키워드는 무엇인가 object class는 무엇인가 companion object는 무엇인가 Java에서의 Kotlin Companion object Companion object에서 const val는 어떻게 변환될까 class 내의 object class와 companion object는 어떤 차이가 있는가 Java static block @JvmStatic @JvmField 자바에서 Kotlin Companion Object와 같은 클래스 만들어보기 1. Kotlin에서의 object 키워드 object 키워드를 이용해서 클래스를 정의하면, 정의와 동시에 인스턴스(객체)를 생성합니다. object 키워드를 사용하는 상황은 아래와 같습니다. 이 중에서 객체 식을 제외한 나머지 2가지..

2024.03.22 게시됨