전체 글131 스프링 빈과 의존관계 인프런 강의 공부 내용이다.스프링 빈 등록하는 방법 다음과 같은 의존관계를 가능케 하는 방법이라고 보면 된다.스프링 빈으로 등록해서 쓰면 많은 이점이 있기 때문에 보통 등록해서 사용한다. cf) 스프링은 스프링 컨테이너에 스프링 빈을 등록할 때, 기본으로 싱글톤으로 등록한다.쉽게 말해 helloController, memberService, memberRepository 각각 하나씩 등록한다는 뜻이다.memberService가 아니라 orderService가 memberRepository를 내놓으라고 하면 같은 객체를 내어놓는다는 것이다.이렇게 메모리 절약 가능. 메모리 도출할 때 좋음 1. 컴포넌트 스캔을 통한 자동 의존관계 설정: @service, @controller, @repository 붙여서 .. 2025. 5. 18. 비즈니스 예제 [[/비즈니스 요구사항 정리]][[/회원 도메인과 리포지토리 만들기]] [[/회원 리포지토리 테스트 케이스 작성]] [[/회원 서비스 개발]][[/회원 서비스 테스트]] 비즈니스 요구사항 정리 - 데이터: 회원ID, 이름- 기능: 회원 등록, 조회- 아직 데이터 저장소가 선정되지 않음(가상의 시나리오): nosql 등 데베 종류가 아직 선정 x 일반적인 웹 애플리케이션의 계층 구조 - 컨트롤러: 웹 MVC의 컨트롤러 역할- 서비스: 핵심 비즈니스 로직 구현- 리포지토리: 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리- 도메인: 비즈니스 도메인 객체ex. 회원, 주문, 쿠폰 등등 주로 데베에 저장 및 관리 클래스 의존 관계 - 아직 데이터가 선정되지 않았기 때문에, 우선 인터페이스를 두어 구.. 2025. 5. 12. [Chapter5] 동적 계획 알고리즘 Dynamic Programming(DP) 알고리즘: 입력 크기가 작은 부분 문제들 해결 -> 그 해들을 이용해 보다 큰 크기의 부분 문제들 해결 -> 최종적으로 원래 주어진 입력의 문제 해결 - 최적성의 원리: 큰 문제를 해결하기 위해서는 작은 문제들이 해결되어야 한다.- 최적화 구조: 그런 구조를 가짐 그리디와 DP는 모두 최적성 원리&최적화 구조 가지고 있음그리디 알고리즘과 DP는 모두 최적해를 구하는 것이 목적그리디는 0-1의 경우 최적해 보장이 안 되지만, DP는 항상 최적해를 보장해준다. 그리디 알고리즘DP목적최적해 구하기(최적성 원리 & 최적화 구조)최적해 항상 보장?X(0-1의 경우 안 됨)O 분할 정복 알고리즘DP 알고리즘해 구하는 과정해 중복 가능 여부부분 문제의 해 중복 x부분 문.. 2025. 4. 28. [Chapter4] 그리디 알고리즘(2) 부분 배낭 문제 n개의 물건이 각각 1개씩 있고,각 물건은 무게와 가치를 가지고 있으며,배낭이 한정된 무게의 물건들을 담을 수 있을 때최대의 가치를 갖도록 배낭에 넣을 물건들을 정하는 문제(단위 무게당 가치가 높은 물건을 담는 것이 유리하다.) 물건을 부분적으로 담는 것 허용(쪼개어 담는 것 허용)그리디 알고리즘으로 해결 따라서 주된 아이디어는1. 단위무게 당 가장 값나가는 물건부터 넣음2. 통째로 배낭에 넣을 수 없다면 배낭에 넣을 수 있을 만큼만 물건을 부분적으로 배낭에 담음 알고리즘FractionalKnapsack입력: n개의 물건, 각 물건의 무게와 가치, 배낭의 용량 c출력: 배낭에 담은 물건 리스트 L과 배낭 속의 물건 가치의 합 v1. 각 물건에 대해 단위 무게 당 가치를 계산2. 물건들을 .. 2025. 4. 27. 이전 1 2 3 4 5 ··· 33 다음