격언 기억
"뭔가 잘못했겠지"
Domain -> 전문 지식 / 나의 생각.
사용자 스토리 -> 사용자 입장에서 기능을 서술
고객 -> 가게 목록을 볼 수 있고, 가게의 메뉴를 볼 수 있음.
좋은 가게인지 평점을 확인 할 수 있음.
가게 목록을 분류에 따라 볼 수 있음.
즐겨찾기 추가가능.
인원 예약 가능
가게 -> 예약 확인 가능
예약 요청에 응답가능
관리자 -> 고객이 서비스 쓸 수 있도록 가게 정보 등록가능
기타등등..
도메인 모델링 ->
Restaurant
Menu Item (Food & Beverage)
User
Favoite - 즐겨 찾기
Review
Reservation
시스템 아키텍처 ->
프로그램은 소프트 웨어 해당
프로그램을 구동할 하드웨어도 포함해야 됨.
프로그램 하드웨어 인프라 종합 -> 시스템
시스템을 어떻게 다룰 것인가 시스템 아키텍쳐
홈페이지를 통해 제공할 것이므로 web 사용
모바일 환경에서도 쓰길 원함. Mobile Application
-> 기능은 공통
Front -end 다른 부분
Back - end 공통인 부분
Multi -tier Architecture
여러개의 계층으로 나눠서 시스템 구성
가장 흔한것은 3 -tier
-Presentation (사용자와 소통하는 부분) => front -end / HTML,CSS,JS
-Business (사용자와 소통한 결과 , 요청을 처리) back- end / REST API
-Data Source (처리한 것들이 저장되는 곳) data base / DBMS
Business는 또다시 Layered Architecture로 구분
-UI Layer
-Application Layer
-Domain Layer
-Infrastructure Layer
위의 Layer는 밑의 Layer를 사용 밑은 위를 사용 x
Spring Initializr -> intelliJ에서 지원
TDD -> 테스트(목표) 주도 개발
-목표를 달성했는지 아닌지 알 수 있음.
Test를 먼저 작성.
TDD cycle
Red
-> 실패
Green
-> 로직 완성
Refactoring -> 작동하는 코드를 로직은 그대로 가고 코드만 깔끔하게
다양한 환경 -> 서로 다른 Front end
REST API
-리소스(자원)을 처리하는 방식
CRUD로 구성.
Http 표준으로 주어진 4가지 method와 연결
POST GET PUT/PATCH DELET
URI / URL 을 사용해서 리소스 지정
리소스
-Collection
.Read(List)
.Create
-Member
.Read(Detail)
.Update
.Delete
레스토랑 collection
http://host/restaurants
레스토랑 Member
http://host/restaurants/{id}
JSON
-자바 스크립트에서 Object표현 할때 쓰는 방식
{
"id" : 2019,
"name" : "식당",
"address": "골목"
}
[
{
"id" : 2019,
"name" : "식당",
"address": "골목"
},
{
"id" : 2019,
"name" : "식당",
"address": "골목"
}
]
'Spring' 카테고리의 다른 글
eclipse 스프링 플러그인 설치 (0) | 2019.12.17 |
---|---|
프레임 워크 개념 (0) | 2019.12.17 |
orderInfo 구현 (0) | 2019.11.18 |
페이징 처리 (0) | 2019.11.18 |
Controller 추상화 (0) | 2019.11.17 |