[Clean Architecture] 프로그래밍 패러다임
·
Reference/Clean Architecture
읽어놓고 항상 정리해야지, 정리해야지 하면서 미루던 책.. 이 내용 진짜 진짜 재밌는 파트다. 잠깐 읽으려다가 여기서 충격먹고 날 8시간 동안 의자에 묶어놨던 책. ㅋㅋ 📕 목차 1. 패러다임 개요 2. 구조적 프로그래밍 3. 객체 지향 프로그래밍 4. 함수형 프로그래밍 1. 패러다임 개요 📌 생각할 거리 프로그래밍을 시작하고 이 책을 처음 접하기 전까지 객체 지향이란 그래서 무엇을 이야기하고 싶은 건지를 당췌 알 수가 없었다. 2년 전에 코딩 처음 시작할 때 블로그나 온갖 강의를 봐도, 현실 세계의 객체를 어쩌구 메시징을 어쩌구 그런 추상적인 용어들로 추상적인 개념을 설명하는데 솔직히 "아, 저 인간도 모르는구나"라는 생각밖에 안 들었다. 그나마 함수형 프로그래밍은 이해를 하겠는데, 객체 지향 패러다임..
[Spring Boot] 멀티 모듈 테스트 환경에서 @SpringBootApplication 충돌과 Component Scan
·
Backend/Spring Boot & JPA
📕 목차 1. 문제의 발단 2. 고민 과정 3. 해결 방법 4. 왜 external-api 모듈은 되고, infra 모듈은 안 됐을까? 1. 문제의 발단 📌 @SpringBootApplication 클래스의 충돌 Found multiple @SpringBootConfigration annotated classes [...] 📦pennyway ┣📦pennyway-app-external-api ┃ ┗ 📂src ┃ ┗ 📂main ┃ ┗ 📂java ┃ ┣ 📂kr.co.pennyway ┃ ┣ 📂api ┃ ┃ ┣ 📂apis ┃ ┃ ┣ 📂common ┃ ┃ ┗ 📂config ┃ ┗ 📜PennywayExternalApiApplication.java ┗📦pennyway-infra ┗ 📂src ┗ 📂main ┗ 📂java..
[iOS] SwiftFormat으로 Code Convetion 자동화
·
Frontend/iOS
📕 목차 1. 개요 2. 설치 3. options & rules 1. 개요 자동화에 진심인 나는 인적 리소스를 감소시킬 수 있는 부분이 보이면 어떻게든 자동화 프로세스를 구축하는 미치광이 오토메이터에 가깝다. 하지만 IntelliJ에서 제공해주는 기능은 해봐야 컨벤션을 각자 개발자 환경에서 세팅한 다음에 리팩토링 해주는 정도의 자동화밖에 지원하지 않는다는 아쉬움이 있었다. (Java 코드를 컨벤션에 맞게 리팩토링시키는 extension을 만들어보려고 연구 중..) GitHub - nicklockwood/SwiftFormat: A command-line tool and Xcode Extension for formatting Swift code A command-line tool and Xcode Exten..
[Spring Boot] @Transactional 내부에서 발생한 Exception과 rollback (+ 고찰 추가)
·
Backend/Spring Boot & JPA
📕 목차 1. @Transactional 내부에서 Exception 발생 2. 로그 추적 3. 코드 추적 4. 문제의 근원 5. 결론 1. @Transactional 내부에서 Exception 발생 📌 발단 @Slf4j @Helper @RequiredArgsConstructor public class UserSyncHelper { private final UserService userService; /** * 일반 회원가입 시 이미 가입된 회원인지 확인 * * @param phone String : 전화번호 * @return Pair : 이미 가입된 회원인지 여부 (TRUE: 가입되지 않은 회원, FALSE: 가입된 회원), 가입된 회원인 경우 회원 ID 반환 * @throws UserErrorExcep..