질문 예시 > GET, POST의 개념과 함께 데이터 흐름에 대해서 설명해주세요. Get 방식은 클라이언트가 서버에 데이터를 요청할 때 사용됩니다. Get 방식는 동일한 요청을 여러 번 보내더라도 동일한 결과를 생성하는 멱등성을 가집니다. Get 방식을 통해 보내는 데이터는 주소 뒤에 "이름"과 "값"이 결합된 스트링 형태로 전달합니다. 주소창에 쿼리 스...
질문 예시 > ORM을 사용하면서 쿼리가 복잡해지는 경우에는 어떻게 해결하는게 좋을까요? JPA 같은 ORM은 정적인 상황에서 사용하는걸 권장하기 때문에 복잡한 쿼리와 동적인 쿼리에 대한 문제가 발생할 수 있습니다. 그럴때는 문자열 형태로 직접 쿼리문을 작성하는 JPQL이나 자바코드로 작성하는 Querydsl을 사용할 것을 권장하고 있습니다.
질문 예시 > 대용량 트래픽 발생 시 어떻게 대응해야 하나요? 대용량 트래픽 발생 대응 방법은 서버 확장, 캐싱, 비동기 처리 등이 있습니다. 그중에서 가장 일반적인 방법인 서버 확장에는 수직확장(scale-up)과 수평확장(scale-out) 이 있습니다. 수직 확장(scale-up)은 한 대의 서버를 구성하는 부품(CPU, RAM, DISK 등.....
질문 예시 >객체지향 프로그래밍이란 무엇이고 어떻게 활용할 수 있나요? 객체지향 프로그래밍(Object Oriented Programming)이란 컴퓨터 프로그래밍 패러다임 중 하나로, 여러 개의 독립된 단위인 객체들간의 상호작용을 통해서 프로그램을 만드는 방식입니다. 객체지향 프로그래밍은 추상화, 캡슐화, 상속화, 다형성의 특징을 가집니다. 코드의 재사...
질문 예시 > DI, IoC에 대해 설명해주세요. IoC(Inversion of Control)는 메소드나 객체의 호출작업을 개발자가 결정하는 것이 아니라, 외부(프레임워크)에서 결정되는 디자인 패턴을 의미합니다. 객체의 의존성을 역전시켜 객체 간의 결합도를 줄이고 유연한 코드를 작성할 수 있게 하여 가독성 및 코드 중복, 유지 보수를 편하게 할 수 있게...
HTTP 메서드란 클라이언트와 서버 사이에 이루어지는 요청(Request)과 응답(Response) 데이터를 전송하는 방식을 말합니다.
CI/CD는 소프트웨어의 개발, 테스트와 배포를 모두 통합함으로써 소프트웨어 버그를 쉽게 찾아낼 수 있으며, 더 빠른 배포 주기를 가질 수 있게 만들어 준다.
AOP는 Aspect Oriented Programming의 약자로 관점 지향 프로그래밍이라고 불린다. 관점 지향은 쉽게 말해 어떤 로직을 기준으로 핵심적인 관점, 부가적인 관점으로 나누어서 보고 그 관점을 기준으로 각각 모듈화하겠다는 것이다.
MockMvc는 웹 어플리케이션을 애플리케이션 서버에 배포하지 않고 테스트용 MVC환경을 만들어 요청 및 전송, 응답기능을 제공해주는 유틸리티 클래스다.
키(Key)는 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 다른 튜플들과 구별할 수 있는 유일한 기준이 되는 Attribute(속성)이다.
정규화는 관계형 데이터베이스 데이터 모델의 중복을 최소화하고 데이터의 일관성, 유연성을 확보하기 위한 목적으로 데이터를 분해하는 과정이다.