분류 전체보기

    Android 아키텍처(Architecture) 비교하기 - MVP, MVC, MVVM

    어떤 아키텍쳐를 선택 기준 깔끔한 코드분리가 가능한가 Testing가능한 구조를 만들 수 있는가 View와 Model간의 관계를 분리할 수 있는가 많은 코드를 손대지 않고, 유지보수 가능한가 Activity / Fragment/Adapter - view/control 역할을 함께한다. (예: OnClickListerner) - Adapter의 경우Control/Model도 가질 수 있다. 안드로이드에서 활용 가능한 Architecture MVC : Model View Control Model + View + Controller Controller : 사용자의 입력(Action)을 받고 처리하는 부분입다. Controller는 View를 선택할 뿐 직접 업데이트 하지 않습니다. (View는 Controll..

    의존성 주입(DependencyInjection) - Koin/Dagger2 /Hilt

    의존성주입이란 생성자 또는 메서드 등을 통해 외부로부터 생성된 객체를 전달받는것입니다. 의존성주입의 특징 클래스간 결합도를 느슨하게 합니다. 인터페이스 기반으로 설계되며, 코드를 유연하게 합니다. Stub 또는 Mock 객체를 상용하여 단위테스트를 하기가 더욱 쉽게하는데 그 목적이 있습니다. 예제 의존성주입이 없는 코드 class JSRepository{ private val db = SQLiteDatabase() fun load(id:String){ //... } } fun main(){ val repositoy = JSRepository() repository.load("8092"); } 의존성주입이 있는 코드 class JSRepository(private val db:Databse){ fun lo..

    적용 가능한 오픈 API 종류

    음식점, 식당, 모범 지도 대중교통 연락처 번역 검색 로그인 단축URL 날씨 음악 채팅 정보제공(빅데이터) 1. DART에 공시되고있는 공시보고서 국내 상장되어있는 회사의 사업보고서 및 재무보고서, 지분보고서 등의 데이터를 가져다 쓸 수 있습니다. opendart.fss.or.kr/intro/main.do 전자공시 OPENDART 시스템 | 오픈API 소개 | 오픈API 소개 오픈API 소개 오픈API 소개 오픈API 소개 DART에 공시되고있는 공시보고서 원문 등을 오픈API를 통해 활용할 수 있습니다. 활용을 원하시는 누구든지(개인, 기업, 기관 등) 이용하실 수 있습니다. DART opendart.fss.or.kr 2. 우체국의 우편번호 대표 제공 사이트 1. 네이버 Developer develop..

    디자인 패턴(Design pattern) - 목차

    목차 디자인패턴 정의 및 분류 디자인패턴이 해결하는 설계 시 일반적으로 발생하는 문제들 디자인패턴 선택과 사용시 고려해야할 것 [디자인 패턴] Abstract Factory(추상 팩토리 패턴) [디자인 패턴] Builder(빌더 패턴) [디자인 패턴] Factory Method (팩토리 메서드 패턴) [디자인 패턴] Prototype(프로토타입 패턴) [디자인 패턴] Singleton(싱글톤 패턴) [디자인 패턴] Adapter(어뎁터 패턴) [디자인 패턴] Bridge(브릿지 패텃) [디자인 패턴] Composite(컴포지트 패턴) [디자인 패턴] Decorator(데코레이터 패턴) [디자인 패턴] Facade(파사드 패턴) [디자인 패턴] Flyweight(플라이웨이트 패턴) [디자인 패턴] Prox..

    Firebase Remote Config(파이어베이스 원격 구성) 구현하기

    기본적인 서버-클라이언트 관점에서 데이터 변경을 살펴보면 클라이언트는 서버에 값(변경됬을지도 모를)을 요청하고, 서버는 해당 값을 보내주고, 다시 클라이언트는 서버가 보내준 데이터를 받아 변경해주는 순서로 데이터가 업데이트 됩니다. 이 과정중 클라이언트의 요청에대한 서버가 보낼 값들이 변경되는 경우가 있습니다. 예를들어 매인광고 화면, 문구, 등등이 있습니다. 보통의 경우 관리자 페이지를 따로두어 현업(마케팅, 영업, 등등)부서에서는 클라이언트에 보낼 서버의 정보들을 변경하게됩니다. 여기서 Firebase remote config의 장점은 관리자 페이지를 따로 구현할 필요없이 파이어베이스가 콘솔을 통해 이 기능을 대신해준다는점에 있습니다. Firebase 공식 문서에 정의하는 주요 기능(장점)은 첫째, ..

    Firebase Cloud Messaging : FCM(파이어베이스 클라우드 메시지) 구현하기

    Notification의 특징 - 사용자마 메세제를 확인하거나 제거하기 전까지 메시지를 유지합니다. (핸드폰을 껐다다 켜도..) - 메시지를 터치하면 지정된 Activity가 실행되어 애플리케이션 실행을 유도할 있다. FCM Message 종류 AnFirebase Cloud Messaging(FCM) 을 통해 2가지 유형의 메시지를 클라이언트에게 보낼 수 있습니다. 첫째 : 알림 메시지(백그라운드 수신): 종종 '표시 메시지'로 간주됩니다. FCM SDK에서 자동으로 처리합니다. 둘째 : 데이터 메시지(포그라운드 수신): 클라이언트 앱에서 처리합니다. 알림 메시지에는 사용자에게 표시되는 키 모음이 사전 정의되어 있습니다. 반면 데이터 메시지에는 사용자가 정의한 커스텀 키-값 쌍만 포함됩니다. 알림 메시지..