응집도와 결합도에 관하여: About Cohesion and Coupling Notes 응집도와 결합도를 이야기하기에 앞서, 자주 나오는 “모듈(Module)”이라는 단어가 정확히 어떤 의미인지 정리해보았다. 모듈(Module) 모듈(Module)이란? 모듈은 소프트웨어를 구성하는 기능적 단위 또는 구성 단위로, 관련된 코드(클래스, 함수, 설정 등)를 의미 있게 묶은 단위를 말한다. In computer software... 2025/04/21 Archive, Programming
2025-04-18-TIL TIL Today I Learned 오늘은 토스증권에 지원했다. 이력서는 토스코어에 지원한 내용과 거의 동일하다. 대규모 채용이라서 6개월 이내에 한 번 더 지원할 수 있다는 내용을 보고 지원을 결심하게 되었다. 🙏 캐시는 캐시로만 사용하자 Caching: What may go wrong? Today I Interview CAP 정리에 대해서... 2025/04/18 TIL, 2025-TIL
2025-04-17-TIL TIL Today I Learned JSR? JEP? Java 생태계에서 자주 보게 되는 용어인 JEP, JSR은 모두 Java 플랫폼의 발전과 확장에 중요한 역할을 한다. 각각의 의미, 유래, 그리고 차이점까지 정리해보았다. Jakarta EE JCP에서 Eclipse로 Java EE의 관리 주체가 변경되면서 JSR이라는 용어는 더이상 사용하지 않게... 2025/04/17 TIL, 2025-TIL
Jakarta EE 기업용 Java의 진화 Notes ☕ Jakarta EE: 기업용 Java의 진화 Jakarta EE는 단순히 Java EE의 새로운 이름 그 이상이다. Jakarta EE는 기업용 Java 기술의 차세대 플랫폼이며, Java 생태계의 역사, 오픈소스 전환, 그리고 기술적 혁신의 상징이다. 아래에서 Jakarta EE의 역사, 구성, 차이점, 실무 적용까지 체계적으로 설명한다. ... 2025/04/17 Archive, Java
Java 진화의 두 축 JEP vs JSR Notes Java 진화의 두 축: JEP vs JSR Java 플랫폼은 수십 년 동안 지속적으로 발전해왔고, 그 변화의 흐름을 이끄는 두 가지 핵심 제안 시스템이 있다. 바로 JEP (JDK Enhancement Proposal) 과 JSR (Java Specification Request) 이다. 이 글에서는 두 시스템의 차이점, 유래, 넘버링 체계까지 명... 2025/04/17 Archive, Java
2025-04-16-TIL TIL Today I Learned 캐시 스탬피드 캐시 스탬피드는 종종 소규모 시스템에서는 문제가 되지 않는다. 하지만 백만 단위의 요청을 서빙하는 애플리케이션을 운영하는 개발자에게는 골치아픈 문제이다. 대부분의 애플리케이션이 이러한 문제를 무시하는 경향이 있고, 이는 전체 시스템의 몇 초 간의 다운을 일으킨다. Today I Interview Q. ... 2025/04/16 TIL, 2025-TIL
2025-04-15-TIL TIL Today I Learned 오늘은 국립중앙도서관에 방문해보았다. 동네의 도서관에 비해서는 확실히 규모가 컸다. 간만에 대학도서관의 느낌이 살짝 떠올랐다. 대학도서관의 매캐하고 습한 오래된 책 냄새, 낡은 책상, 책에 남겨진 선배들의 공부흔적 같은것들이 그립기도 하다. Today I Interview HTTP/1.1과 HTTP/2.0에 대해서 설... 2025/04/15 TIL, 2025-TIL
왜 이벤트가 안 먹히지? @TransactionalEventListener가 무시되는 이유와 해결법 Notes @TransactionalEventListener는 이벤트를 발행한 트랜잭션의 생명주기에 맞춰 리스너를 실행하고 싶을 때 사용하는 도구다. 핵심은 “이벤트를 발행했다고 바로 실행되는 것이 아니라, 지정한 트랜잭션 시점까지 기다린다”는 점이다. 언제 쓰는가 주문 저장 후 메일 발송 결제 승인 후 메시지 발행 트랜잭션 커밋 이후 캐시 무효... 2025/04/15 Notes, Spring
Java 21 Features Notes Java 21 주요 기능 정리 1. Virtual Threads (가상 스레드) JEP 444: Virtual Threads (Finalized) 수천, 수만 개의 경량 스레드를 생성할 수 있는 기능 기존 Thread API 그대로 사용 가능 (Thread.ofVirtual().start(() -> ...)) I... 2025/04/14 Archive, Java
Spring에서 Java 21을 도입할 때 체크할 것 Notes 왜 Java 21을 고려해야 하는가 Java 21은 LTS 버전이고, Spring Boot 3.x 계열과 함께 사용할 때 얻는 이점이 분명하다. 중요한 것은 “최신 문법을 얼마나 많이 쓰느냐”보다, 운영과 개발 생산성에 어떤 실질적 이점이 생기느냐다. 가장 먼저 볼 것 현재 런타임과 라이브러리가 Java 21을 공식 지원하는가 Sprin... 2025/04/14 Notes, Spring