본문 바로가기

728x90

Life Style

(4)
[나의 무지] 🤯 Spring RequestBody와 Static Inner Class: 오해와 진실 실무 코드를 보다가 Controller의 RequestBody 클래스 안에 static inner class가 정의되어 있는 것을 봤다.처음에는 “이 static 클래스 안의 프로퍼티들도 HTTP 요청에서 그대로 받을 수 있겠구나”라고 생각했다... (그래서 특정 api의 mandatory 요청 값들이 static 클래스 안의 프로퍼티들도 포함한다는 크나큰 오해를 하게 되었다.) 하지만 실제로는 그렇지 않았던 것이다..왜 그렇게 오해했을까?public class OuterRequest { private String outerField; public static class Inner { private String innerField; }}OuterRequest 안에 Inner라..
🐳 Docker Compose 구축하면서 부딪혔던 문제점들 이번 포스팅에서는 회사에서 가상환경을 띄우기 위해 Docker Compose 파일을 작성하면서 배우고 겪었던 Docker 관련 지식들을 정리하려고 한다. 회사에서는 이미 개발 서버용 Docker Compose 환경이 구축되어 있었다. 즉, 개발한 서버를 컨테이너로 띄워 로컬에서 테스트 및 개발할 수 있는 환경이었다. (테스트는 서버가 띄어져 있어야 가능한 테스트였다.)하지만 어느 순간부터 이 Docker Compose 환경이 제대로 관리되지 않았고, 서버를 컨테이너로 띄워 테스트를 진행하는 것이 점점 어려워졌다. 결국 테스트를 하려면 로컬에서 서버를 싱행하고, 테스트 코드를 수동으로 수정하고 (주석 처리, 환경 세팅 등), 로컬에서 테스트 메인 함수를 실행해야만 integration test가 가능했다...
[회사에서 있었던 일] 함수형 스타일로 개발하라? 오늘 회사에서 코드를 작성하다가 리뷰를 받았습니다.선배님이 제 코드를 보시고 이렇게 말씀하셨어요."함수형 스타일로 작성했으니 다른 부분도 일관성 있게 함수형 스타일로 작성하는 게 어떻겠냐"엥? 함수형 스타일이 뭐지? 😅 내가 아는 함수형은 자바 stream 처럼 선언형으로 코드를 작성하는 건데... 대충은 알고 있었지만, 막상 코드와 비교해보니 조금 혼란스러웠습니다. 제가 개발한 부분은 코드1과 같이 가변 객체를 직접 수정하는 방식 이었는데, 코드2처럼 불변 객체를 생성하여 반환하는 방식 으로 바꾸었던 겁니다.코드 1: 가변 객체 스타일class BankAccount(var balance: Int) { fun deposit(amount: Int) { balance += amount ..
백엔드 개발자를 위한 도서 리스트 (계속 업데이트 할 예정입니다!!) 아래 있는 책들은 제가 미래에 꼭 읽어봐야 할 책 리스트라고 생각해서 기록해두었습니다. 참고하셔서 도서 선정에 도움이 되시길 바랍니다~ [좋은 코드 작성을 위한 책] 1. [코드 컴플리트2: 더 나은 소프트웨어 구현을 위한 실무 지참서] - 좋은 코드 작성법을 알려주는 기본적인 책 https://wikibook.co.kr/code-complete-2-ebook/ Code Complete 코드 컴플리트 2 (ebook): 더 나은 소프트웨어 구현을 위한 실무 지침서 《Code Complete 2》는 소프트웨어 구현을 둘러싼 다양한 비유부터 기초적인 프로그래밍, 시스템 구축, 소프트웨어 장인정신에 이르기까지 소프트웨어 업계에 종사하는 분이라면 누구나 읽어야 할 wikibo..

728x90
반응형