객체지향 프로그래밍(Object-Oriented Programming, OOP)란, 프로그래밍을 여러 개의 객체 단위로 보는 컴퓨터 프로그래밍의 패러다임 중 하나다.객체란, 일상생활에서 우리가 인식할 수 있는 모든 사물이며, 속성(field)과 행위(method)로 구
의존성 주입(Dependency Injection, DI)는 객체지향 프로그래밍의 디자인 패턴 중 하나다.객체지향 프로그래밍에서는 객체 간의 의존성이 발생할 수 있다. 즉, 한 객체가 다른 객체의 속성과 기능을 사용하기 위해서 의존하는 경우가 존재한다. 이러한 의존성은
일반적으로 데이터 베이스에 저장된 데이터를 검색할 때, 전체 테이블을 스캔하는 풀 스캔 테이블(Full Scan Table)의 방식을 사용한다. 하지만, 데이터 베이스에 담긴 데이터 수가 점점 늘어날 수록 해당 방식의 성능은 점점 떨어진다. 이때 인덱스를 사용하면 된다
MSA란 소프트웨어 애플리케이션을 작은 규모의 단위로 분리하여 개발하고 운영하는 아키텍처 패턴이다.기존 모놀리식의 아키텍처는 애플리케이션 전체가 한 대의 서버에서 실행되어야 했으며, 애플리케이션의 확장, 유지보수, 안정성 등에 문제가 발생할 수 있다.(SPOF,,,?)
제네릭(Generic)은 자바에서 타입 안정성을 보장하기 위해 도입된 기능이다. 타입의 파라미터를 사용해 클래스, 인터페이스, 메서드 등을 파라미터 값으로 정의할 수 있게 해준다.제네릭을 사용하게 되면, 컴파일 시점에서 타입 안정성을 검증하기 때문에 런타임 오류를 방지
배열은 각 데이터와 인덱스를 1:1 대응하도록 구성되어 있으며, 데이터가 메모리 상에 연속적으로 저장된다. 인덱스를 이용해 데이터에 빠르게 접근할 수는 있지만, 데이터의 추가 및 삭제가 번거로운 편이다. 이유는 배열 생성 시, 미리 최대 길이를 정해서 생성해야 하며,