애플리케이션 프로그래밍 코드를 작성할 때, 항상 내가 짠 코드가 객체지향스러운가에 대한 고민하는 습관을 가져야 한다.
높은 응집력, 낮은 결합도
클래스 레벨(Class level)은 객체 지향 프로그래밍에서 클래스의 범위와 관련된 개념이다. 클래스는 객체를 생성하기 위한 템플릿이며, 클래스 레벨은 클래스의 정적(static) 특성을 나타낸다. 클래스 레벨에서 정의된 요소는 클래스 전체에 적용되며, 모든 인스턴
변경이 필요한 일이 발생한다면, 모두 일일이 변경해주어야 한다. 이렇게 구현 클래스가 늘어나면 그만큼 코드 중복이 일어나고, 중복이 일어난만큼의 수정이 필요하므로 이러한 코드는 객체지향적이지 못하다.
새로운 API 버전을 도입하면 기존 버전과의 호환성을 유지하기 위해 URI가 변경될 수 있다.
체크 예외와 언체크 예외의 차이점을 알자.
@RestController 애너테이션을 사용하여 예외 처리를 공통화하는 이유는 ? 그리고 어떤 형식으로 예외 처리하는가 ?
Java Database ConnectivityJava에서 제공하는 표준 API (Oracle, mysql, H2 와 같은 라이브러리)Java 기반 애플리케이션🔅 특징JPA의 방대한 기능을 덜어낸 라이트한 기술DDD 설계 원칙을 따른다.🔅 사용 흐름Entity 클래
컴퓨터의 부팅 과정과 동일하게 생각해봅시다.컴퓨터의 부팅 과정은 아래와 같습니다.전원을 켜면 컴퓨터 전원이 잘 공급되는지를 확인합니다.중앙 처리 장치의 상태를 점검합니다.ROM에서 컴퓨터의 입출력 장치 및 램과 같은 주요 기본 장치들에 대한 정보를 읽어들여서 정상 동작
CreateBoardDto 클래스에 Lombok 라이브러리인 @Getter, @Setter 를 달아주었더니 그 클래스의 객체에 set + {실제필드값} 형태의 메서드를 통해 받은 파라미터와 실제 필드값을 매핑시켜주는 구조의 코드입니다.Lombok의 @Setter 애너테
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%EC%9E%85%EB%AC%B8-%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8 스프링을 배우는 이유 실무에서 제대로 동작하는
Aspect Object Programming, 즉 관점지향 프로그래밍을 의미하며 어떤 로직을 기준으로 핵심적인 관점, 부가적인 관점(횡단 관심사)으로 나누어 각각 모듈화하겠다는 프로그래밍 패러다임입니다.애플리케이션의 핵심기능을 담고 있지는 않지만, 애플리케이션을 구성
클래스 단위에 붙여주면 클래스 내부에 초기화되지 않은 final 필드나 @NotNull 이 붙은 필드의 생성자를 자동으로 생성해준다. (롬복에서 제공하는 어노테이션)@RequiredArgsConstructor 어노테이션을 적용함으로써 final이 붙은 모든 필드를 포함