분류 전체보기

Android/미분류

안드로이드 Architecture 패턴 예제 코드(MVC, MVP, MVVM, LIVEDATA, KOIN, RXJAVA, DataBinding)

모든 예제 코드는 구글 청사진을 기본으로 구현되었습니다. 모든 프로젝트가 저장되어 있는 저장소입니다 (MVC, MVP, MVVM) Nanamare/android_architecture Simple Android architecture app. Contribute to Nanamare/android_architecture development by creating an account on GitHub. github.com 모든 예제 코드에서 API 비동기 처리 및 Observer 패턴 구현에 RxJava가 사용되었습니다. MVC 적용(RxJava 사용) MVP 적용(RxJava 사용) MVVM 적용(ObservableField + Databinding + RxJava 사용) MVVM 적용(LiveData ..

Android/Development Tips

Custom view 에서 Koin 사용해 ViewModel 주입할 때 주의 할점

몇일전에 CustomView에서 viewModel 을 주입하며 삽질한 경험입니다. 보통 커스텀 뷰를 만들면 이런 모습이 많이 나오게 됩니다. class CustomView : BaseCustomView { constructor(context: Context) : super(context) constructor(context: Context, attrs: AttributeSet?) : super(context, attrs) constructor(context: Context, attrs: AttributeSet?, defStyleAttr: Int) : super(context, attrs, defStyleAttr) } 근데 만들고 나면 CustomViewModel 을 주입 시켜줘야 하는데 액티비티가 아니기..

Daily & Thinking

결혼, 이직 그리고 성장

오랜만에 글 쓰는 것 같다! 요 근래 참 많은 일이 있었다. 역시나 가장 큰 일은 결혼이다. 불안정한 나를 있는 그대로 받아주고, 이해해주고 사랑해주는 반쪽을 만났고, 결혼에 골인했다. 가끔 와이프를 보면 아름답고, 사랑스러움을 뛰어 넘어, 경이롭게 보이기도 한다. 너무나 행복하다 :) 또 곧 9월부로 나는 한 가정의 아버지가 된다! 결혼을 위해 상견례 등을 하며 알게 된 사실이 있는데 와이프의 어머님(장모님)이 은행권에서 약 30년을 일하셨다는 사실이다. 당시 다니던 회사에서 성장에 대한 목마름을 느끼고 있었고, 새로운 분야에 도전해보고 싶어했는데, 장모님에게 이런저런 이야기를 들으면서 금융권도 재미있는 분야구나 언젠가는 경험해보고싶다는 생각도 들었고, 블록체인 같은 분야도 도전해보고싶었다. 이런 생각..

Android/Development Tips

YUV420_8888 to NV21

Planar format 의 YUV 420 포맷을 Single byte array 로 변환

Daily & Thinking

오랜만에 공부겸 알고리즘 테스트

예전에 테스트를 봤을 때는 입력, 출력 부분도 신경을 써야했는데 요즘 인터넷에서 보는 테스트들은 로직 자체에 신경을 쓸 수 있도로 환경을 제공하는 것 같아 시간을 세이브 할 수 있었다. 하지만 어이없게도 1번문제에서 실수를 했다 ㅠ.ㅠ 천천히 알고리즘 공부를 다시 해야겠다. 친해지자 알고리즘아- ps. 몇몇 아는 친구들이 보여서 반가웠음 ㅋ.ㅋ

Android/Today I Learned

Recycler view 동작 원리

Recycler view 동작 원리 Recycler view 의 아답터에 데이터가 300개 있고 화면에 10개의 데이터가 보여진다면, 10개의 데이터 공간을 생성하고, 그 10개의 공간을 재활용해서 300개의 데이터를 보여준다 호출 순서 getItemCount 함수를 이용하여 Item 의 총 갯수가 몇개 인지 판단하고, getItemViewType 이 불리면서, 현재 뷰의 Position에 해당하는 ViewType을 판단한다. 이후 onCreateViewHolder에서, ViewType 에 해당하는 ViewHolder를 생성한다. onBindViewHolder 에서는 onCreateViewHolder 에서 생성된 ViewHolder 를 가져와서 현재 포지션에 맞는 데이터를 뷰홀더안에 뷰들에게 바인딩해준다..

Algorithm

정올/큐

큐는 먼저 들어온 데이터가 먼저 출력된다. 이러한 구조를 선입선출(FIFO - First In First Out)이라고 한다.이러한 큐 자료구조는 보통 우리의 생활에서는 매우 일상적인 자료구조이다. 큐 자료구조의 형태를 가장 흔히 볼 수 있는 게 “줄서기”가 될 것이다. 은행 창구에서 줄을 서거나, 버스를 기다리기 위해서 줄을 설 경우 가장 먼저 줄을 선 사람이 가장 먼저 은행 업무를 처리하거나, 버스를 타게 된다.(새치기 하는 경우는 생각하지 말자)그림과 같은 큐 자료구조를 설계하고, 처리조건에 맞는 출력을 하시오. ≪처리조건≫ 1. 주어지는 명령은 다음의 3가지이다. 2. "i a"는 a라는 수를 큐에 넣는다. 이때, a는 10,000 이하의 자연수이다. 3. "o"는 큐에서 데이터를 빼고, 그 데이..

Algorithm

백준/2502/떡먹는호랑이

떡 먹는 호랑이 스페셜 저지시간 제한메모리 제한제출정답맞은 사람정답 비율1 초128 MB21761217101457.877%문제하루에 한 번 산을 넘어가는 떡 장사 할머니는 호랑이에게 떡을 주어야 산을 넘어갈 수 있는데, 욕심 많은 호랑이는 어제 받은 떡의 개수와 그저께 받은 떡의 개수를 더한 만큼의 떡을 받아야만 할머니를 무사히 보내 준다고 한다. 예를 들어 첫째 날에 떡을 1개 주었고, 둘째 날에는 떡을 2개 주었다면 셋째 날에는 1+2=3개, 넷째 날에는 2+3=5개, 다섯째 날에는 3+5=8개, 여섯째 날에는 5+8=13개를 주어야만 무사히 산을 넘어갈 수 있다. 우리는 산을 무사히 넘어온 할머니에게 오늘 호랑이에게 몇 개의 떡을 주었는지, 그리고 오늘이 호랑이를 만나 떡을 준지 며칠이 되었는지를 ..

Algorithm

정올/소시지공장

영훈이가 소시지 공장에 견학을 갔다. 그 소시지공장에서는 하나의 기계가 길이와 너비가 다양한 소시지를 만들어 내고 있었다. 유심히 살펴보니 그 기계는 현재 만들고 있는 소시지의 길이와 너비가 바로 전에 만들었던 소시지의 길이, 너비보다 크거나 같아야만 기계가 쉬지 않고 작동하고 있었다. 만약 현재 만들고 있는 소시지의 길이 또는 너비가 바로 전에 만든 것보다 작다면, 기계가 준비 작업을 하는데 1분이 소요된다는 것을 알았다. 영훈이는 주문 받은 소시지의 길이와 너비를 보고 어떤 소시지부터 만들어 나가는 것이 기계의 준비 작업에 소요되는 시간을 줄일 수 있을지 고민하고 있다. 주문받은 소시지들을 만드는데 기계가 준비 작업에 소요한 최소의 시간을 구하는 프로그램을 작성하시오. 단, 첫 소시지를 만들 때는 기..

Nanamare
'분류 전체보기' 카테고리의 글 목록 (18 Page)