전체 글 (84) 썸네일형 리스트형 스프링 입문 복습(2회차) start.spring.io에서 프로젝트 생성 Spring web tomcat ( 톰캣 서버 포함) 스프링 웹 mvc thymeleaf : 템플릿 엔진 starter spring-core -logging(slf4j, logback) test mockito 테스트 도와주는 것 junit 테스트 프레임 워크 assertj 테스트 코드를 더 편하게 작성하게 도와주는 라이브러리 spring-test: 통합 테스트 작성 항상 spring.io → spring boot feature 을 참조하기 컨트롤러( 웹 애플리케이션의 최초 진입점) 배포: 이제는 jar 파일하나만 실행시키면 됨 mvc에서 view를 사용하는 방법 정적 컨텐츠, 템플릿 엔진, API 정적 컨텐츠 : 고정적인 html 파일을 사용 템플릿 엔진: .. 객체지향의 사실과 오해 - Chapter 7 함께 모으기 코드와 모델을 밀접하게 연관시키자 마틴 파울러의 객체지향 설계 안에 존재하는 세 가지 상호 연관된 관점 개념 관점 도메인 안에 존재하는 개념과 개념들 사이의 관계 도메인에 존재하는 문제를 해결하기 위해 개발됨 도메인의 규칙과 제약을 최대한 유사하게 반영 명세 관점 소프트웨어로 초점이 옮겨짐 객체들의 책임에 초점을 맞추게 됨(객체의 인터페이스를 바라봄) 구현 관점 객체들이 책임을 수행하는 데 필요한 동작하는 코드를 작성(how) 개념 관점, 명세 관점, 구현 관점은 동일한 클래스를 세 가지 다른 방향에서 바라보는 것. 클래스는 세 가지 관점을 모두 수용할 수 있도록 개념, 인터페이스, 구현을 함께 드러내야 한다. 목표 도메인 모델에서 시작해서 최종 코드까지의 구현 과정을 간략하게 설명 구현 클래스를 개념 .. 객체지향의 사실과 오해 - Chapter 6 객체 지도 지도는 실세계의 지형을 기반으로 만들어진 추상화된 모델 다양한 목적을 위해 재사용될 수 있음 어떤 목적으로 지도를 사용할지 알지 못한다. 길을 갈 때 → 어떻게 어떻게 가세요 ( 기능) 지도를 보고 감 → (구조와 같음) 소프트웨어 설계에 있어서도 기능보다는 구조를 중시하자 소프트웨어의 특징 → 요구사항은 항상 변한다 → 구조를 잘 잡으면 요구사항(기능)이 변해도 쉽게 풀어나갈 수 있음 구조를 기반으로 모델을 구축하는 편이 좀 더 범용적이고 이해하기 쉬우며 변경에 안정적이다. 안정적인 구조를 따라 역할, 책임, 협력을 구성하라. 전통적인 기능 분해는 자주 변경되는 기능을 중심으로 설계한 후 구조가 기능에 따르게 한다. 객체지향 접근방법은 자주 변경되지 않는 안정적인 객체 구조를 바탕으로 시스템 기능을 객.. 이전 1 ··· 22 23 24 25 26 27 28 다음