Spring Framework - DI의 개념 - 1. 다형성과 SOLID 원칙
2023. 5. 2. 20:44
Spring & JPA/Spring
들어가며 Spring 프레임워크는 매우 거대한 생태계이지만 핵심적인 원리 원칙 개념은 달라지지 않았다. Spring의 핵심적인 개념은 크게 3가지로 아래와 같다. DI(Dependency Injection) 의존관계 주입 IoC(Inversion of Controll) 제어의 역전 AOP(Aspect Oriented Programming) 관점 지향 프로그래밍 이번 파트에서는 의존관계 주입으로 일컬어지는 DI에 대해 이 개념이 무었이고, 왜 이 개념이 사용되어야 하는가에 대한 포스트들 중 첫 번째이다. 다형성 다형성은 부모 타입을 사용하여 자식 타입의 객체를 다룰 수 있게 하는 것으로 이를 적절히 사용하면 프로그래밍을 매우 유연하게 할 수 있다. 하지만 개념이 조금 난해한데. 이를 역할이란 개념과, 구현..
MVC 패턴에서 각 파트의 역할
2023. 4. 30. 12:18
Spring & JPA/Spring
들어가며 이전에는 Servlet에서부터 시작된 웹 개발이 JSP가 생겨나면서 Model 1방식이 생겨났고 이것이 어떻게 발전되었는지에 대해 간략하게 설명했다. 이번에는 Model 2방식에서 조금 더 진보한 MVC패턴에 대해 이것이 무엇이고, 각 요소별로 어떤 역할이 있는지에 대해 배운 것을 적어보려고 한다. MVC(Model - View - Controller) MVC는 Model, View, Controller로 나누어져 개발하는 일종의 디자인패턴(Design pattern)으로 정의된다. 즉 웹 프로젝트들은 기본적으로 Model 파트와 View파트, Controller 파트로 나누어져 각각의 역할에 맞게 구현되고, 분리되어 저장된다. 최종적으로 이렇게 구현된 각 객체들이 조립되어 사용자의 요청을 처리..
Servlet 방식과 Spring 에서의 웹 개발
2023. 4. 28. 13:34
Spring & JPA/Spring
서블릿(Servlet) 서블릿을 통한 웹 페이지 구현 서블릿은 동적 웹 페이지를 만들 때 사용되는 자바 기반의 웹 어플리케이션 프로그래밍 기술이다. 동적으로 웹 페이지를 생성하기 위해서 서블릿은 요청(request)을 받으면 해당 요청에 맞는 서블릿을 찾은 뒤, 로직을 처리하고 이를 html 페이지로 생성하여 보여주는 동작을 수행한다. 이때 html 페이지를 생성하기 위해서는 직접 자바 코드로 html코드를 입력해주어야 했기 떄문에, context check나 가독성 면에서 매우 좋지 않았다고 한다. JSP의 출현 html코드를 자바 프로그래밍을 통해 하는 것은 매우 고된 일이었기 때문에 방법을 찾다가 JSP(Java Server Page)라는 것이 출현하였다. 해당 방식은 html 문서 내부에 자바 프..