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

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

Computer Science 2021.08.23 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

코틀린 스프링을 사용하는 이유

코틀린 스프링을 백엔드 개발할때 쓰는 이유를 적은 글을 쓰며 백엔드 개발을 시작할때 최근에 가장 많이 논의되는 언어가 코틀린과 타입스크립트라고 생각을 하고 있는데, 개인적으로는 서로의 장단점이 다르다고 느껴져서 이런 글을 적어두고 싶었다.특히 Nest.js에 익숙하신 분들에게 도움이 되길 바라며 글을 쓴다. 글의 접근 방식 이 글은 코틀린과 다른 언어를 많이 비교하면서 진행될 예정이다. 자바랑 비교하게 되는 내용도 있고, 개인적인 경험을 빗대기 위해서 Dart같은 약간 생소할 수 있는 언어도 사용했다. 글의 내용 코틀린에 대한 소개 코틀린의 강점이라고 느껴지는 부분 백엔드 개발에서 코틀린을 쓰는 이유 코틀린이란? 코틀린. 모던 랭귀지의 대표적인 주자중 하나이다. 대표적인 삼대장을 뽑아보라고 하면 Rust..

Kotlin 2023.11.20 0

어플리케이션 출시 전에 했던 일: 앱 출시 후기 2편

이 글은 어플리케이션 출시 전에 했던 일들을 적은 글입니다. 앱 출시 후기 1편 글을 쓰는 이유 이 글은 어플리케이션 개발을 해서 출시하시는 분들을 위해서 작성되었습니다. 지금 당장 기록하지 않으면 나중에는 까먹거나, 당연한 것으로 여기게 될 것 같아 출시를 하고 바 blog.mayleaf.dev 지난 번에 앱 출시 후기 1편을 적어서 냈는데, 그 글의 목차별로 글을 이제 작성해보려고 합니다. 오늘 쓰는 내용은 어플리케이션 출시 전에 해야했던 일들입니다. 어플리케이션 출시 전에 했던 일들 사전조사 우선 로또 리마인더를 구현하기 전에 앞서 리마인더 기능외에 어떤 기능들을 제공해주면 좋을까? 라는 생각을 했습니다. 그래서 앱스토어에 있는 로또 관련 어플리케이션들을 쭉 깔아보고 사용을 해봤습니다. 사용을 해보..

Flutter 2022.09.19 0

사회적 관계망과 성장에 대한 생각

이 글은 Zeropage의 2022 Advent Calendar에 게재하기 위한 글입니다. 사회적 관계망을 쌓음으로써 원하는 방향으로 성장할 수 있었던 제 이야기를 공유하고자 이 글을 씁니다. 본문에 들어가기 앞서 자기소개부터 하겠습니다. 안녕하세요 정우현입니다. Zeropage 26기입니다. 현업에서 백엔드 엔지니어로 2년 7개월정도 근무했고, 이번에 4학년에 올라갑니다. 현재는 RUFree, 세컨팀이라는 외주 개발팀에 소속되어있습니다. 사회적 관계망과 성장 이런 경력과 실력을 기른 것은 다 주변 사람들 덕분이라고 생각합니다. 이런 생각은 어떤 논리적인 방식으로 접근한 논문도 많이 존재하지만, 이 글을 통해선 제 경험을 여러분들에게 들려드리고 싶습니다. 1. 극적인 예시 먼저 극적인 예시를 보여드리고자..

나의 생각 2022.02.13 0