전체 글(110)
-
Retrofit + OkHttp + Coroutine 날씨 공공데이터 API 예제 - 3(Domain)
전 편이 궁금하신 분들은 아래에 링크로 ㄱㄱ 2022.10.07 - [분류 전체보기] - Retrofit + OkHttp + Coroutine 날씨 공공데이터 API 예제 - 2 Retrofit + OkHttp + Coroutine 날씨 공공데이터 API 예제 - 2 :: 개발하는무사시 dev-musa.tistory.com 이번 글에서는 Domain 영역을 어떻게 만들었는지 적으려고 합니다. 부족한 글 봐주셔서 감사합니다. Domain 영역입니다. WeatherRepository Retrofit2를 이용하여 통신을 할 것이고 1. getWeather 함수는 날씨 공공 데이터에서 받아올 단기예보를 위한 함수입니다. 2. getCurrentWeather 함수는 현재 시간의 날씨를 받아오기 위한 함수입니다. ..
2022.10.08 -
Retrofit이란 무엇이고, Retrofit을 이용한 공공데이터 API ( 날씨 ) + Hilt로 DI + MVVM 구조로 만드는 기본적인 과정의 이해
Retrofit2란 무엇일까? Android App 개발 시 REST API를 구현하기 위해 사용하는 네트워크 통신 라이브러리 기존의 네트워크 통신 라이브러리들은 뭐가 있었을까? 1. HttpURLConnection - 초기 안드로이드 표준 라이브러리 2. HttpClient - Apache HTTP 라이브러리, HttpURLConnection 내부 문제로 함께 사용됨 3. Volley - 2013년 Google I/O 발표 http 통신 라이브러리 4. okHttp - square사에서 만든 네트워크 통신 라이브러리 5. Retrofit - 2013년 1.0, 2016년 2.0 발표 현재 안드로이드 앱 개발에 가장 많이 사용하는 네트워크 통신 라이브러리 - OkHttp 상위 구현체 - Google An..
2022.09.28 -
Android Compose
Android Compose란 무엇인가? Jetpack Compose는 Android에서 UI를 만들기 위해 새롭게 선보인 기능입니다. Swift와 같이 선언형 UI로 View를 그립니다. 선언형 UI 란 UI의 변화가 있을 때 변화된 UI 자체를 새로 만들어 View로 보여주는 방식입니다. 이게 무슨 말이냐. 기존에는 UI를 만들 때 명령을 내려서 만들었습니다. 버튼 클릭으로 인해 View에 변화가 생기는 일이 발생한다면 버튼에 연결된 View와 View에 연결된 객체를 갱신하도록 전부 바꿔주고 관리하고 연결하고 과정을 싹 다 했었습니다. 그런데 선언형 UI는 버튼 클릭으로 객체가 변경되고 그에 따라 View가 변경될 때 변경되는 값만 신경 씁니다. 값이 변경되면 아예 새로 싹 다 그리도록 만들었습니다..
2022.09.28 -
안드로이드 4대 컴포넌트
안드로이드 4대 컴포넌트 안드로이드의 컴포넌트 중 구성요소로 필수적인 요소가 있다. 첫번째 액티비티 두번째 서비스 세번째 브로드캐스트 리시버 네번째 콘텐츠 제공자 먼저, 액티비티는 우리가 너무나 익숙한 것이다. 안드로이드 스튜디오로 앱 개발을 한번이라도 해본 사람은 무조건 봤을것이다. 1. 액티비티 액티비티( Activity )는 쉽게 말하면 화면이고, 좀 더 디테일하게 말하면 사용자와 상호작용하기 위한 진입점이며 화면을 동작 하기 위한 여러 요소들이 모여있는 컴포넌트이다. 2. 서비스 서비스는 쉽게 말하면 보이지 않는 일꾼이다. 예를 들어, 멜론을 보자.멜론으로 노래를 듣다가 카카오톡을 확인하고 싶어서 카카오톡으로 앱을 바꿨다. 그래도 음악은 계속 나온다.또 만약에 핸드폰을 무언가 다운로드를 받는다고 ..
2022.09.26 -
Restful, Rest, Restful API
Rest API에서 API 무엇인가요?? 먼저 API란 쉽게 말하면 "원칙, 규칙" 입니다. 규칙은 합의한 사항이고 지켜야 하는 법칙입니다. 그럼 무엇을 어디에서 합의하고 지켜야하는걸까?? 바로 " 서로 다른 애플리케이션, 소프트웨어 사이 " 에서 서비스를 제공하기 위한 " 일종의 통신 규약 " 입니다. 그렇다면 REST API 는 무엇인가요?? 이제 REST API 를 알아보자. REST API 를 한마디로 생각해보면 " REST API는 웹에서 데이터를 전송하고 처리하기 위해 정의한 인터페이스이다. " 라고 생각합니다. 더 디테일하게 말하면 " 웹과 같은 분산 하이퍼 미디어 시스템을 이용하는 소프트웨어 애플리케이션의 네트워크 통신을 위한 구조, 규약. " 입니다. REST 는 Representatio..
2022.09.26 -
Serialization(직렬화) & Deserialization(역직렬화)
Serialization 직렬화는 무엇인가요?? 나무 위키 => 직렬화(直列化) 또는 시리얼라이제이션(serialization)은 컴퓨터 과학의 데이터 스토리지 문맥에서 데이터 구조나 오브젝트 상태를 동일하거나 다른 컴퓨터 환경에 저장(이를테면 파일이나 메모리 버퍼에서, 또는 네트워크 연결 링크 간 전송)하고 나중에 재구성할 수 있는 포맷으로 변환하는 과정이다. [1] 직렬화 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. ko.wikipedia.org 다양한 블로그, 사이트에서 Serialization에 대한 글을 보면 대부분 이와 같거나 비슷한 의미로 직렬화에 대한 정의를 내리고 있는 걸 찾아볼 수 있습니다. 종합해서 생각해 봤을 때 Serialization은 데이터를 가공하는 ..
2022.09.26