본문 바로가기
반응형

개발44

[Android] DataStore란? (Preference DataStore, Proto DataStore) SharedPreference를 대체하는 새로운 데이터 저장소인 DataStore가 나왔다. DataStore는 Kotlin 코루틴 및 Flow를 사용하여 비동기적이고 일관된 트랜잭션 방식으로 데이터를 저장한다. DataStore는 protocol buffers를 사용하는 크게 2가지 유형이 있다. key-value (Preference DataStore) typed objects (Proto DataStore) 이 2가지 DataStore는 아래의 차이가 있다. Preference DataStore : SharedPreference와 마찬가지로 스키마를 정의하지 않고 키를 기반으로 데이터에 액세스 한다. Proto DataStore : Protocol Buffer를 사용하여 스키마를 정의한다. Prot.. 2023. 1. 19.
[Spring] 점프 투 스프링부트 - SBB 추가 기능 구현 점프 투 스프링부트를 학습하고 3-15 SBB 추가 기능을 구현하였습니다. 아래는 점프 투 스프링 부트 홈페이지입니다. 점프 투 스프링부트 점프 투 스프링부트는 Spring Boot Board(SBB)라는 이름의 게시판 서비스를 만들어가는 과정을 설명한 스프링부트 입문서이다. 자바 설치부터 시작하여 서비스 운… wikidocs.net 모든 기능을 구현하지는 못했고 아래의 기능들을 추가적으로 구현했습니다. (본문 맨 하단에 실제 코드를 볼 수 있는 github 주소가 있습니다.) 답변 페이징과 정렬 댓글 카테고리 조회 수 프로필 마크다운 에디터 비밀번호 변경 비밀번호 찾기, 소셜 로그인, 최근 답변과 최근 댓글은 제외했습니다. SBB 추가 기능 이미지 루트 화면입니다. 좌측에 를 통해 sidebar를 추가.. 2023. 1. 4.
[Flutter] Flutter LifeCycle Event와 Android LifeCycle Event 비교하기 오늘은 Flutter에서 LifeCycle Event와 Android Activity에서 LifeCycle Event가 어떻게 연관되어 있는지 확인해보려고 합니다. 이는 Flutter 내에서 플랫폼 별 코드를 작성할 때 알아두면 유용할 수 있습니다. 본 코드들은 Android Studio에서 실행하였습니다. Flutter에서 LifeCycle Event를 수신받기 위해서는 WidgetsBindingObserver를 State에 mixin 합니다. 코드는 아래와 같습니다. class GetScreenStateState extends State with WidgetsBindingObserver{ @override void initState() { //앱 상태 변경 이벤트 등록 WidgetsBinding.in.. 2022. 12. 23.
[Spring] Spring과 Spring Boot 차이점 1. Spring이란? 1.1 Spring의 개념 스프링은 자바 기반의 웹 애플리케이션을 만들 수 있는 프레임워크입니다. spring.io 사이트에서 확인하면 '스프링 프레임워크는 현대 자바 기반의 엔터프라이즈 애플리케이션을 위한 프로그래밍 및 Configuration Model 제공한다.'라고 언급하고 있습니다. Spring 은 수많은 국내 기업과 해외 기업에서 매우 많은 서비스를 만들 때 사용되고 있습니다. 자바 백엔드 개발자는 웹 애플리케이션을 개발할 때, 대부분 스프링을 사용한다고 합니다. 스프링은 약 20개의 모듈로 구성된 기능으로 구성됩니다. 이러한 모듈은 아래 그림과 같이 Core Contiainer, Dtata Access/Integration, Web, AOP(Aspect Oriented.. 2022. 11. 19.
[Android] MVVM 패턴 및 Clean Architecture, Android Jetpack 적용 예제 개요 이번 포스팅에서는 Android에서 많이 애용하는 설계 패턴인 MVVM과 Clean Architectrue, Android Jetpack을 사용하여 만든 프로젝트를 소개하려고 합니다. Open API의 한 종류인 omdbapi를 사용하여 만들었습니다. 로그인 시 하루에 1,000건까지 무료로 사용할 수 있습니다. https://www.omdbapi.com/ OMDb API - The Open Movie Database www.omdbapi.com 해당 프로젝트의 이름은 MovieBrowser이고 간단한 영화 검색 기능과 즐겨찾기 기능을 사용할 수 있습니다. 프로젝트에 Clean Architecture를 적용하였고 각 Layer는 다음과 같은 종속성을 가지고 있습니다. Data와 Domain Laye.. 2022. 11. 2.
[Android] 여러 개의 LiveData를 한번에 핸들링하는 MediatorLiveData MediatorLiveData란? LiveData의 하위 클래스로 다른 LiveData 객체를 Observe하고 해당 객체의 OnChanged 이벤트를 받습니다. 즉, 하나의 MediatorLiveData에 여러 개의 LiveData를 등록하고 한 번에 핸들링할 수 있습니다. 주요 함수로는 addSource() : observe할 LiveData와 수행할 로직을 추가 removeSource() : 추가된 LiveData 삭제 MediatorLiveData.java 파일을 살펴보면 public class MediatorLiveData extends MutableLiveData { private SafeIterableMap> mSources = new SafeIterableMap(); MediatorLive.. 2022. 10. 13.
반응형

loading