230519 TIL #89 Spring Q&A - 2

김춘복·2023년 5월 18일
0

TIL : Today I Learned

목록 보기
89/543
post-custom-banner

230519 Today I Learned

항해99 마지막날.


Spring 면접대비 - 2

6. DI와 IoC에 대해 설명해주세요

DI, 의존성주입은 객체간의 의존성을 외부에서 주입하는 방식입니다. 객체가 직접 의존하는 객체를 생성하지 않고 외부에서 의존성을 주입받게 됩니다.
IoC, 제어의 역전은 객체의 생성과 생명주기 관리를 프레임워크나 컨테이너에 위임하는 개념입니다. 자바에서는 개발자가 객체를 직접 생성하고 제어했지만, 스프링 프레임워크에서는 스프링 컨테이너에 Bean으로 등록하면 스프링 컨테이너에서 객체의 생명주기를 컨트롤 해줍니다.
DI를 통해 IoC를 구현할 수 있고, 이를 통해 객체간 결합도를 낮추고 유지보수성을 개선할 수 있습니다.


7. Call By Reference가 뭔가요? 어떻게 쓰이나요?

call by reference는 함수 호출 방식 중 하나로 참조에 의한 호출방식입니다. 함수를 호출할 때 인자로 데이터의 value값이 아니라 데이터의 메모리 주소를 전달합니다. 이로인해 함수 내에서 매개변수를 변경할 경우 메모리 주소에 있는 데이터도 같이 바뀌기때문에, 원본 데이터도 함께 바뀌게 됩니다. 반대 개념으로는 원본 데이터 값 자체를 복사해서 함수로 전달하는 call by value가 있습니다.


8. Override와 Overload에 대해 설명해주세요

오버라이드는 부모 클래스의 메서드를 자식 클래스에서 확장 및 재정의하는 것입니다. 오버로드는 한 클래스에서 같은 이름의 메서드를 여러개 정의하는 것으로, 매개변수의 데이터 타입, 개수가 달라야합니다.


9. MVC 모델을 설명해주세요

애플리케이션의 구조를 모델, 뷰, 컨트롤러로 분리해서 개발하는 디자인 패턴입니다.
Model은 데이터 관리 및 비즈니스 로직을 처리하는 부분이며,
View는 비즈니스 로직의 처리 결과를 통해 유저 인터페이스가 표현되는 구간입니다. Controller는 메인 로직을 담당해 사용자의 요청을 처리하고 Model과 View를 중개하는 역할을 합니다. 스프링에서 사용되는 디자인 패턴입니다.


profile
Backend Dev / Data Engineer
post-custom-banner

0개의 댓글