💡해당 게시글은 최범균님의 ‘주니어 백엔드 개발자가 반드시 알아야 할 실무 지식’을 개인 공부목적으로 메모하였습니다. 11장에서 다루는 내용 MVC 패턴 (Model-View-Controller) 계층형 아키텍처 (Layered Architecture) DDD와 전술 패턴 (Domain-Driven Design) 마이크로...
[김영한의 스프링 MVC 2편 백엔드 웹 개발 활용 기술] 타임리프 기본 기능
타임리프 기본 기능 김영한님의 스프링 MVC 2편 강의를 통해 타임리프의 주요 기능인 텍스트 출력, 변수 표현식, 기본 객체, 유틸리티, URL 링크, 리터럴, 연산, 속성 설정, 반복과 조건부 평가, 주석, 블록, 자바스크립트 인라인, 템플릿 조각과 레이아웃 기능을 정리함 타임리프 소개 특징 서버 사이드 HTML 렌더링 (SS...
[김영한의 스프링 MVC 1편 백엔드 웹 개발 핵심 기술] 스프링 MVC 웹 페이지 만들기
스프링 MVC 웹 페이지 만들기 김영한님의 스프링 MVC 1편 강의를 통해 타임리프를 활용한 상품 관리 웹 애플리케이션을 만들면서 스프링 MVC의 실용적인 기능들인 @ModelAttribute, PRG 패턴, RedirectAttributes의 사용법과 동작 원리를 정리함 프로젝트 구조 및 설정 프로젝트 생성 빌드 도구 ...
[김영한의 스프링 MVC 1편 백엔드 웹 개발 핵심 기술] 스프링 MVC 기본 기능
스프링 MVC 기본 기능 김영한님의 스프링 MVC 1편 강의를 통해 스프링 MVC의 기본 기능들인 로깅, 요청 매핑, 요청 데이터 처리, 응답 데이터 생성, HTTP 메시지 컨버터의 동작 원리를 정리함 프로젝트 기본 설정 프로젝트 생성 빌드 도구 Gradle 언어 Java...
[주니어 백엔드 개발자가 반드시 알아야 할 실무 지식] 10장 모르면 답답해지는 네트워크 기초
💡해당 게시글은 최범균님의 ‘주니어 백엔드 개발자가 반드시 알아야 할 실무 지식’을 개인 공부목적으로 메모하였습니다. 10장에서 다루는 내용 네트워크 기초의 중요성 노드, 네트워크, 라우터 IP 주소와 도메인 고정 IP와 동적 IP 공인 IP와 사설 IP NAT (네트워크 주소 변환) VPN (가상 사설 네트워...
Mermaid CLI로 다이어그램을 고화질 PNG로 변환하기
Mermaid CLI로 다이어그램을 고화질 PNG로 변환하기 Mermaid 다이어그램을 마크다운에서 사용할 때 렌더링 성능 문제나 호환성 이슈로 PNG 이미지로 변환해야 하는 경우가 있음 Mermaid CLI(mmdc)를 사용하여 고화질 PNG 이미지로 변환하는 방법을 정리함 Mermaid CLI란? 개요 Mermaid 다이...
[김영한의 스프링 MVC 1편 백엔드 웹 개발 핵심 기술] 스프링 MVC 구조 이해
스프링 MVC 구조 이해 김영한님의 스프링 MVC 1편 강의를 통해 직접 만든 MVC 프레임워크와 스프링 MVC를 비교하고, DispatcherServlet의 구조와 동작 원리, 핸들러 매핑과 어댑터, 뷰 리졸버, @RequestMapping 기반 컨트롤러의 발전 과정을 정리함 직접 만든 MVC 프레임워크와 스프링 MVC 비교 용어 대...
[김영한의 스프링 MVC 1편 백엔드 웹 개발 핵심 기술] MVC 프레임워크 만들기
MVC 프레임워크 만들기 김영한님의 스프링 MVC 1편 강의를 통해 프론트 컨트롤러 패턴을 도입하고, 단계별로 발전시켜 나가며 스프링 MVC의 내부 구조를 이해하는 과정을 정리함 프론트 컨트롤러 패턴 개요 도입 배경 기존에는 각 서블릿이 개별적으로 클라이언트 요청을 처리 공통 처리 로직의 중복이 발생 특징 프론트 ...
[김영한의 스프링 MVC 1편 백엔드 웹 개발 핵심 기술] 서블릿, JSP, MVC 패턴
서블릿, JSP, MVC 패턴 김영한님의 스프링 MVC 1편 백엔드 웹 개발 핵심 기술 강의를 통해 서블릿에서 JSP, 그리고 MVC 패턴으로 발전하는 과정을 정리함 회원 관리 웹 애플리케이션 요구사항 회원 정보 이름 (username) 나이 (age) 기능 회...
Kotlin 상속 제한과 Spring과의 통합
개요 Kotlin은 기본적으로 모든 클래스와 메서드를 final로 설정하여 상속을 제한함 이는 Joshua Bloch의 “Effective Java” 원칙을 언어 수준에서 강제한 설계 철학임 Spring Framework는 CGLIB 프록시를 사용하므로 Kotlin의 final 클래스와 충돌이 발생함 all-open 플러그인과 Int...