@023
focus and hustle

좋은 이름의 기준

September 07, 2025

한 번에 좋은 이름을 지을 수도 없다 처음에는 좋은 이름을 바로 떠올리기 어려울 수 있다. 프로젝트가 커지고 의미가 분명해지면서 점차 더 나은 이름으로 리팩터링해야 할 때가 많다. 좋은 이름이 가진 5가지 특징 좋은 이름인지를 확인하는 5가지 기준은 SMART다. S: easy to Search (검색하기 쉽게) M: easy to Mix (조합하기 쉽게…


STOMP

July 29, 2025

STOMP Simple Text Oriented Messageing Protocol Message Brocker를 활용하여 쉽게 메시지를 주고 받을 수 있는 Protocol Pub - Sub: Pub이 메시지를 발행하면 Sub이 그것을 수신하는 메시징 패러다임 Message Brocker: Pub의 Message를 받아와서 Sub들에게 전달하는 어떤 것 …


웹 소켓(Web socket)

July 27, 2025

주로 인터넷상에서 통신을 할 때는 HTTP를 사용한다. 특히 HTTP/1.1 이하에서는 클라이언트가 서버에게 요청을 보내고, 서버가 그에 응하여 응답을 보내는 식으로 단방향 소통이 이뤄진다. 서버가 클라이언트에게 메시지를 보내는 건 클라이언트의 요청에 응답을 할 때 뿐이다. 일반적인 기능들은 이러한 단방향 방식으로 구현이 가능하지만, 다른 방식이 필요할 …


GC 알고리즘(Garbage Collection Algorithms)

May 27, 2025

Serial GC Serial GC는 JDK에 도입된 최초의 가바지 컬렉터이며, 단일 스레드로 동작하는 가장 단순한 형태이다. 작은 힙 메모리와 단일 CPU 환경에 적합하며 Stop-The-World 시간이 가장 길게 발생한다. Parallel GC Parallel GC는 Java 5부터 8까지 default 가비지 컬렉터로 사용되었으며, Serial G…


싱글턴 패턴(Singleton Pattern)

May 24, 2025

싱글턴 패턴(Singleton Pattern) 이란 생성자를 여러 차례 호출해도 실제로 생성되는 인스턴스를 오직 하나만 존재하도록 유지 및 보장하는 패턴을 의미한다. 객체가 최초로 생성된 이후에 생성자나 객체 생성 메서드는 기존에 만들어진 객체를 반환한다. 이러한 싱글턴 패턴은 하나의 객체를 여러 상황에서 재사용할 수 있기 때문에 메모리 낭비를 방지 할 …


HTTP와 HTTPS의 차이

May 23, 2025

HTTP(Hypertext Transfer Protocol) 는 웹에서 클라이언트와 서버 간 통신을 위한 통신 규약인 프로토콜 중 하나다. 하지만, HTTP는 암호화되지 않는 평문 데이터를 전송하기 때문에 제 3자가 정보를 조회할 수 있다는 위험이 있다. 예를 들어, 아래처럼 사용자가 로그인 정보를 입력할 때 HTTP를 통해 전송되면, 이 정보는 암호화되…


NOT IN 쿼리를 사용할 때 발생할 수 있는 문제

May 23, 2025

NOT IN 쿼리는 SQL에서 특정 조건을 만족하지 않는 레코드를 필터링하기 위해 사용되는 구문이다. 하지만 대규모 데이터셋에서 성능 저하를 일으킬 수 있는 몇 가지 문제점이 있다. 이 글에서는 NOT IN 쿼리의 문제점과 이를 해결하기 위한 최적화 방안을 살펴보겠다. NOT IN 쿼리의 문제점 아래와 쿼리와 같이 NOT IN을 사용한 쿼리는 직관적이고 …


URI, URL, URN의 차이

May 21, 2025

URI(Uniform Resource Identifier), URL(Uniform Resource Locator), URN(Uniform Resource Name)은 모두 웹 자원을 식별하는 방법이다. 하지만 이들은 서로 다른 개념으로, 각각의 용도와 특징이 있다. URI (Uniform Resource Identifier) URI는 웹 자원을 식별하는 …


쿠키(Cookie)와 세션(Session)의 차이

May 20, 2025

쿠키(Cookie)와 세션(Session)은 HTTP의 무상태(stateless) 특성을 보완하여 웹 애플리케이션에서 클라이언트와 서버 간의 상태를 유지하기 위해 사용되는 메커니즘이다. 하지만, 이 두 가지는 서로 다른 방식으로 작동하며 각각의 장단점이 있다. 데이터 저장 위치 쿠키는 클라이언트 측 브라우저에 저장되는 반면, 세션은 서버 측에 저장된다. …


Spring에서 Object를 Bean으로 관리하는 이유는 뭘까?

May 19, 2025

최근 리마인드를 할 겸 Spring을 다시 톺아보고 있다. Spring Container에서 Bean으로 관리한다는 것은 보통 Spring Framework을 처음에 배우게 되는 내용이다. 그런데 왜 Bean으로 관리해야 하는지에 대해서는 잘 모르고 넘어가거나 잊는 경우가 있는 것 같다. 이번 글에서는 Spring에서 Bean으로 관리하는 이유에 대해서 …