Service Locator Pattern, 서비스 로케이터 패턴

이 글은 서비스 로케이터 패턴에 대해서 다루는 글입니다. 이 글에서 다루고자 하는 내용은 세 가지로 첫 번째는 서비스 로케이터에 대한 소개와 예제코드를 이용한 설명이고, 두 번째는 의존성 주입을 예제 코드를 통해서 설명한 후 서비스 로케이터와 비교하는 것이고, 세 번째는 제가 서비스 로케이터를 사용하는 방법을 소개하는 것입니다. 서비스 로케이터 패턴(Service Locator Pattern)이란? Service Locator 패턴은 마틴 파울러가 블로그 글에서 제시한 패턴입니다. 이 패턴의 목표는 모듈화 수준을 높이는 것입니다. 클라이언트와 인터페이스사이의 의존성을 제거하는 방식으로 모듈화 수준을 높이는데요. 우리는 유연한 코드를 짜기 위해서 인터페이스를 자주 사용합니다. 그렇지만 인터페이스를 사용하다..

Computer Science 2021.08.23 0

Dart 기본 예제

이 글은 기본적인 Dart 예제 코드를 작성한 글입니다. 예제 코드를 통해 언어의 핵심적이고 간단한 특징들을 살펴보도록 하겠습니다. // 함수 선언 void printInteger(int aNumber) { print('The number is $aNumber.'); // 표준 출력 장치로 출력 } // 앱의 진입 포인트 void main() { var number = 42; // 변수 선언후 초기화. printInteger(number); // 함수 호출 } // 코멘트를 쓰는 법입니다. /// 여러 줄의 코멘트를 남길땐 이렇게 사용합니다. void 특별한 타입입니다. 이 값이 절대 쓰이지 않는다는 뜻이죠. printInteger나 main 같이 void return 타입을 가진 함수는 명시적으로 값을..

Dart 2021.08.27 0

Vim + Tmux 학습 자료

목표 Vim 사용 방법 전달하기 Vim + Tmux를 함께 사용하여 터미널 환경에서 개발하는 방법 전달하기 목차 Vim Vim-Cheatsheet Vundle(Vim-Bundle) Vim-Awesome Vim-Installation Vmux(Vim + Tmux) Vim + Tmux 학습자료 내용 Vim vim Cheatsheet 주소: https://devhints.io/vim Vim Cheatsheet뿐만 아니라 vscode, intelij, sass 등 유용한 참조 자료가 많습니다. vim-vundle github 주소 : vundle 플러그인 매니저입니다. 가장 대중적인 플러그인 매니저이면서 굉장히 편리합니다. vim awesome 주소: https://vimawesome.com/ Vim Plugi..

터미널 개발 2020.02.27 0

MSA에서 다른 서비스의 트랜잭션이 실패된다면 어떻게 해야할까?, Saga

이 글은 MSA 환경에서 다른 서비스의 트랜잭션 Fail으로 인한 보상로직을 작성하는 방법에 대해서 다루는 글입니다. 이 글을 쓰는 이유 최근에 MSA하다가 A 컴포턴트에서 트랜잭션을 마치고, B 컴포넌트에 이벤트를 던져두었더니, B 컴포넌트가 제대로 처리를 못하면 어떻게 해야하나라는 질문을 받았습니다. 그래서 해결책을 찾아보다가 이 해결책으로 Saga pattern을 알게 되었고, Saga pattern에 대해서 공유하고자 글을 씁니다. https://microservices.io/patterns/data/saga.html Microservices Pattern: Pattern: Saga Implement transactions using a saga, which is sequence of local ..

Web 2024.04.13 0

플러터에서 위치정보 사용하는 법, How to use location in flutter

이 글은 로케이션, Location 패키지를 통해서 사용자의 위치정보를 사용하는 법을 다룬 글입니다. 많은 어플리케이션의 기획에서는 위치정보를 필요합니다. 예를 들어, 근처에 있는 ATM기의 위치나, 음식점의 정보를 알기 위해서는 내 위치를 알아야하죠. 사용자가 본인의 위치정보를 사용할 수 있게 하려면 어떻게 해야할까요? Location 사용자가 본인의 좌표를 얻기 위해서 사용하는 패키지가 바로 로케이션, location입니다. pubspec.yaml에서 디펜던시를 추가한 다음 설치를 진행합니다. dependencies: location: ^4.2.0 권한 요청 먼저 디바이스의 위치 정보를 얻기 위해서는 권한, Permission을 받아야합니다. Android project_dir/android/app/..

Flutter 2021.08.25 2