본문 바로가기
728x90
반응형

영상 후기/Spring Boot11

영상 후기 - [10분 테코톡] 오찌, 야호의 DI와 IoC IoC란? - 제어의 역전 직접 객체를 생성하여 코드를 "제어" A 클래스에서 B를 필드로 가지고, 생성자 내부에서 직접 생성해 필드를 초기화하고 있다. 이러한 코드를 객체 생명주기를 직접 제어하는 코드라고 할수있다. 프로그램의 제어 흐름을 직접 제어하는 것이 아니라 외부에서 관리하는 것 - 역전 외부로부터 b인자를 받아서 초기화하고 있다. 이렇게 프로그램의 제어 흐름을 직접 제어하는 것이 아니라, 외부에서 관리하는 것을 제어를 역전시켰다고 말할 수 있다. IoC가 필요한 이유 객체 내부에서 재료의 종류를 제어해 변경에 자유롭지 못하던 코드가 외부에서 제어를 받으면서 변경이 자유로워진다. 객체지향 원칙을 잘 지키기 위해 - 역할과 관심을 분리해 응집도를 높이고 결합도를 낮추며, 이에 따라 변경에 유연한 .. 2023. 4. 27.
영상 후기 - [10분 테코톡] 🌕제이의 Spring AOP 1. AOP에 대하여 서비스에서 필요한 내용은 비즈니스 로직이라고 불리는 핵심 기능만 수행할 수 있으면 된다. 그 외에 시간을 재거나 권한을 체크하거나 트랜잭션을 거는 것은 모두 일종의 인프라 로직이다. 인프라 로직 부가기능이기 때문에 애플리케이션의 전 영역에서 나타날 수 있음. 중복코드를 만들어낼 가능성 때문에 유지보수가 힘들어짐(ex) 1억개의 메서드에 스탑워치 기능 추가하는 것)) 비즈니스 로직과 함께 있으면 비즈니스 로직을 이해하기 어려워짐. 로깅, 트랜잭션, 권한 검사, 성능 측정 AOP(Aspect-Oriented Programming) 용어 Tartget 어떤 대상에 부가 기능을 부여할 것인가 Advice 어떤 부가 기능? Before, AfterReturning, AfterThrowing,.. 2023. 4. 6.
영상 후기 - [10분 테코톡] ⏰ 아마찌의 ORM vs SQL Mapper vs JDBC Persistence 데이터를 생성한 프로그램이 종료되더라도 사라지지 않는 데이터의 특성(영속성) 객체의 상태를 데이터 베이스에 저장 즉, 객체에게 영속성을 부여 Persistence Layer를 구현하는 방법 JDBC만을 이용하는 방법 Persistence Framework를 이용하는 방법 JDBC만을 이용해 영속 계층을 구현 JDBC 자바에서 데이터베이스에 접속할 수 있도록 하는 자바 API 자바 애플리케이션에서 DBMS에 종속적이지 않고, 하나의 JDBC API를 이용해 DB 작업을 처리 각각의 DBMS는 이를 구현한 JDBC 드라이버를 제공 JDBC 단점 간단한 SQL을 실행하는 데도 중복된 코드를 반복적으로 사용 DB에 따라 일관성 없는 정보를 가진 채로 SQLException를 처리해야 한다... 2023. 4. 1.
영상 후기 - [10분 테코톡] 수달의 JPA N+1 문제 JPA에서 N+1 문제란? 요청이 1개의 쿼리로 처리 되길 기대했는데 N개의 추가 쿼리가 발생하는 현상 너무 많은 N+1 발생한다 JPA에서 다양한 연관관계를 지원해주고 있기 때문에(@OneToone, @ManyToOne 등등...) 지연(Lazy)로딩이란? 지연로딩은 엔티티를 조회할 시 사용할때까지 데이터 로딩을 미루는 현상 JPQL(Java Persistence Query Language) 이란? JPA는 엔티티르 중점으로 개발해주기 때문에 쿼리를 작성할 때도 엔티티를 대상으로 작성할 수 있게끔 JPQL이라는 기능을 지원 JPQL로 크루_Repository.findAll() 요청을 select * from crew 쿼리문으로 바꿔 데이터를 가져온다. 그리고 추가적으로 각 crew원의 할일 목록들을 가.. 2023. 3. 31.
728x90
반응형