일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Web
- Flutter
- Python
- CSS
- rails
- springboot
- 一日一つメソッド
- 자바
- vscode
- C로 시작하는 컴퓨터 프로그래밍4판
- 건담
- nico
- Spring
- java
- 비즈니스일본어
- 인프런
- 일본어
- 반다이몰
- jsp
- 디지몬
- 연습문제
- メソッド
- 건담베이스
- 単語
- ruby
- 日本語
- DART
- javascript
- html
- rails7
- Today
- Total
AR삽질러
Spring-객체지향이란?(용어정리) 본문
ORM
Object Relational Mapping
- 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑해주는 기술.
ORM은 객체와 데이터베이스 간의 매핑을 수행해 개발자가 SQL쿼리를 직접 작성하지 않고도 객체를 통해서 데이터베이스를 조작할 수 있게 해주는 기술이다.
- ORM장점 :
1) 개발자가 SQL쿼리를 직접 생성하지 않고 객체 지향 코드로 데이터베이스를 생성할 수 있어 개발 시간이 단축되고 생산성이 향상된다.
2) 객체와 데이터베이스 간의 매핑을 자동화하여 매핑 작업을 직접 처리하지 않아도 된다.
JPA
Java Persistence API
- Java에서 ORM을 구현하기 위한 표준 인터페이스
- JPA는 객체와 관계형 데이터베이스 간의 매핑을 위한 어노테이션 기반의 설정방식을 제공해 Java클래스와 데이터베이스 테이블간의 매핑을 지정하고 객체와 데이터베이스 간의 변환을 자동으로 처이할 수 있다.
DI
Dpendency Injection
- 객체간의 의존관계를 관리하기 위한 디자인패턴.
- 객체가 다른 객체를 참조할때 직접 생성 및 참조하지 않고 해당 객체에 필요한 의존성을 외부에서 주입하는 방식으로 결합도를 낮추고 재사용이 가능한 코드를 구현할 수 있다.
- Spring에서 DI를 구현할 때는 Containner가 사용되며 Containner에서 DI를 관리하고 객체들간의 의존성을 해결한다.
Container
Spring의 Containner는 DI를 관리하고 객체의 생명 주기를 관리한다. Conntainer에서 Bean 객체들을 관리하고 사용할 수 있다.
AOP
Aspect-Oriented Programming
- 관점지향 프로그래밍으로 여러 모듈에 걸쳐 반복저으로 발생하는 사항을 분리하여 관리하는 프로그래밍 패러다임.
MVC
Model - 데이터와 비스즈니로직으로 Java객체로 표현되고 클리이언트와의 상호작용에서 데이터 처리 작업을 담당한다.
View - 사용자에게 데이터를 표현하는 역할로 HTML, JSP, Thymeleaf 등 템플릿 엔진을 이용해 사용자 인터페이스를 렌더일한다.
Controller - 클라이언트의 요청을 처리하고 Model과 View간의 상호작용을 조정하는 역할.
REST
Representational State Transfer
- 웹 기반의 분산시스템에서 리소스를 표현하고 상태를 전송하기 위한 아키텍처 스타일.
RESTful API
Representational State Transferful Application Programming Interface
- REST아키텍처 스타일을 따르는 웹 서비스 API로 웹 기반의 분산 시스템에서 리소스를 표현하고 상태를 전송하기 위한 아키텍처 스타일로 클라이언트와 서버 가느이 통신을 위한 규칙과 제약 조건을 제공한다.
JSP VS Spring VS SpringBoot
JSP vs. Spring: JSP는 웹 페이지의 동적인 부분을 구현하는 데에 사용되는 웹 템플릿 언어인 반면 Spring은 애플리케이션 개발을 위한 프레임워크로서, DI, AOP, MVC 패턴 등을 지원하여 애플리케이션의 구조와 비즈니스 로직을 구성할 수 있다. Spring은 JSP를 사용하여 웹 페이지를 구현하는 데에도 활용될 수 있다.
Spring vs. Spring Boot: Spring은 엔터프라이즈 애플리케이션 개발을 위한 프레임워크로서, 다양한 기능과 설정을 제공한다. Spring Boot는 Spring을 기반으로 한 간편한 애플리케이션 개발을 위한 도구로 Spring Boot는 복잡한 설정을 자동화하고, 내장형 서버를 제공하여 개발자가 빠르게 애플리케이션을 구축하고 실행할 수 있다.
SOLID
- SRP(Single Responsibility Principle) : 단일책임원칙
클래스나 모듈은 단 하나의 책임만 가져야 한다.
- OCP(Open / Closed Principle) : 개발-폐쇄 원칙
클래스나 모듈은 확장에 대해 열려 있어야 하고 변경에 대해서는 닫혀 있어야 한다.
- LSP(Liskov Substitution Principle) : 리스코프 치환 원칙
하위 클래스는 상위 클래스를 대체할 수 있어야한다.
자식 클래스는 부모 클래스로 캐스틍되어 사용되어도 정상적으로 작동해야 한다.
- ISP(Interface Segregation Principle) : 인터페이스 분리 원칙
클라이언트가 자신이 사용하지 않는 메서드에 의존하지 않아야 한다.
- DIP(Dependency Inversion Principle) : 읜존관계 역전 원칙
상위 수준의 모듈은 인터페이스를 통해 하위 수준 모듈과 의존성을 맺어야한다.
'JAVA > Spring' 카테고리의 다른 글
Spring-등급제회원_기본예제(2) (0) | 2023.06.27 |
---|---|
Spring-등급제회원_기본예제(1) (0) | 2023.06.27 |
Spring기초 설명 (0) | 2023.04.03 |
Spring게시판실습 (0) | 2023.04.03 |
Spring Start (0) | 2023.03.24 |