Kotlin

Kotlin/개념 정리

개념 정리: JSON 구조

1. JSON 구조란? JSON은 자바스크립트의 객체 표기법으로부터 파생된 부분 집합입니다. 따라서 JSON 데이터는 다음과 같은 자바스크립트 객체 표기법에 따른 구조로 구성됩니다. 객체(object)는 중괄호({})로 감싸며, 키(key)와 값(value)은 콜론(:)으로 구분됩니다. 각각의 키-값 쌍은 쉼표(,)로 구분됩니다. 배열(array)은 대괄호([])로 감싸며, 값은 쉼표(,)로 구분됩니다. 문자열(string)은 큰따옴표("")로 감싸며, 특수 문자를 이스케이프(escape)할 수 있습니다. 숫자(number)는 정수 또는 실수로 표현할 수 있습니다. 부울(boolean)은 참(true) 또는 거짓(false) 값을 가집니다. null은 값이 없음을 나타냅니다. 2. 실제 형식 2-1. J..

Kotlin/개념 정리

개념 정리: Retrofit2 사용 법

1. Retrofit2란? Retrofit2는 안드로이드 애플리케이션에서 REST API를 사용하여 서버와 통신하는 라이브러리입니다. 스퀘어에서 만들었으며 HTTP 통신을 간편하게 만들어줍니다. Retrofit1도 있지만, Retroift2가 2015년에 나왔으므로 이제 Retrofit하면 전부 Retrofit2라고 봐도 무방합니다. 1-1. REST API REST API(Representational State Transfer Application Programming Interface)는 웹 기반 응용 프로그램에서 사용되는 소프트웨어 인터페이스입니다. 클라이언트 - 서버 모델을 기반으로 하며, HTTP 프로토콜을 통해 서버와 클라이언트 간 통신을 합니다. 전송하는 데이터 형식은 일반적으로 JSON과..

Kotlin/개인 프로젝트

날씨 앱 제작: 전체적인 작동 구조 고안

전체적인 작동 구조 고안 1. 목표 날씨 API를 이용하여 실시간 날씨 정보와 7일간의 일기 예보 정보 받아오기. 받아온 정보를 앱 화면에 표시. 검색 기능을 통하여 다양한 지역의 날씨 예보 받아오기. 실시간 날씨는 상단에 넣고, 일기 예보는 카드 뷰 형식으로 깔끔하게 만들어서 스크롤 할 수 있는 형태로 구현하기. 스크롤을 내려도 실시간 날씨는 컴팩트하게 변해서 계속 볼 수 있도록 만들기. 지역에 따른 낮과 밤 시간에 따라 배경화면 변하게 만들기. 검색한 지역을 저장하고, 네비게이션 바에 따로 구현하여 클릭하면 따로 검색할 필요 없이 날씨 정보를 구현할 수 있게 제작하기. 2. 구현 방법. Retrofit을 이용하여 날씨 정보 받아온다. 개념 정리: Retrofit2 사용 법 1. Retrofit2란? ..

Kotlin/개인 프로젝트

날씨 정보 앱 제작 : 사전 연습

1. 목표 삼성 기본 앱에 있는 날씨 앱처럼 구현하기 위해 연습하고 있다. 이번 프로젝트는 삼성 앱처럼 드로우 네비게이션 바를 구현하고, 그곳에 즐겨찾기 등록한 날씨 위치와 이 목록을 관리할 수 있는 페이지를 제작하는 것으로 계획하였다. 2. 구현 방식 2-1. 초기 설계 연습적인 목적이 있어서 이번 기회에 안드로이드 스튜디오에서 기본적으로 제공되는 드로우 네비게이션 레이아웃의 원리에 대해서도 같이 공부하면서 진행하기로 하였다. 공부 시간을 배로 늘린 주 원인 안드로이드 스튜디오에서 기본 제공되는 네비게이션 바를 그대로 사용하지는 않고, 그냥 필요한 부분만 가져다 썼다. 뭔가 nav_graph로 여러 Fragment를 관리하는 것이 좀 좋아 보여서 사용하고 하는 방식으로 말이다. 단순히 따라하는 것인데 ..

Kotlin/예제 정리

예제 정리 : 페이징 리스트에 리플래쉬 기능 추가하기

1. 목표 이미지 리스트 구현하기 리사이클러뷰 사용하기 Paging 3 라이브러리에 이해하고, 사용하기 아래 링크에서 부터 이어서 구현하였습니다. 예제 정리 : 이미지 리스트 구현 1. 목표 이미지 리스트 구현하기 리사이클러뷰 사용하기 Paging 3 라이브러리에 이해하고, 사용하기 아래 링크에서 부터 이어서 구현하였습니다. 이미지 화면 구현 코틀린을 활용한 이미지 상세 baboprograming.tistory.com 2. 사용 기술 Refresh 3. 제작 구조 단순히 이해하기 위해 따라 만든 것이라 따로 구분하지는 않았다. 4. 코드 구현 4-1. Refresh 기능에 대한 이해 페이징 라이브러리에서 기본적으로 제공하는 SwipeRefreshLayout 뷰를 이용하여, 사용자가 아래로 스크롤할 때 추..

Kotlin/예제 정리

예제 정리 : 이미지 리스트 구현

1. 목표 이미지 리스트 구현하기 리사이클러뷰 사용하기 Paging 3 라이브러리에 이해하고, 사용하기 아래 링크에서 부터 이어서 구현하였습니다. 이미지 화면 구현 코틀린을 활용한 이미지 상세 구현을 만들어 볼 계획이다. Retrofit과 Koin, MVVM과 FLOW를 이용하여 만들었다. 기본적인 프로그램 구조는 아래의 소스에서 가져와 따라 만들었다. Koin + MVVM + Coroutine + F baboprograming.tistory.com 원본은 아래와 같습니다. Paging 3.0 + MVVM + Flow를 이용하여 리스트 구현하기 앱을 개발하면 빠지지않고 사용하는 페이징 리스트를 구현해 보도록 하겠습니다. 자동으로 페이징을 해주는 Paging 3.0 라이브러리를 이용하여 MVVM 모델과 F..

Kotlin/개인 프로젝트

개인 프로젝트 : 코틀린으로 To-do List - MVVM 사용하기

1. 목표 TodoList 제작하기 Item을 CardView 이용해서 조금 더 깔끔하게 UI 디자인 하기 Room Database를 이용하여 추가 수정할 수 있도록 만들기. 삭제 버튼을 구현하여 언제든지 삭제할 수 있도록 만들기 2. 사용 기술 RecyclerView Room database MVVM databinding 3. 제작 구조 이런 구조로 제작하였다. 안드로이드 체계에 맞추어 data와 domain, ui 파트로 나누어 작업하였다. 1편에서는 xml과 Room Database 요소인 Todo와 AppDatabase, TodoDAO에 대해 살펴보았다. 2편인 오늘은 MVVM databinding에 대해 살펴볼 것이다. 4. 코드 구성 4-1. MVVM 원리 MVVM은 Model-View-Vie..

Kotlin/개인 프로젝트

개인 프로젝트 : 코틀린으로 To-do List - Room Database 이용하기

1. 목표 TodoList 제작하기 Item을 CardView 이용해서 조금 더 깔끔하게 UI 디자인 하기 Room Database를 이용하여 추가 수정할 수 있도록 만들기. 삭제 버튼을 구현하여 언제든지 삭제할 수 있도록 만들기 2. 사용 기술 RecyclerView Room database MVVM databinding 3. 제작 구조 이런 구조로 제작하였다. 안드로이드 체계에 맞추어 data와 domain, ui 파트로 나누어 작업하였다. 1편에서는 xml과 Room Database 요소인 Todo와 AppDatabase, TodoDAO에 대해 살펴볼 예정이다. 4. 코드 구성 4-1. build.gradle plugins { // Room id 'kotlin-kapt' } dependencies ..

Kotlin/예제 정리

예제 정리 : 리사이클러 뷰(RecyclerView)

1. 리사이클러 뷰 1-1. 정의 리사이클러뷰는 안드로이드에서 많이 사용되는 뷰 중 하나이다. 대량의 데이터를 리스트나 그리드 형태로 표시할 때 사용된다. 리사이클러뷰는 리스트뷰나 그리드뷰와 유사하지만, 성능면에서 우수하고 더 많은 커스터마이징이 가능하다. 뷰 객체를 처음에 생성하고 그것을 돌려 쓰기 때문에 Cost 관점에서 효과적이다. 다만, 뷰 홀더라는 클래스가 필요하다. 1-2. 사용 방법 1) RecyclerView 를 레이아웃 파일에 추가한다. 2) 아이템뷰의 레이아웃 파일을 작성한다. 3) 어댑터를 작성하여 아이템뷰를 관리한다. 4) 리사이클러뷰에 레이아웃 매니저와 어댑터를 설정한다. 사실상 기본적인 사용법은 거의 정해져 있어서. 인터넷에 소스를 참고하면 쉽게 구현할 수 있다. 2. 예시 코드..

Kotlin/개념 정리

개념 정리 : 뷰 모델

1. 정의 뷰 모델은 안드로이드 앱 아키텍처 컴포넌트 중 하나로, UI와 비즈니스 로직 사이의 중간 매개체 역할을 한다. 뷰 모델은 UI 구성 요소에서 사용하는 데이터를 관리하고, 이 데이터를 유지하면서 화면 회전과 같은 구성 변경에 대한 생명주기 이벤트를 처리한다. 뷰 모델을 사용하면 화면 구성 변경과 같은 이벤트가 발생할 때, 데이터를 다시 불러오지 않고 기존 데이터를 유지하면서 UI를 업데이트 할 수 있다. 일반적으로 뷰 모델은 뷰에 필요한 데이터를 불러오기 위해 Repository나 Use Case와 같은 데이터 관리 레이어와 상호 작용하며, 데이터를 가공하고 뷰에 보여줄 준비를 한다. 이를 통해 뷰 모델은 뷰에서 비즈니스 로직을 분리하고, 유지보수성과 테스트 용이성을 향상하는데 도움을 준다. 2..

바보인간
'Kotlin' 카테고리의 글 목록