전체 글 226

객체지향의 사실과 오해 - 2장 정리

본 글은 스터디 내에서 객체지향의 사실과 오해 - 역할, 책임, 협력 관점에서 본 객체지향을 읽고 정리한 글입니다. 1. 객체지향과 인지 능력 객체지향 패러다임은 인간이 인지 가능한 다양한 객체들이 모여 현실 세계를 이루는 것처럼 소프트웨어의 세계 역시 인간이 인지할 수 있는 다양한 소프트웨어 객체들이 모여 이뤄져 있다는 믿음에서 출발한다. 객체지향과 현실의 유사성은 여기까지이며, 객체지향 패러다임의 목적은 현실세계를 기반으로 새로운 세계를 창조하는 것이다. 2. 객체 그리고 이상한 나라 이상한 나라의 앨리스 이야기를 차용해서 객체의 특징을 서술하였다. 1. 앨리스는 상태를 가지며 상태는 변경 가능하다. 2. 앨리스의 상태를 변경시키는 것은 앨리스의 행동이다. 행동의 결과는 상태에 의존적이며 상태를 이용..

TIL 2022-02-22 / 스프링

[한 것] 객체지향의 사실과 오해 1장 읽고 정리하기 데브싱크 프로젝트 쪽지 전송 부분 TDD 작성하기 [배운 것] webmvctest를 이용한 TDD 작성법 @RunWith(SpringRunner.class) 테스트를 진행할 때 Junit에 내장된 실행자 외에 다른 실행자를 실행시킵니다. 여기서는 SpringRunner라는 스프링 실행자를 사용합니다 즉, 스프링부트 테스트와 Junit 사이에 연결자 역할을 합니다. @WebMvcTest 여러 스프링 어노테이션 중에서, Web(Srpign MVC)에 집중할 수 있는 어노테이션입니다. 선언할 경우 @Controller, @ControllerAdvice 등을 사용가능 여기서는 컨트롤러의 선언 때문에 사용합니다. @Autowired 스프링이 관리하는 (Bean..

etc/TIL 2022.02.22

객체지향의 사실과 오해 - 1장 정리

본 글은 스터디 내에서 객체지향의 사실과 오해 - 역할, 책임, 협력 관점에서 본 객체지향을 읽고 정리한 글입니다. 1. 협력하는 객체들의 공동체 우리는 객체지향에 처음 다가가면, 객체지향이란 실세계를 직접적이고 직관적으로 모델링할 수 있는 패러다임이라는 설명을 마주하게 된다. 하지만 실세계의 모방이라는 개념은 객체지향의 기반을 이루는 개념을 설명하는데 적합하지만, 실용적인 관점에서 분석, 설계를 설명하기에는 적합하지 않는다. 객체지향의 목표는 실세계를 모방하는 것이 아니라, 새로운 세계를 창조하는 것이다. 왜 많은 사람들이 실세계 객체와 소프트웨어 객체 간의 대응이라는 유산을 계속해서 재생산하는가? 그건 바로 객체를 상태와 행위를 캡슐화하는 소프트웨어 객체의 자율성을 설명하는데 효과적이기 때문이다. 즉..

[JPA] 연관관계 매핑 - @OneToMany @ManyToOne

https://jyami.tistory.com/21 https://dublin-java.tistory.com/51 https://ict-nroo.tistory.com/122 [JPA] 양방향 연관관계 양방향 연관관계와 연관관계의 주인 Team을 통해서도 getMemberList()로 특정 팀에 속한 멤버 리스트를 가져오고 싶다. 객체 설계는 위와 같이 Member에서는 Team을 가지고 있고, Team에서는 Members를 가지 ict-nroo.tistory.com JPA - One To Many 단방향의 문제점 주변에서 One To Many 단방향에 관해서 물어볼 때마다 저는 항상 이렇게 대답했습니다. 김영한 님의 인프런 강의에서 봤는데~ One To Many 단방향은 좋지 않다. 차라리 양방향을 해라..

백엔드/스프링 2022.02.22

AssertJ 필수 부분 정리

https://pjh3749.tistory.com/241 [AssertJ] JUnit과 같이 쓰기 좋은 AssertJ 필수 부분 정리 AssertJ가 core document를 새로운 github.io로 이전했네요 :) . 본 글은 AssertJ 공식 문서를 핵심 챕터를 선정하여 번역하며 정리한 글 입니다. http://joel-costigliola.github.io/assertj/assertj-core.html A.. pjh3749.tistory.com 출처: 위의 글을 보고 AssertJ의 필수 부분을 정리해보았습니다. Filtering assertions - iterables나 arrays에 적용되는 filtering List list = new ArrayList(); Human park = new..

백엔드/스프링 2022.02.20

[TIL] 2022-02-18 / JWT(Json Web Token)

[한 것] 데브싱크 프로젝트 Post 부분 TDD 작성 BANGU 프로젝트 JWT 적용 & 공부 [배운 것] https://ws-pace.tistory.com/87 spring boot REST API Web 프로젝트 (10) - Jwt AccessToken + RefreshToken으로 보안성과 사용자 편의성 고도화하 스프링 부트 REST API WEB 프로젝트 깃헙 링크 https://github.com/choiwoonsik/springboot_RestApi_App_Project/tree/main/restApiSpringBootApp 수행 목록 환경구성 및 helloworld 출력 H2 DB 연동 Swagger API.. ws-pace.tistory.com 출처: 위 글을 참고해서 JWT& 스프링 시..

etc/TIL 2022.02.19