[Spring] 01. 프레임워크와 라이브러리 :: 스프링과 스프링부트 :: IoC와 DI 정리
·
CS
스프링 부트와 스프링의 차이점을 말하기 전, 먼저 확인해야할 개념이 있다. 📍 라이브러리(Library)란? 애플리케이션 개발에 필요한 기능인 클래스, 함수 등을 모아놓은 코드의 모음이다. 프로그래밍 세계에서 라이브러리는 도서관이라는 뜻보다는 책들의 모음이라고 생각하면 된다. 또한 라이브러리는 독립적이기에 라이브러리끼리 영향을 크게 주지 않는다. 예를 들어, 자바의 JDBC 라이브러리를 사용하여 데이터베이스와 연결할 수 있지만, 개발자가 직접 연결을 설정하고 SQL 쿼리를 작성해야 한다. 📍 프레임워크(Framework)란? 소프트웨어 개발을 수월하게 하기 위한 SW 개발 환경이다. fram(틀) + work(일하다)의 합성어로, 일하기 위한 틀을 제공하는 것이다. 즉, 개발자는 그 흐름 안에서 필요..
[Spring] 03. AOP(관점 지향 프로그래밍)과 PSA(서비스 추상화)
·
CS
💡 먼저 이전 글을 읽고 오자!더보기   스프링 프레임워크는 객체 지향 프로그래밍의 장점을 극대화하기 위한 여러 기법을 도입하고 있다. 그 중에서도 AOP(Aspect-Oriented Programming)와 PSA(Portable Service Abstraction)**는 각각 코드의 재사용성을 높이고, 다양한 서비스와의 유연한 통합을 가능하게 하는 핵심 개념이다. 이러한 기법들은 개발자가 비즈니스 로직에 집중하면서도, 시스템의 유지보수성과 확장성을 높일 수 있도록 돕는다. ⓵   AOP(Aspect-Oriented Programming)   관점 지향 프로그래밍이라고 불리는 개념은, 공통 기능을 비즈니스 로직과 분리해주는 개념이다. 예를 들어, 로그 기록이나 보안 체크 같은 기능을 모든 메서드에 추..