문서로만 지키던 아키텍처 규칙, 테스트 코드로 강제하기

문서로만 지키던 아키텍처 규칙, 테스트 코드로 강제하기
문서와 리뷰에만 의존하던 팀 규칙을 ArchUnit 테스트로 강제한 사례를 소개했습니다. 기존 위반은 동결하고 신규 위반만 막아 점진적으로 도입하는 방법과 주의점도 정리했습니다.
#ArchUnit#Java
1200
새로운 기술 블로그가 추가되었어요

문서와 리뷰에만 의존하던 팀 규칙을 ArchUnit 테스트로 강제한 사례를 소개했습니다. 기존 위반은 동결하고 신규 위반만 막아 점진적으로 도입하는 방법과 주의점도 정리했습니다.


Lombok `@Builder`와 Jackson을 함께 사용할 때 단일 필드 DTO에서 역직렬화 오류가 발생하는 원인을 설명했습니다. `@Jacksonized`를 사용하면 빌더 기반 역직렬화를 명시적으로 활성화할 수 있습니다.

Java 기반 레거시 포인트 시스템을 Kotlin으로 전환한 과정과 기준을 정리했습니다. 테스트 강화와 점진적 배포로 안정성과 코드 품질을 함께 높였습니다.


JavaParser로 자바 소스를 AST로 파싱하고 Visitor, SymbolSolver로 정적 분석에 활용하는 방법을 정리했습니다. 멀티 프로젝트와 Lombok 환경에서의 한계와 우회 방법도 함께 소개했습니다.

Lombok이 AST를 수정해 getter를 class 파일에 반영하는 과정을 설명했습니다. ASM 기반 바이트코드 조작과 Spring AOP·JaCoCo 활용 사례를 소개합니다.

Java annotation processor로 컴파일 단계에서 DTO 코드를 자동 생성하는 원리를 소개했습니다. JavaPoet과 AbstractProcessor 기반 예제로 반복 코드 감소 방식을 설명합니다.