본문 바로가기

SPRING/Spring

[스프링| 스프링 핵심 원리 | 기본편 | 스프링 핵심 원리 이해1 - 예제 만들기]주문과 할인 도메인 실행과 테스트 public class OrderApp {// 'OrderApp'라는 public 클래스를 선언합니다. public static void main(String[] args) { // 'main' 메서드를 선언합니다. 이 메서드는 애플리케이션의 진입점으로, String 배열을 매개변수로 받습니다. MemberService memberService = new MemberServiceImpl(); // 'MemberService' 인터페이스의 구현체인 'MemberServiceImpl'을 인스턴스화하고, 'memberService'라는 변수에 할당합니다. OrderService orderService = new OrderServiceImpl(); /.. 더보기
[스프링| 스프링 핵심 원리 | 기본편 | 스프링 핵심 원리 이해1 - 예제 만들기]주문과 할인 도메인 개발 JAVA만 사용한 할인정책package hello.core.discount;// 이 줄은 패키지 이름을 선언합니다. 패키지는 Java에서 관련된 클래스와 인터페이스를 조직화하는 데 사용됩니다.import hello.core.member.Member;// 'Member' 클래스를 import합니다. 이 클래스는 동일 프로젝트의 다른 패키지에 정의되어 있으며, 'DiscountPolicy' 인터페이스에서 사용됩니다.public interface DiscountPolicy {// 'DiscountPolicy'라는 이름의 public 인터페이스를 선언합니다. 인터페이스는 메서드의 시그니처만을 정의하며, 구현은 이 인터페이스를 구현하는 클래스에서 이루어집니다. /* * @return 할인 대상금액 .. 더보기
[스프링| 스프링 핵심 원리 | 기본편 | 스프링 핵심 원리 이해1 - 예제 만들기] 주문과 할인 도메인 설계 더보기
[스프링| 스프링 핵심 원리 | 기본편 | 스프링 핵심 원리 이해1 - 예제 만들기]회원 도메인 실행과 테스트 package hello.core.member;// 이 줄은 패키지 이름을 선언합니다. 패키지는 Java에서 관련된 클래스와 인터페이스를 조직화하는 데 사용됩니다.public class MemberApp {// 이 줄은 'MemberApp'이라는 public 클래스를 선언합니다. public static void main(String[] args) { // Java 애플리케이션의 진입점인 'main' 메서드를 선언합니다. 이 메서드는 'String' 배열을 매개변수로 받으며, 프로그램이 실행될 때 실행됩니다. MemberService memberService = new MemberServiceImpl(); // 'MemberService' 인터페이스의 구현체인 'Mem.. 더보기
[스프링| 스프링 핵심 원리 | 기본편 | 스프링 핵심 원리 이해1 - 예제 만들기] 도메인 개발 package hello.core.member;// 이 줄은 패키지 이름을 선언합니다. 패키지는 Java에서 관련된 클래스와 인터페이스를 조직화하는 데 사용됩니다.public enum Grade {// 이 줄은 'public' 접근 제어자로 선언된 'enum' Grade를 정의합니다. 'enum'은 열거형으로, 한정된 상수 값만을 멤버로 가지는 특수한 클래스 타입입니다. BASIC, // 'BASIC'은 Grade 열거형의 첫 번째 상수입니다. 이는 회원 등급 중 기본 등급을 나타냅니다. VIP // 'VIP'는 Grade 열거형의 두 번째 상수입니다. 이는 회원 등급 중 높은 등급을 나타냅니다.}package hello.core.member;// 이 줄은 패키지 이름을 선언합니다... 더보기
[스프링| 스프링 핵심 원리 | 기본편 | 스프링 핵심 원리 이해1 - 예제 만들기] 프로젝트 개발 환경과 요구사항 더보기
[스프링| 스프링 핵심 원리 | 기본편 | 객체 지향 설계와 스프링] SOLID SOLID 원칙은 객체 지향 설계를 위한 다섯 가지 기본 원칙으로, 소프트웨어 설계의 품질을 향상시키고 유지보수를 용이하게 하며 확장성을 높이는 데 목적이 있습니다. 각 원칙은 소프트웨어 아키텍처의 결함을 줄이고, 유연성과 재사용성을 증가시키기 위해 고안되었습니다. 다음은 SOLID 원칙의 각 요소를 설명합니다:1. Single Responsibility Principle (단일 책임 원칙)하나의 클래스는 하나의 책임만 가져야 합니다. 즉, 클래스를 변경하는 이유는 오직 하나여야 합니다. 이 원칙을 적용하면 클래스가 변경되는 이유를 명확히 알 수 있으며, 시스템의 다른 부분에 영향을 미치지 않고 독립적으로 클래스를 개선하거나 수정할 수 있습니다.2. Open/Closed Principle (개방-폐쇄 원.. 더보기
[스프링| 스프링 핵심 원리 | 기본편 | 객체 지향 설계와 스프링] 다형성 스프링 프레임워크에서 다형성(Polymorphism)은 객체 지향 프로그래밍의 핵심 개념 중 하나로, 스프링에서 특히 유용하게 사용됩니다. 다형성을 통해 여러 클래스의 객체들이 하나의 인터페이스나 기본 클래스의 참조 타입으로 다루어질 수 있습니다. 이를 활용하면 유연하고 확장성 있는 애플리케이션을 구축할 수 있습니다.스프링에서의 다형성의 예인터페이스를 통한 다형성: 스프링에서는 다양한 컴포넌트나 서비스를 인터페이스로 정의하고, 이 인터페이스를 구현하는 다양한 클래스를 생성할 수 있습니다. 예를 들어, 데이터 접근 객체(Data Access Object, DAO) 인터페이스가 있고, 이를 여러 DB 기술(MySQL, PostgreSQL 등)을 사용해 구현할 수 있습니다.빈(Bean) 설정과 다형성: 스프링.. 더보기