객체들의 관계를 트리 구조로 구성하여 부분-전체(Part-Whole) 계층을 표현하는 패턴 단일 객체와 복합 객체 모두 동일하게 다루도록 한다.
주어진 상황 및 용도에 따라 어떤 객체에 책임을 덧붙이는 패턴으로, 기능 확장이 필요할 때, 서브클래싱 대신 쓸 수 있는 유연한 대안이 될 수 있다.데코레이터(Decortor) 뜻 그대로 원하는 클래스를 장식한다.즉, Wrapping 한다 라고 생각할 수 있다.Beve
기존 코드를 클라이언트가 사용하는 인터페이스의 구현체로 바꿔주는 패턴클라이언트가 사용하는 인터페이스를 따르지 않는 기존 코드를 재사용할 수 있게 해준다.
복잡한 객체를 생성하는 방법을 정의하는 클래스와 표현하는 방법을 정의하는 클래스를 별도로 분리. 서로 다른 표현이라도 이를 생성할 수 있는 동일한 절차를 제공
객체가 특정 객체 상태 변화를 감지하고 알림을 받는 패턴. 발생(publish) - 구독(subscribe) 패턴을 구현할 수 있다.
사이드 프로젝트를 진행하면서 캘린더를 사용하기 위해 라이브러리를 찾는 와중에 “sheet” 오픈소스 라이브러리를 확인을 통해 Contributor된 회고록을 작성해보려고 합니다. Contribute을 하기 위해서 Readme에 Contribute작성 가이드를 확인
추상 팩토리 패턴(Abstract Facgtory Pattern)은 구상 클래스에 의존하지 않고 서로 연관되거나 의존적인 객채로 이루어진 제품군을 생산하는 인터페이스 제공구상 클래스는 서브 클래스에서 만듬📌 팩토리 쪽에만 집중하면 팩토리 메소드 패턴과 유사하지만,
객체지향 다형성의 원리를 기반으로 만들어짐다양한 구현체(Product)가 있고, 특정한 구현체를 만들 수 있는 팩토리(Creator)를 제공확장에는 열려있고 변경에는 닫혀 있는 구조부모(상위) 클래스에 알려지지 않은 구체 클래스를 생성하는 패턴이며, 자식(하위) 클래스
안드로이드 5.0 이상에서 사용가능camera2 기능 활용 + 생명주기 인식구글 CameraX 예제(https://codelabs.developers.google.com/codelabs/camerax-getting-started?hl=ko프리뷰가 실행되는 시점
오늘의 개발 공부 일지 1. Custom View 만들기 @JvmOverLoads 어노테이션 attr format 종류 DataBinding
안드로이드 FCM 시작하기안드로이드 프로젝트 콘솔에 등록FCMService 만들기Manifast에 인터넷 권한 주기intent-filter MESSAGE_EVENT 추가onNewToken, onMessageRecived 구현서비스 키 --> OAuth2.0OAuth2.