회원 도메인 개발
회원 도메인 개발
회원 도메인 개발
지금까지 도메인 설계 등 데이터 적인 설계는 했고, 이제부터는 뭘 어디까지 구현할지 전체적으로 알아보고자 한다.
엔티티 설계시 주의점
이번에는 도메인을 분석 설계 해보려고 한다.
이전에 스프링이 자바코드, XML 등 다양한 설정 형식을 지원하는 것을 알았다. 그렇다면 스프링이 굳이 왜 이렇게 다양한 설정 형식을 지원할까 ?? 이 부분에 대해 알기 위해서는 BeanDefinition 이라는 추상화를 알아야 한다.
이번에는 스프링 부트와 JPA를 활용하여 Shop에 관련된 웹 애플리케이션 프로젝트를 만들어 보려고 한다. 회원, 상품 등록, 주문 등의 기능을 구현할 것이다.
다양한 설정 형식 지원 -자바 코드, XML
BeanFactory와 ApplicationContext
이전에 컨테이너에 빈을 등록하였다. 그렇다면 등록한 빈을 어떻게 조회할 수 있을까?
스프링 컨테이너 생성 스프링 컨테이너가 생성되는 과정을 알아보면
지금 까지 순수한 자바 코드로만 작성해온 것을 우리의 목표인 스프링을 사용해 볼 것이다.
IoC(Inversion of Control) 제어의 역전 기존의 프로그램 경우 클라이언트 구현 객체가 스스로 필요한 서버 구현 객체를 생성, 연결, 실행 하였다. 즉 구현 객체가 프로그램의 제어 흐름을 스스로 조종했다는 의미이다. 개발자 입장에서 보자면 자연스러운 흐름으로 보인...
지금까지 흐름을 정리해보자 전체 흐름 정리
자 이제 AppConfig를 통해 사용과 구성을 분리하였으니 기존의 정액 할인 정책을 정률 할인으로 바꿔보자
자 저번 글에서 이전에 구성한 AppConfig가 약간의 문제가 있다고 언급하였다. 어떤 문제가 있었을까?
이전에 설계한 것을 DIP를 지키도록 하기 위해 private DiscountPolicy discountPolicy; 로 변경함으로써 인터페이스에만 의존하도록 바꾸었다.
지금까지 단일 신경층망을 구현해보았는데 이제는 단일층이 아닌 2개의 층을 가진 신경망을 구현해보고자 한다. 그 전에 신경망 알고리즘을 벡터화 하는 것에 대해 알아보자.
이전에 전체 데이터 샘플수가 부족하여 검증 세트를 훈련 세트에서 분리하여 훈련 세트의 샘플 개수가 부족하여 모델을 충분히 훈련시키는데 문제가 된 경우가 있었다. 이러한 문제를 해결할 방법으로 교차 검증이 쓰인다.
자 이제는 기획자가 할인 정책을 이전에 구현했던 방식인 정액 할인이 아닌 정률 할인으로 변경을 원한는 상황이라고 가정하자 회원이 VIP인 경우 10% 할인을 해주자. 갑자기 할인 정책이 바뀌어서 난감하지만 역할과 구현을 분리를 잘 하여 개발하였다면 변경에 용이할 것이다. 개...
이번에는 기본적인 SQL 문장인 SELECT, INSERT, UPDATE, DELETE에 대해 알아볼 것이다.
이전에는 회원 도메인 설계를 했다면 이제는 주문 할인 도메인 설계를 해보려 한다.
이번에는 MySQL을 본격적으로 배우기 전에 꼭 알아야할 용어들을 정리해보려고 한다.
이전에 과대 적합을 해결하는 대표적인 방법 중 하나로 가중치 규제(regularization)을 언급하였다.
과대 적합(overfitting), 과소 적합(underfitting) 개념에 대해 알아보고자 한다. 훈련 세트와 검증 세트는 모델의 과대 적합과 과소 적합 이라는 문제와 매우 깊게 연관 되어 있다.
자 지금까지 선형회귀, 로지스틱 회귀, 단일층 신경망에 대해 배웠다. 이것들은 딥러닝을 위한 핵심 알고리즘이다. 따라서 지금부터는 훈련 노하우에 대해 알아볼 것이다.
이전에 로지스틱 회귀를 직접 구현해 보았다. 로지스틱 회귀이 단일 신경층 망(single layer neural network) 동일하다고 한다. 신경망??? 단일층 ??? 이부분에 대해 좀더 자세히 알아보고, 또한 이 단일 신경층 망 즉 로지스틱 회귀를 구현하는 것이 귀찮기...
Spring이 왜 생기게 되었는지 알기위해 순수한 자바코드로 예제를 작성해보며 Spring의 필요성을 느껴보고자 한다.
처음 MySQL을 배우려고 하는 이유는 백엔드든 AI든 데이터를 이용하고, 데이터를 전처리하고 가공할 줄 알아야 한다고 전해 들었기 때문이다. 많은 RDBMS 중 왜 하필 MySQL을 배우는지는 그냥 단순히 예전부터 많이 가장 많이 들어왔고 그렇기 때문에 가장 많이 쓰이지 않을까...
이진 분류(Binary Classification) : 임의의 샘플 데이터를 참 혹은 거짓으로 구분하는 문제를 말한다.
스프링 이란?? 스프링은 너무 많은 기능을 제공해 주고 있어 정의하기 쉽지가 않다. 스프링은 프레임워크인데 주요 기능 및 특징을 간단히 정리해보면
가장 먼저 딥러닝의 기초가 되는 머신러닝 알고리즘 중 가장 간단한 선형회귀를 만들어 볼 것이다. 직선의 그래프 y = ax + b a : 기울기, b : 절편