본문 바로가기
대외활동/GDSC

2주차 정리내용

by 동욷 2023. 4. 9.

1. 컨트롤러, 서비스, 리포지토리의 역할

컨트롤러 (Controller)
- HTTP 요청을 받아 처리하는 역할
- 요청에 대한 처리 결과를 HTTP 응답으로 반환하는 역할
- 클라이언트와 서버 간의 인터페이스 역할을 수행

서비스 (Service)
- 비즈니스 로직을 처리하는 역할
- 트랜잭션 관리를 위한 역할
- 여러 개의 리포지토리를 조합하여 하나의 기능을 수행하는 경우가 많다.

리포지토리 (Repository)
- 데이터베이스와의 인터페이스 역할을 수행
- 데이터베이스에 대한 CRUD(Create, Read, Update, Delete) 작업을 처리하는 역할
- JPA를 사용하는 경우, 엔티티 객체를 데이터베이스에 저장하고 조회하는 기능을 제공

컨트롤러, 서비스, 리포지토리는 각각의 역할에 따라 적절한 분리가 필요하며, 이를 통해 유지보수성과 확장성을 높일 수 있다.

2. TDD를 하는 이유

TDD(Test Driven Development)는 테스트 기반 개발이라는 의미로, 테스트 케이스를 먼저 작성하고 그것을 통과하는 코드를 만드는 개발 방법론이다.

장점
1. 높은 품질의 코드를 작성할 수 있다. 
테스트 케이스를 먼저 작성하고 그것을 통과하는 코드를 만드는 것이기 때문에, 높은 품질의 코드를 만들 수 있다.

2. 개발 시간을 단축시킬 수 있다. 
개발자가 빠르게 테스트를 실행할 수 있으므로 디버깅 시간이 줄어들고 빠르게 코드를 수정할 수 있다.

3. 코드 유지보수가 쉬워진다. 
TDD를 통해 만들어진 코드는 테스트 케이스를 통해 검증되었으므로 유지보수가 쉬워진다. 
새로운 기능을 추가할 때도, 해당 기능에 대한 테스트 케이스를 작성하고 그것을 통과하는 코드를 만들어 나갈 수 있다.

728x90

'대외활동 > GDSC' 카테고리의 다른 글

3주차 정리 내용  (0) 2023.04.09
1주차 정리 내용  (0) 2023.03.26