본문 바로가기

분류 전체보기52

[ 개념 ] 스프링(spring) AOP란 어노테이션 어드바이스 AOP란 AOP는 Aspect Oriented Programming의 약자로 관점 지향 프로그래밍이라고 부릅니다. 관점 지향은 로깅, 보안 또는 트랜잭션 로직을 기준으로 핵심적인 관점, 부가적인 관점으로 나누어서 보고 그 관점을 기준으로 모듈화 하겠다는 것입니다. 여기서 모듈화는 어떤 공통된 로직이나 기능을 하나의 단위로 묶는 것을 말하며 예시는 다음과 같습니다. 핵심적인 관점은 비즈니스 로직이 될 수 있고, 부가적인 관점은 핵심 로직을 실행하기 위해 행해지는 데이터베이스 연결, 로깅, 파일 입출력 등이 될 수 있습니다. AOP를 사용하면 코드를 전체 코드베이스에 분산시킬 필요 없이 명확하고 간결한 방식으로 특정 정책을 시행하는 코드를 작성할 수 있습니다. 코드 중복을 줄이고 코드 유지 관리성을 높일 수.. 2023. 2. 10.
[ 개념 ] 스프링 IOC 컨테이너란? DI 사용이유 작동방식 스프링의 IOC(제어의 역전), DI(의존성주입)에 대해서 알아봅니다. IOC는 프로그램의 흐름을 개발자가 직접 관리하는 게 아니라 외부에서 관리하는 것을 말합니다. DI는 객체를 직접 생성하는 게 아니라 외부에서 생성 후 주입시켜 주는 것을 말합니다. IOC컨테이너는 IOC를 생성하고 의존성을 관리합니다. IOC 컨테이너 Spring IoC 컨테이너는 IoC(Inversion of Control) 및 DI(Dependency Injection) 기능을 제공하는 Spring 프레임워크의 구성 요소입니다. 객체를 인스턴스화, 구성 및 조립하고 종속성을 관리하는 역할을 합니다. Spring IoC 컨테이너는 구성 메타데이터를 사용하여 생성하는 객체의 수명 주기를 관리하고 해당 종속성을 관리합니다. 이 구성 .. 2023. 2. 10.
[ 개념 ] 스프링(spring)이란 무엇인가 사용이유 스프링 개념, 등장배경, 장점, 단점에 대해서 알아보겠습니다. 이러한 사항을 미리 숙지하고 스프링 시작한다면 스프링에 대한 높은 이해도와 흥미가 생길 것입니다. 스프링이란 스프링(Spring)은 Java 애플리케이션 개발을 위한 오픈 소스 프레임워크입니다. 애플리케이션 구축을 위한 포괄적인 인프라를 제공하고 설계에서 배포에 이르는 전체 개발 수명 주기 동안 개발자를 지원합니다. 애플리케이션 구축을 위한 일관된 프로그래밍 모델을 제공하고 모듈성을 촉진하여 개발자가 느슨하게 결합된 애플리케이션을 구축할 수 있도록 합니다. 또한 데이터 액세스, 보안, 트랜잭션 관리 등의 기능을 제공합니다. 등장배경 왜 등장했을까? Spring은 2003년 Rod Johnson이 처음 개발했으며 Apache 2.0 라이선스로 .. 2023. 2. 9.
[ 코틀린 ] 상속 클래스 추상 클래스 코틀린 상속 클래스(Inheritance Class)와 추상 클래스(Abstract Class)에 대한 설명입니다. 상속 클래스는 부모클래스가 자식클래스에게 무언가를 물려주는 것입니다. 추상 클래스는 대략적인 설계의 명세와 공통의 기능을 구현한 클래스입니다. 상속 클래스 Kotlin은 상속을 지원하므로 기존 클래스(슈퍼클래스)의 하위 클래스인 새 클래스를 만들 수 있습니다. 하위 클래스는 상위 클래스의 속성과 메서드를 상속하며 새 속성과 메서드를 추가하거나 상위 클래스에서 상속된 항목을 재정의할 수도 있습니다. 상속 클래스(Inheritance Class)에는 몇 가지 주요 기능이 있습니다. 상속클래스의 장점입니다. 코드 재사용성: 상속을 통해 하위 클래스는 상위 클래스에서 속성과 메서드를 상속받을 수 .. 2023. 2. 6.