코멘토 5

코멘토 실무PT 후기 챌린지 4주차 - UnitTest

1. 테스트 1) 테스트의 종류 - 단위 테스트 : 소스 코드의 특정 모듈이 의도한대로 정확히 작동하는지 검증하는 절차 - 통합 테스트 : 서로 다른 모듈/클래스 간 상호작용을 테스트 - 기능 테스트 : 실 사용자관점에서 기능이 정상적으로 작동하는지 테스트 2) 단위테스트 - give/when/then 방식 Given : 테스트에서 구체화하고자 하는 행동을 시작하기 전에 테스트 상태를 설명하는 부분 ex) 테스트에 사용하는 변수, 입력 값을 정의하거나, 객체를 정의하는 구분 When : 구체화하고자 하는 그 행동 ex) 테스트를 실행하는 과정 Then : 어떤 특정한 행동 때문에 발생할거라고 예상되는 변화에 대한 설명 ex) 테스트를 검증하는 과정 3) 단위테스트 라이브러리 - JUnit5 : Java ..

코멘토 실무PT 후기 챌린지 3주차 - ORM/JPA와 트랜잭션

1. ORM(Object Relational Mapping) 1) ORM이란 - ORM(Object Relational Mapping), 객체 관계 맵핑 - 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑해주는 준다. - 객체 지향 프로그래밍은 클래스를 사용하고 관계형 데이터베이스는 테이블을 사용하므로 모델간 불일치가 존재한다. ORM을 통해 객체간의 관계를 바탕으로 SQL을 자동으로 생성하여 불일치를 해결함. 2) 장점 - 코드에 가독성을 높이고 직관적으로 비즈니스 로직에 집중하게 한다. - 객체지향적인 접근이 가능하다 - 재사용 및 유지보수의 편리성이 증가된다. - DBMS에 대한 종속성이 줄어든다. - 객체 간의 관계를 바탕으로 SQL을 자동으로 생성하여 RDBMS의 데이터 구조와 jAVA의 객..

코멘토 실무PT 후기 챌린지 1주차 - 스프링 프레임워크

스프링 프레임워크를 사용하면서 궁금했던 점 알아보기. 1) 스프링 프레임워크와 스프링 부트의 차이점은? - Dependency 설정 스프링 프레임워크는 build.gradle을 통하여 Dependency를 추가해주면 자동으로 추가하고 관리 할 수 있음. 또한, 기본 라이브러리를 통하여 쉽게 Test가 가능하다. - Configuration appication.properties와 application.yml을 통하여 외부 모듈 및 db 연동이 쉬움 - 배포 Tomcat 같은 내장 WAS를 가지고 있어 jar파일로 간편하게 배포가 가능하다. 2) 웹 호출이 스프링 프레임워크의 COntroller까지 어떻게 전달? 1) 정적컨텐츠 파일명 URL 방식으로 웹 HTML형식으로 전달한다. 내장 톰캣서버 -> 스프..

코멘토 실무PT 후기 챌린지 1주차 - 스프링 프레임워크(AOP)

AOP란, Aspect Oriented Programming으로 관점지향 프로그래밍, 어떤 로직을 기준으로 핵심적인 관점과 부가적인 관점으로 나누어서 모듈화.EX) 모든 메소드의 호출 시간을 측정하고 싶다. - 부가적인 관점 - AOP 적용 전문제 1) 핵심 비지니스 로직과 부가적인 로직이 섞여있음. - 유지 보수 어려움.문제 2) 모든 메소드(회원조회, 회원가입 등)에 이러한 로직을 만들어야 됌 이러한 문제점을 AOP를 통하여 해결할 수 있음.- TImeTraceAop라는 공통 로직을 생성하여 원하는 곳에 적용가능- 핵심 관심 사항 변경없으므로 기존 로직 변경 없음. - AOP 적용 후AOP 기능 - Aspect : 모듈화 - Target : Aspect 적용 - Advice : 실질적으로 어떤 일을 ..

코멘토 실무PT 후기 챌린지 1주차 - 스프링 프레임워크(DI와 IoC)

(1) 스프링 프레임워크 개념 1) DI 만약 JdbcUserRepository를 다른 객체로 받고 싶다면 기존 코드를 지우고 새로운 객체를 생성하여 주입받아야함으로 클라이언트를 변경해야하는 OCP를 위반하고 있음. 이를 보완하기위해서, 인터페이스를 통하여 연관관계 구조를 인터페이스 형태를 통하여 주입받는 구조로 재구성.인터페이스를 통하여 객체를 주입을 받아도 - Controller에서 Repository와 Service를 생성하여 의존성을 주입하면서 개발자가 직접 관여하고있는 문제점이 발생하고 아직도 클라이언트를 변경해야하는 구조적인 문제가 발생함.이를 IoC 컨테이너를 통하여 프레임워크를 통하여 제어를 역전하도록 변경하려고 한다. 2) IoCIoC란, 제어의 역전이라고 하며 메소드나 객체의 호출작업을..

반응형