프로그래머 파푸리카

산뜻한 하루

이번 주 왠지 더 출근하기 싫은 주였다. (오늘은 금요일) 지난 주에 면접과 코테를 몰아치듯 보고, 주말동안 푹 쉬기 위해 떠났던 여행의 끝에 차가 고랑에 빠지고, 덕분에 렌트카 반납시간 지연으로 패널티 내고.. 여튼 정신 없던 지난 주를 보내고, 월요일 지난 주 면접 보았던 스타트업으로부터 최종 합격과 코테를 보았던 회사로부터 1차 기술 인터뷰 제...

좋은 REST API를 설계하는 방법(1): REST API의 6가지 원칙

우리가 새로운 프로젝트를 진행한다고 생각해봅시다! 프로젝트를 시작하기 전 다양한 방법들에 대한 정의가 필요하겠지만, 원하는 기능에 대해 정리해보는 게 우선이겠죠! 어플리케이션에서 수행되기를 원하는 다양한 기능들에 대해 요구사항으로 정리할 수 있습니다. 요구사항들을 정리하다보면 구현해야할 기능의 목록이 나올거에요. (BDD 개발 방식에서는 이 과정...

조회 성능을 극대화하는 CQRS 아키텍처, 사례 중심!

다양한 테이블의 다양한 정보 구성을 한 번에 조회해야 하는 경우가 있습니다. 그런 경우 테이블을 조인조인해서 들어가서 쿼리의 성능이 떨어지거나, 어플리케이션 내에서 여러 번의 반복을 수행해야 하는 등 응답 속도가 상당히 지연되어 사용자에게 불편을 초래할 수 있습니다. 이런 경우 고려해볼 수 있는 패턴이 바로 CQRS 패턴입니다! CQRS 패턴은 명...

[OMP_#002] 모바일쿠폰 정보 획득 API 탐색! 그리고..

kick-off 글에서 살짝 언급했던 모바일 쿠폰 이미지의 바코드를 인식해서 정보를 얻어오는 작업에 대해 간단히 테스트를 해볼 예정이다! 아래의 순서로 진행될 에정! 모바일 쿠폰 이미지의 바코드 읽기 바코드로 읽어온 모바일쿠폰 번호를 통해 정보 획득하기 1. 모바일 쿠폰 이미지의 바코드를 읽어 정보 획득 Pillow 라이브러리를...

[OMP_#001] Kick Off ⚽

드디어 시작하는 사이드 프로젝트! 프로젝트 명은 OMP이다. Oh My Coupon의 줄임말이다. 평소에 엄마가 가족톡방을 통해 모바일 쿠폰을 종종 보내주는데, 여러 개를 보내주면 내가 쓴건 지 안쓴 건지 기한은 얼마나 남았는지, 아니면 언니가 쓴건지 굉장히 헷갈릴 때가 많다. 사실 몇 년 전부터 굉장히 만들고 싶었는데, 미루고 있다가 드디어 만드는...

비동기 프로그래밍(동기/비동기, block/non-block)

비동기 프로그래밍? 작업 실행의 완료를 기다리지 않고, 다른 작업을 동시에 진행할 수 있는게 하는 프로그래밍 방식 멀티스레딩과 유사하지만, 비동기 프로그래밍은 단일 스레드에서 이벤트 처리 및 콜백을 통해 구현되기도 하기 때문에 명시적 스레드 관리 없이도 동시성을 달성할 수 있다. 동기 API 와 비동기 API의 차이 ...