2023/04 5

[안드로이드] 회전목마(Carousel) 애니메이션 구현하기

게임에서 아이템이나 캐릭터 선택을 할때 회전 목마처럼 돌아가는 선택 애니메이션을 자주 볼 수 있는데, 이것을 안드로이드에서 구현해 볼 수 있는 기회가 생겼다. 사실 노가다를 하면 어떻게든 구현할 수 있지만, 이번에는 문제를 분석하고 쪼개보는 연습을 겸해봤다. 💡 요구사항: 3가지 종류의 상자가 있고, 이 상자들을 돌려가면서 열 상자를 선택하게 해주세요. 1. 상자 유형 데이터화 첫번째로 해야할 일은 상자를 데이터화하는거다. enum 클래스로 상자의 이미지, 가격, 이름이 담긴 LuckyBoxType을 만들어 주었다. enum을 사용한 이유는 순차적 접근이 sealed class보다 훨씬 쉽기 때문이다. enum class LuckyBoxType( val image: Int = 0, val cost: In..

포맷 후 cli로 설치 셋업

평소에 사용하는 프로그램들을 새로운 Mac에서 쉽게 설치하는 용도로 모아보았다. brew install --cask google-chrome brew install --cask visual-studio-code brew install --cask slack brew install --cask notion brew install --cask docker brew install --cask karabiner-elements brew install --cask postman brew install --cask iterm2 brew install --cask figma brew install --cask displaylink brew install --cask dbeaver-community brew insta..

[Python] 국내 주요 음원차트 API

Melon | melon-chart.py Bugs | bugs-chart.py Genie | genie-chart.py Vibe | vibe-chart.py Flo | flo-chart.py Flutter 강의를 막 떼서 음원차트 트래킹 앱을 만들어볼까싶었다. Front는 목록이랑 알림정도라서 난이도가 높지않아 보였지만, Backend는 국내 음원사이트 긁어오는 프로그램부터 만들어야하는데...생각에 현재 배포된 국내음원차트 API들을 살펴보았는데 대부분 웹 크롤링 방식이었다. 봇이라고 거르지도 않고, 음원사이트들이 그래도 몇년에 한번씩 단장하기때문에 꽤 괜찮은 방법이긴하지만 개인적으로는 진짜 API를 따오고 싶었다. 다행히도 내가 안드로이드 개발자이기 때문에 당장 떠오르는 방법이 있었다. 바로, 앱에서 ..

자취인 추천 간편식 명단

맛있는 - 멕시카나 매콤 닭강정 (양념): 치킨 충동을 막아줌 - 배민B마트 순대국의 정석은 배민이지: 비리지 않고 맛있음, 본인 농부백암순대도 다녀온사람 - 사옹원 한입 아삭 김치전: 크기가 적당하고, 김치도 많음 - 청정원 로제 파스타: 저평가되어있지만, 이만큼 무난한 아이템이 없음 - 비비고 깻잎고기만두: 피와 속의 비율이 알잘딱 미쳤고, 깻잎이 깔끔하게 고기의 느끼함을 잡아줌 - 하코야 살얼음 동동 가라아게 냉우동: 맛있는 가라아게, 쫄깃한 면발과 상큼한 국물. 하코야 시리즈에 실망했어도 이건 추천. - 참도깨비 부산 돼지국밥: 저렴한데 돼지살이 푸짐함. 돼지국밥 특유의 냄새에 민감하다면 부추를 잔뜩 넣어먹으면 맛있음 유용한 - 프레머스 해물모둠: 해물이 크고, 씻지않고 바로 넣어도 비린게없음

Flow.map() vs Flow.transform()

fun getPagedFavoritePosts(): Flow = Pager( config = PagingConfig(25), pagingSourceFactory = { GenericPagingSource { afterKey -> redditApi.loadFavoritePosts(getUserName(), afterKey) } } ).flow.transform { pagingData -> emit(pagingData.map { (it.data as PostDto).map() }) } 우연히 오픈소스 코드를 보다가, 나라면 map을 썼을 것 같던 구문에 transform을 사용한 것을 발견했다. transform? 처음 들어봤는데 이름이 map과 왠지 비슷한 일을 할 것같아서 찾아보았다. map Flow의 ..