목록Programming/Android (6)
티라미수 코딩생활
평소처럼 2010년에 탄생하신 어르신 앱을 유지보수 하고 있다가 문제가 하나 발생했습니다. 메인 화면에서 startActivityForResult 로 검색 창으로 넘어가서 setResult 로 데이터를 받아와 상세뷰로 넘어가야 하는데, 아무 문제 없던 기능이 갑자기 작동을 안하는 겁니다. 문제 발생 문제는 startActivityForResult 파라미터 중 하나인 requestCode 였습니다. 나는 분명 Fragment 에서 requestCode 를 1로 줬는데 돌아오는 값은 제각각 (25341, 65692 ... ) 이었습니다. public void startActivityForResult (Intent intent, int requestCode) 원인 및 해결 int REQUEST_CODE = 1..
예전에 규모가 커진 앱의 기능 일부를 떼어내서 신규 앱을 런칭해야 하는 일이 있었습니다. 그때 마침 MVVM 패턴에 관심이 많았던 시기라 MVVM을 기반으로 한 프로젝트를 진행했습니다. 그러면서 처음으로 LiveData 에 대해서 공부했었는데, 당시에는 setValue() 와 postValue() 를 각각 써보면서, 에러가 나거나 성능에 큰 차이가 없다고 느껴서 그냥 넘어갔던 적이 있었습니다. Unit test 를 공부하다가 ViewModel 을 테스트 하는 상황이 생겨, LiveData 를 다시 만나게 되고 테스트 하는 방법을 찾던 중 좋은 글을 발견해서 글을 남기려고 합니다. https://jeroenmols.com/blog/2019/01/17/livedatajunit5/ 추후에 LiveData 를 ..

간단한 Local Test 작성해보기 2022.11.09 - [Programming/Android] - [Android] App Test 시작해보기 [Android] App Test 시작해보기 내가 앱 테스트를 공부하게 된 이유 모든 공부가 그렇지만 안드로이드를 개발하고 공부해오면서 매번 느끼는 것은 공부할 게 참 많다라는 것이었다. 그러다보니 공부 할 것도 당장 필요한 것만 tiramisu-code.tistory.com CodeLab : https://developer.android.com/codelabs/advanced-android-kotlin-training-testing-basics#0 지난 글에서 처음으로 App Test를 처음 공부하고 글을 남겼는데, 이번엔 공부한 것을 바탕으로 간단하게 테..

내가 앱 테스트를 공부하게 된 이유 모든 공부가 그렇지만 안드로이드를 개발하고 공부해오면서 매번 느끼는 것은 공부할 게 참 많다라는 것이었다. 그러다보니 공부 할 것도 당장 필요한 것만 하게 되면서 테스트에 대한 공부는 항상 개인적인 우선순위가 밀렸었다. 이말은 즉, 지금까지 앱을 배포하기 전에 직접 테스트해보고 QA도 요청해서 해보고 다 수작업으로 테스트 해왔다는 것이다. When you implemented the first feature of your first app, you likely ran the code to verify that it worked as expected. You performed a test, albeit a manual test. As you continued to add..
Android 와 앱 개발을 하면서 가장 많이 하게 되는 것은 Data를 UI에 보여주는 것이다. View 가 시작될 때 데이터를 DB 혹은 RestApi 를 통해서 요청(request)하게 되고, 응답(response) 받은 데이터를 UI에 보여주는 과정이다. 이 일련의 과정(request-response)이 최근으로 올 수록 Observer패턴을 활용하는 반응형(Reactive)이 대세가 되어가는 것 같다. RxJava 를 먼저 공부하고 Coroutine 을 공부하기 시작하면서 양쪽에서 강조하는 것이 같다고 느꼈다. 데이터의 변화를 감지(Observe) 하고 자동으로 View까지 전달하게 하는 파이프 라인같은 앱 내에서 인프라 구축하는 것이다. 파이프 라인은 물이 한 방향으로 흐르는 것처럼, 데이터를..
이번주, 업무 중 REST API 로 아이템 리스트를 내려받은 뒤, 내려받은 아이템들의 현재가치를 앱에서 계산해서 저장 및 활용해야 하는 상황이 있었다. 이 과정에서 너무나도 당연한데 깜빡 했던 내용이 있어서 남겨두려 한다. 지금 담당하고 있는 프로젝트는 기본적으로 자바로 구현되어 있는데, Kotlin Data Class 를 쓰다보니 Java getter & setter 를 만드는게 싫다는 느낌이 들어 data class 만 Kotlin 으로 만들어 보고자 했다. 알고있는 Kotlin 의 Data Class 의 장점 중 하나는 자동적으로 getter & setter 를 구현해 주는 것. data class Data( val name: String, val job: String, val point: Str..