본문 바로가기

전체 글

(84)
Retrofit https://develop-oj.tistory.com/21#google_vignette [Android] 안드로이드 Retrofit(레트로핏) 사용법 - 경기도데이터드림 OPEN API 사용해보기Retrofit 이란? 안드로이드에서 Retrofit은 서버와 클라이언트 간 HTTP API 통신을 할 때 사용하는 라이브러리입니다. REST API 기반의 웹 서비스를 통해 JSON 구조의 데이터를 쉽게 가져오고 업로드할 수develop-oj.tistory.com https://velog.io/@ouowinnie/%EA%B0%9C%EB%85%90-%EB%A0%88%ED%8A%B8%EB%A1%9C%ED%95%8F-Retrofit [Kotlin 개념] 레트로핏 (Retrofit)안드로이드 개발 시 서버통신에 사용..
MVP -> MVVM MVP(Model-View-Presenter) 아키텍처를 MVVM(Model-View-ViewModel) 아키텍처로 변환하는 것은 그리 복잡하지 않다. 그러나 MVP와 MVVM은 각각의 특성을 가지고 있으므로 완전히 같은 것으로의 변환은 어렵지만 일반적인 절차는 다음과 같다. - View 수정 MVP에서는 View가 Presenter를 직접 참조하지만 MVVM에서는 View가 ViewModel을 참조한다. 따라서 View를 수정하여 Presenter 대신에 ViewModel을 참조하도록 변경한다. - ViewModel 생성 / Model 변경 없음 MVVM에서는 각 View에 대해 ViewModel이 존재해야 한다. ViewModel은 View의 데이터와 상태를 관리하고 View와의 상호 작용을 책임진다..
Data & Business Logic - Data Logic 데이터 로직은 소프트웨어에서 데이터를 처리, 저장, 검색 및 관리하는 데 사용되는 규칙과 절차를 정의한다. 데이터베이스 관련 작업, 데이터의 유효성 검사, CRUD(Create, Read, Update, Delete) 작업 등이 데이터 로직에 해당한다. 데이터베이스와의 상호 작용에 대한 로직을 포함하며 데이터 저장소에서 필요한 정보를 가져오는 등의 작업을 수행한다. - Business Logic 비즈니스 로직은 소프트웨어에서 특정 업무 또는 비즈니스 프로세스를 구현하는 데 사용되는 규칙과 절차를 정의한다. 사용자의 요청에 따라 데이터를 처리하고 다른 시스템과의 상호 작용을 조절하며, 애플리케이션의 핵심 기능을 구현한다. 업무 규칙 및 정책을 포함하며, 소프트웨어가 수행해야 하는 핵..
Today I Learned and Studied 1) MVVM(Model-View-ViewModel) 패턴 - View - Activity , Fragment - xml 와 같이 화면에 보여지는 UI - 텍스트 입력, 버튼 터치 등과 같은 UI Event, Action 받음 - UI 관련 로직 수행 - ViewModel - View에 필요한 데이터를 Model로부터 가져와 가공 및 변환 - Network, DB Data 처리 - UI와 관련된 데이터 처리 - View와 관련된 Business Logic 처리 - View가 Observe하고 있기 때문에 View가 데이터를 갱신할 수 있도록 LiveData로 변경사항 전달 - Anti-pattern : View의 Context를 가지고 있으면 안됨 - View와 ViewModel의 LifeCycle이 다..
RecyclerView 1) 리사이클러뷰(RecyclerView)는 데이터 목록을 아이템 단위의 뷰로 구성하여 화면에 표시하기 위해 어댑터(Adapter)를 사용한다. 레이아웃매니저(LayoutManager)가 제공하는 레이아웃 형태로 어댑터를 통해 만들어진 각 아이템 뷰는 뷰홀더(ViewHolder) 객체에 저장되어 화면에 표시되고 필요에 따라 재활용(Recycle)된다. 2) 사용자 데이터 리스트로부터 리사이클러뷰에 표시될 아이템 뷰를 만드는 것이 바로 어댑터의 역할이다. 그리고 수직(Vertical) 방향으로만 아이템을 배치할 수 있는 리스트뷰와 달리 리사이클러뷰는 다양한 형태로 아이템을 배치할 수 있다. 어댑터에서 아이템 뷰를 생성하기 전에 아이템 뷰가 어떤 형태로 배치될 것인지를 결정하는 요소가 레이아웃매니저(Layo..
Chapter 3-3 (앱 개발 숙련) - 안드로이드 앱 개발 숙련 강의 수강 및 학습 (리사이클러뷰, 프래그먼트) - 앱 개발 숙련 과제 수행 (사과 마켓)
[기초 프로젝트] 회고 - 프로젝트 시작부터 git 관리를 잘해서 PR시 충돌 이슈는 거의 없었다. 모르는 것이나 어려움이 있으면 먼저 물어보고 친절하게 알려주는 분위기를 형성하는 것은 언제나 중요하다. - 프로젝트의 방향성을 설정하는 것도 중요하다. 현업 개발자가 아닌 각 팀원들의 수준에서 어디까지 타협할 수 있느냐가 핵심이다. 각자 맡은 분야에 집중하다 보니 개인 소통에 비해서 팀 전체 회의를 많이 못했던 것 같다. 더 자주 이슈 공유를 했으면 좋았을 것이다. - 안드로이드 스튜디오에 유용한 기능들이 매우 많다. 개발 환경 자체에 더 숙달되어야 개발 속도와 협업 효율이 올라갈 수 있다. 코틀린 문법은 기본이라는 것을 잘 알고 있지만 더 열심히 학습할 필요가 있다. - 함수와 클래스 이전에 프로그래밍의 시작은 변수 선언이다...
Chapter3-2 (앱 개발 기초 프로젝트) 1) 각 액티비티에 공통으로 적용되는 데이터를 관리하며 데이터를 주고 받는 로직이 매우 흥미로웠음. 2) 앱 개발의 핵심은 화면들 사이의 또는 앱과 서버와의 데이터 연동이라고 생각함. data class UserInfo( val id: String, // email 형식으로 입력받도록 regex로 사전에 확인 필요 val pw: String, // 비밀번호 val nickName: String, // 프로필 이미지 아래에 표시할 닉네임 val thumbnail: Uri?, // 프로필에 표시할 이미지, null일 경우 기본 썸네일 표시 val introduction: String, // 프로필에 표시할 소개 문구 ) obje..