이노베이션 캠프 W3

KIM YOUJEONG·2022년 7월 31일
1

이노베이션 캠프

목록 보기
3/6

[Chapter 3-1] 주특기 입문 (W3)


3주차는 Spring 입문으로 진행됐다

🗝️ DI?

Dependency Injection, 의존성 주입 @Autowired
직접적으로 의존하는 관계가 아닌
외부에서 만들어 따로 넣는 방식!

의존도, 결합도가 낮아지고 변화에 둔감해진다
→ 수정할 거리가 줄어듦

의존관계?
A가 B를 의존한다 → B가 변하면 A에 영향을 미친다


🗝️ IoC?

Inverse of Control, 제어 반전
개발자가 제어하는게 아니라 외부에서 제어함
...내가 개발했는데도?
그게 아니고 생성부터 관리를 알아서 해준다고~
IoC를 적용하면 미리 만들어놓은 객체를 주입해서 사용하기만 하면 된다.


🗝️ Bean?

Spring이 관리하는 JAVA 객체 @Conponent
우리는 IoC에 의해 직접 객체를 생성해서 사용하지 않고,
알아서 생성/관리해주는 객체를 사용한다. 그게 바로 Bean!

우리가 만들어놓은 객체를 주입하기 위해서
Bean 등록을 해야하는데
보통 @Component 어노테이션을 이용한다
더 익숙한 형태로는 @Service, @Controller, @Repository


Spring으로 간단한 사이트 만들기

🔗GitHub

🙏 요구사항

⬜️ 아래의 요구사항을 기반으로 Use Case 그려보기

✅ 전체 게시글 목록 조회 API

  • 제목, 작성자명, 작성 날짜를 조회하기
  • 작성 날짜 기준으로 내림차순 정렬하기

✅ 게시글 작성 API

  • 제목, 작성자명, 비밀번호, 작성 내용을 입력하기

✅ 게시글 조회 API

  • 제목, 작성자명, 작성 날짜, 작성 내용을 조회하기
    (검색 기능이 아닙니다. 간단한 게시글 조회만 구현해주세요.)

✅ 게시글 비밀번호 확인 API

  • 비밀번호를 입력 받아 해당 게시글의 비밀번호와 일치여부 판단하기

✅ 게시글 수정 API

  • 제목, 작성자명, 비밀번호, 작성 내용을 수정되게 하기

✅ 게시글 삭제 API

  • 글이 삭제되게 하기

👀 회고

✏️ Use Case 그리기엔 너무... 너무 뭐가 없었다.
차라리 뭐가 많았으면 바로바로 그릴텐데
뭐가..없는데 뭘 어떻게..그려야하지?
그래서 계속 고민하다가 결국 못그렸다.

✏️ 과제는 사실상 복붙 후 다듬기만 하고 끝이라 시간이 남아돌았다.
그래서 HTML도 만들었는데
JavaScript를 더 많이 쓰게 됐다
그래서 과제 제출한 후에 수정을 조금 했다
너무 공들이면 안 되는데
아무래도 익숙한데다 마음이 편해서...
그리고 ARC로 확인하는 것보다 편하고? 해서?
암튼... 그렇게 됐다.

profile
공부합니다📚

0개의 댓글