본문 바로가기

전체 글13

SSR vs CSR 의 장단점 목차 브라우저 렌더링이란? 브라우저 렌더링이란 웹 브라우저가 웹 서버로부터 받은 데이터와 코드를 사용자의 화면(view)에 보이는 페이지로 변환하는 것이다. 간단히 말해, 렌더링은 웹 페이지가 사용자의 화면에 그려지기까지의 전체 과정을 의미한다. 예를 들어, 크롬 브라우저에 접속해 주소창에 www.naver.com 을 입력한다면 브라우저는 네이버 서버로부터 네이버 웹사이트에 대한 정보를 받아 브라우저 화면에 네이버 홈페이지를 그려주게 되는 것이다. 이러한 렌더링은 SSR(Server-Side Rendering, 서버 사이드 렌더링)과 CSR(Client-Side Rendering, 클라이언트 사이드 렌더링)으로 나누어진다. 서버 사이드 렌더링(SSR, Server-Side Rendering)이란? 서버 .. 2024. 3. 27.
도메인이란?도메인 모델? 목차 시작하기에 앞서 스프링을 사용한 프로젝트를 만드는 과정에서 회원 domain의 domain과 package로 만드는 domain package의 domain이 어떻게 다른지 와닿지않아서 도메인에 대한 정리해보았다. 도메인이란? 위키피디아가 알려주는 도메인 도메인은 컴퓨터 프로그램의 목표 대상 영역을 의미하는 용어로, 소프트웨어 공학에서 사용된다. 공식적으로, 도메인은 특정 프로그래밍 프로젝트의 대상 주제를 좁게 또는 넓게 정의한 것을 나타낸다. 예를 들어, 특정 병원을 위한 프로그램을 만드는 것을 목표로 하는 프로그래밍 프로젝트의 경우, 그 병원이 도메인이 된다. 이것만 보아서는 이해하기 어려울 수 있다. 상상해보자. 우리가 '학교'라는 작은 세계를 만든다고 하자. 이 학교에는 선생님, 학생,.. 2024. 2. 29.
[Spring] @Builder 빌더 어노테이션, 빌더 패턴 @Builder란? Lombok 라이브러리에서 제공하는 어노테이션으로, 자바에서 빌더 패턴을 손쉽게 구현할 수 있도록 도와준다. @Builder 어노테이션을 사용하면 복잡한 객체를 생성할 때 필요한 코드를 줄이고, 가독성 및 유지보수성을 향상시킬 수 있다. @Builder 어노테이션 사용 방법을 알아보기 앞서 빌더 패턴에 대해 알아보자. 빌더 패턴 빌더 패턴은 복잡한 객체를 단계별로 구축할 수 있게 해주는 디자인 패턴이다. 이해를 돕기 위해, 일상 생활에서 익숙한 "피자 주문" 과정을 예로 들어보자. 피자 주문하기 피자를 주문할 때, 우리는 다양한 토핑을 선택할 수 있다. 예를 들어, 치즈 피자에 페퍼로니, 올리브, 버섯 등을 추가할 수 있다. 하지만 모든 사람이 같은 토핑을 원하는 것은 아니다. 어.. 2024. 2. 28.
[Spring] 좋은 객체 지향 설계의 5가지 원칙(SOLID) S O L I D 스프링 공부를 하다 객체 지향 설계를 학습하기 앞서 알아 두면 좋다고 하여 기록한다. 악덕 면접관에게 걸리면 면접에도 나올 수 있다고 하니 알아두자. SOLID란 클린코드로 유명한 러버트 마틴이 좋은 객체 지향 설계의 5가지 원칙을 정리한 것이다. S : SRP(Single Responsibility Principle) 단일 책임 원칙 O :OCP(Open/Closed Principle) 개방-폐쇄원칙 L : LSP(LIskov Substitutiom Principle) 리스코프 치환 원칙 I : ISP(Interface Segregation Principle) 인터페이스 분리 원칙 D : DIP(Dependency Inversion Principle) 의존관계 역전 원칙 SRP 단일 .. 2024. 2. 27.