전체 글
[spring] 생성자 주입(1)
본 포스팅은 김영한 님의 스프링 핵심원리 기본편 강의 섹션 3을 듣고 요약한 내용입니다. 1. 기존코드의 문제점 먼저 예제를 하나 만들겠습니다. 무조건 1000원을 할인해주는 FixDiscountPolicy와 구매 금액에 따라 10%를 할인해주는 RateDiscountPolicy가 있다고 하겠습니다. 대충 FixDiscountPolicy는 이런식으로 구현이 될 것입니다. package hello.core.discount; import hello.core.member.Grade; import hello.core.member.Member; public class FixDiscountPolicy implements DiscountPolicy { private int discountFixAmount = 1000..
[spring] 좋은 객체 지향 설계의 5가지 원칙(SOLID)
1. SRP 단일 책임 원칙 한 클래스는 하나의 책임만 가져야 한다. 중요한 기준은 변경이다. 변경이 있을 때 파급효과가 적으면 단일 책임 원칙을 잘 따른 것이다. ex) UI 변경, 객체의 생성과 사용을 분리 2. OCP 개방-폐쇄 원칙 (중요) 소프트웨어 요소는 확장에는 열려 있으나 변경에는 닫혀 있어야 한다. 따라서, 다형성을 활용해보면, 인터페이스를 구현한 새로운 클래스를 하나 만들어서 새로운 기능을 구현할 수 있다. 3. LSP 리스코프 치환 원칙 프로그램의 객체는 프로그램의 정확성을 깨뜨리지 않으면서 하위 타입의 인스턴스로 바꿀 수 있어야 한다. 즉, 다형성에서 하위 클래스는 인터페이스 규약을 지켜야 한다는 것이다. 예를들어, 자동차 인터페이스의 엑셀은 앞으로 가라는 기능이다. 엑셀을 뒤로 가..
[쿠버네티스] Pod
본 포스팅은 김태민 님의 대세는 쿠버네티스 [초급~중급] 섹션 5를듣고 요약한 내용입니다. Pod status: phase: Pending conditions: - type: Initialized status: 'True' lastProbeTime: null lastTransitionTime: '2019-09-26T22:07:56Z' - type: ContainersReady status: 'False' lastProbeTime: null lastTransitionTime: '2019-09-26T22:08:11Z' reason: ContainersNotReady containerStatuses: - name: container state: waiting: reason: ContainerCreating l..
JAVA - 인터페이스(Interface)
인터페이스(Interface)란? 추상 메서드의 집합을 의미한다. 추상 메서드의 집합이므로, 구현된 메소드는 가질 수 없다. 즉, 구현된 것이 전혀 없는 설계도이자 껍데기라고 볼 수 있다. 다중상속가능 : 자식 클래스가 여러 부모 인터페이스를 상속가능하다. 메소드 오버라이딩 필수 : 자식 클래스는 부모 인터페이스의 함수를 모두 오버라이딩해야 한다. 모든 멤버 변수는 public static final 이어야 하며, 이를 생략할 수 있다. 모든 메서드는 public abstract 이어야 하며, 이를 생략할 수 있다. interface sample1 { public static final 변수명 = 값; //상수 public abstract 메서드이름(매개변수); //추상메서드 } interface Mov..
쿠버네티스(Kubernetes) 기초
본 포스팅은 김태민 님의 대세는 쿠버네티스 [초급~중급] 섹션3, 4를듣고 요약한 내용입니다. 대세는 쿠버네티스 [초급~중급] - 인프런 | 강의 쿠버네티스는 앞으로 어플리케이션 배포/운영에 주류가 될 기술 입니다. 이 강좌를 통해 여러분도 대세에 쉽게 편승할 수 있게 됩니다., - 강의 소개 | 인프런... www.inflearn.com 기본 오브젝트 Pod Service Volume ConfigMap, Secret Namespace, ResourceQuota, LimitRange 컨트롤러 Auto Healing Pod나 Node에 장애가 생겨 다운될 경우, 컨트롤러는 새로운 노드에 Pod를 넣어 재시동합니다. 다른말로 자동 복구라고도 하는데, 실패한 인스턴스를 즉시 감지하고 자동으로 다시 생성하여 클..