본문 바로가기

전체 글96

[안드로이드/Kotlin] Retrofit2 사용하기 내가 2022년 3월 달에 Get, Post에 대해서 올렸었는데, 내용이 한참 부실했기 때문에 다시 정리해 본다. 전에 올린 포스팅은 링크를 올려두겠다. https://krapoi.tistory.com/entry/%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9CJAVA-Rest-API-GET-POST-%EC%95%8C%EC%95%84%EB%B3%B4%EA%B8%B0 [안드로이드/JAVA] Rest API GET, POST 알아보기 내가 이번에 앱을 만들면서 서버와 연동을 하게 되었는데 REST API로 만들었다고 한다. 그래서 어떻게 연결하나 찾아보면서 공부했는데 생각보다 어려웠다. Manifest 일단 먼저 Manifest에 를 추가하고 krapoi.tistory.com.. 2022. 8. 23.
[안드로이드] Fragment를 사용할때 요즘 안드로이드를 책으로 보고 공부를 하고 있는데 Fragment를 배울 때 FrameLayout에 transacion을 이용해서 Fragment를 적용시키는 방법을 하고 있었다. 책에서는 FrameLayout의 크기를 따로 정해주지 않아 자동으로 정해지는 크기를 사용했는데, 테스트할 때 화면을 가득 채우는 상황이 발생했다. 책에서는 FrameLayout에 잘 들어가서 딱 맞게 나오는데 나는 왜 이렇게 겹쳐지는지 몰라 검색을 해봤는데, 검색해서 나온 것 그대로 해도 똑같더라. 그래서 혹시나 하는 마음에 크기를 건드려봤는데 정답이었다. FrameLayout의 크기가 일정 크기 이상으로 넘어가면 그냥 Fragment를 다 씌워 버려서 따로 높이를 조정하니 겹치지 않고 잘 나오게 되었다. 대충 임시방편으로 이.. 2022. 8. 22.
[안드로이드/Kotlin] RxJava - 마블 다이어그램 과 Observer 오늘은 RxJava의 설명을 듣다 보면 빠지지 않는 마블 다이어그램과 옵저버를 알아보려 한다. 마블 다이어그램 이 마블 다이어그램은 반응형 프로그래밍에서 일어나는 비동기적인 데이터 흐름을 시각화한 도표이다. 이 마블 다이어그램을 읽는 방법을 알아보자. 읽는 방법 위 사진에서 설명하는 것처럼 읽으면 되는데, 위 사진에서 Observable을 언급한다. 이 Observable을 알아야 마블 다이어그램을 읽을 수 있을 것 같으니 한번 알아보자. Observable RxJava에서는 Observable을 구독하는 Observer가 존재하며, Observable이 순차적으로 발행하는 데이터에 대해서 반응한다. 이 Observable은 3가지의 이벤트를 사용하여 동작한다. onNext() : 하나의 소스 Obser.. 2022. 7. 7.
[안드로이드/Kotlin] RxJava - RxJava란? 안드로이드를 반응형으로 프로그래밍할 때, 코루틴과 RxJava를 사용해서 프로그래밍할 수 있는데 나는 RxJava를 배워 보려 한다. 먼저 왜 배워야 하는지 알아보자. RxJava를 배우는 이유 먼저 개발자들은 동시성 문제, 다중 이벤트 처리, 백그라운드 스레드 처리 등을 다루면서 많은 문제점에 직면한다. 이에 RxJava는 범용적이고 확실한 해결책을 제시해 준다. 대부분의 사용자들은 애플리케이션이 사용자의 요청에 즉각 적으로 반응하길 원하며 ( 앱이 빠르길 원하며 ), 반응성이 느린 앱은 ( 속도가 느린 앱은 ) 활성 사용자 지표에 영향을 미칠 수 있다. RxJava는 어려운 작업을 쉽게 하며, 기존에 작성한 비즈니스 로직에 새로운 프로세스가 추가되어야 한다는 것을 알게 되어도, 큰 리팩터링 없이 몇 .. 2022. 6. 24.
[안드로이드/JAVA] 의존성주입(DI)을 알아보자 오늘은 클린 아키텍처를 설계할 때 필요한 친구인 의존성 주입(DI)을 공부해왔다. 차근차근 알아보자. 의존성 주입이란? 의존성 주입( DI, Dependency Injection )이란 하나의 객체에 다른 객체의 의존성을 제공하는 기술을 말한다. 이 의존성 주입이란 단어를 처음 듣는다면 좀 어렵게 느껴질 수 있는데, 의존성과 주입이라는 단어를 나누어 생각하면 좀 더 이해하기 쉽다. 의존성은 객체 지향에서 두 클래스 간의 관계이다. 일반적으로 둘 중 하나가 다른 하나를 필요로 한다. 예제를 하나 살펴보자. class CPU {} public class Computer { private CPU cpu; public Computer() { cpu = new CPU(); } } 컴퓨터에 포함되는 CPU가 컴퓨터.. 2022. 6. 13.