본문 바로가기

Spring14

JAVA | 객체 지향 프로그래밍(OOP) vs 절차 지향 프로그래밍(POP) 절차 지향 프로그래밍(Procedural Programming) 이름 그대로 절차를 지향함. 쉽게 말해 실행 순서를 중요하게 생각하는 방식. 프로그램의 흐름을 순차적으로 따르며 처리하는 방식. 즉, "어떻게"를 중심으로 프로그래밍 한다. 객체 지향 프로그래밍(Object Oriented Programming) 이름 그대로 객체를 지향함. 쉽게 말해 객체를 중요하게 생각하는 방식. 실제 세계의 사물이나 사건을 객체로 보고, 이러한 객체들 간의 상호작용을 중심으로 프로그래밍하는 방식. 즉, "무엇을" 중심으로 프로그래밍 한다. 객체 지향 프로그래밍 vs 절차 지향 프로그래밍 - 객체 지향 프로그래밍과 절차 지향 프로그래밍은 서로 대치되는 개념이 아니다. 객체지향이라도 프로그램의 작동 순서는 중요하다. 다만 .. 2023. 12. 28.
JAVA | 가비지 컬렉션(Garbage Collection) Data data = null; System.out.println("1. data = " + data); // 1. data = null data = new Data(); System.out.println("2. data = " + data); // 2. data = x001 data = null; System.out.println("3. data = " + data); // 3. data = null data에 null을 할당했으므로 생성한 x001 Data 인스턴스를 더는 아무도 참조하지 않는다. 이렇게 아무도 참조하지 않게 되면 해당 인스턴스의 참조값을 다시 구할 방법이 없고, 해당 인스턴스에 다시 접근할 방법이 없다. 이렇게 아무도 참조하지 않고, 메모리 용량만 차지하는 유효하지 않은 메모리를 가.. 2023. 12. 26.
JAVA | 기본형 vs 참조형 기본형과 참조형 ? - 변수의 데이터 타입은 크게 사용하는 값을 변수에 직접 넣을 수 있는 기본형, 그리고 객체가 저장된 메모리의 위치를 가리키는 참조값을 넣는 참조형으로 분류한다. 기본형(Primitive Type): int, long, double, boolean처럼 변수에 사용할 값을 직접 넣을 수 있는 데이터 타입 참조형(Reference Type): Test test1, int[] test와 같이 데이터에 접근하기 위한 참조(주소)를 저장하는 데이터 타입, 객체 또는 배열에 사용됨 기본형 vs 참조형 기본형은 숫자 10, 20과 같이 실제 사용하는 값을 변수에 담을 수 있으며, 해당 값을 바로 사용할 수 있다. 참조형은 실제 사용하는 값을 변수에 담는 것이 아닌, 실제 객체의 위치(참조, 주소).. 2023. 12. 26.
Spring | 의존관계 주입 생성자 주입 생성자를 통해서 의존 관계를 주입 받는 방법 특징 1. 생성자 호출 시점에 딱 1번만 호출되는 것이 보장된다. 2. 불변, 필수 의존관계에 사용 @Component public class OrderServiceImpl implements OrderService { private final MemberRepository memberRepository; private final DiscountPolicy discountPolicy; @Autowired public OrderServiceImpl(MemberRepository memberRepository, DiscountPolicy discountPolicy) { this.memberRepository = memberRepository; this.. 2023. 12. 17.