일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 스프링MVC
- REGEXP_SUBSTR
- 자바의정석
- 인프런
- 시큐어코딩
- 자바의정석 연습문제
- 스프링입문
- Numpy
- 스프링
- 불친절한 SQL 프로그래밍
- Secure Coding
- Spring
- 스프링 핵심원리
- Python
- docker
- Java의정석
- 자바공부
- 불친절한SQL프로그래밍
- 이것이자바다
- 항해플러스 백엔드
- 스프링 부트와 JPA
- 김영한
- inflearn
- 항해플러스
- JPA
- 자바연습문제
- java
- 제네릭
- 서블릿
- 분석함수
- Today
- Total
목록Interview (2)
Continuous Challenge
DI (Dependency Injection) 의존 관계 주입. 객체를 직접 생성하는 게 아니라 외부에서 생성한 후 주입시켜주는 방식. 모듈 간의 결합도가 낮아지고 유연성이 높아진다. 외부에서 생성된 객체를 setter()를 통해 사용하는 방법 IoC (Inversion of Control) 제어의 역전. 제어의 흐름을 바꾼다. 메소드나 객체의 호출작업을 개발자가 결정하는 것이 아니라 외부에서 결정되는 것. 의존성을 역전시켜 객체 간의 결합도를 줄이고 유연한 코드를 작성할 수 있게 하여 가독성 및 코드 중복, 유지보수를 편하게 할 수 있게 한다. → Bean들은 싱글턴 패턴의 특징을 가지며 제어의 흐름을 사용자가 컨트롤 하는 것이 아니라 스프링에게 맡겨 작업을 처리하게 된다.
객체 지향 프로그래밍(OOP, Object Oriented Programming) 현실 세계의 사물들을 객체라고 보고 그 객체로부터 개발하고자 하는 특징들을 뽑아와 프로그래밍 하는 것. (추상화) 코드의 재사용성이 높다. 자주 사용되는 로직을 라이브러리로 만들어두면 계속해서 사용가능하며 신뢰성을 확보할 수 있다. 또한 라이브러리를 각종 예외상황에 맞게 잘 만들어두면 에러를 컴파일 단계에서 잡아낼 수 있으므로 버그 발생이 줄어든다. 또한 내부 동작을 알지 못하더라도 라이브러리가 제공하는 기능들을 사용할 수 있기 때문에 생산성이 높아지게 된다. 객체 단위로 코드가 나눠져 작성되기 때문에 디버깅이 쉽고 유지보수에 용이하다. 객체 간의 정보 교환이 모두 메시지 교환을 통해 일어나므로 실행 시스템에 많은 over..