일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 정적팩토리메서드
- kotlin ::
- 스프링di
- 스프링시큐리티
- 토비의 스프링
- 스프링 포매터
- Spring
- Atomicity
- 기능적 요구사항
- 생성자주입
- 비기능적 요구사항
- jpa no session
- ioc컨테이너
- 그래프큐엘
- fetch join
- 스프링부트 도커
- 스프링 시큐리티 설정
- kotlin 리팩터링
- 수정자주입
- 소프트웨어의 품격
- 도커 이미지 빌드
- open-session-in-view
- 스프링
- IOC
- jpa lazy
- spring formatter
- java predicate
- 자바 필터
- 동적파라미터
- method refetence
Archives
- Today
- Total
공부기록
7월 30일 객체지향 공부 본문
반응형
로버트마틴
기계가 이해하는 코드는 누구나 작성할 수 있다.
하지만 사람이 이해할 수 있는 코드는 잘 훈련된 엔지니어만이 작성할 수 있다.
돌아가는 코드가 아닌 읽을 수 있는 코드를 작성하자.
Why OOP ?
Encapsulated!
데이터와 그 데이터를 조작하는 코드의 변경은
외부에 영향을 미치지않는다.
어떻게? 인터페이스를 통해.
프로시져를 실행하는 필요한 만큼만의 데이터를 가지게!
코드를 짤 때 어떻게 짜라?
나 말고 다른 사람이 내 코드를 유지보수한다
그 사람은 내 주소와 얼굴을 알고, 총을 갖고있다.
근데 그 사람은 미친사람이다!
아무리 변경안된다고 클라이언트가 말하더라도
변경되지않는 코드는 없다. OOP로 짜자
객체를 볼 때 데이터를 보지말고, 기능으로볼 것.
WriticleService 좋아!
ArticleService? 안좋아!
인터페이스의 이름?
무엇으로 정의하자 (RequestParser)
어떻게로 정의하지말고.(JsonRequestParser)
Don't Ask!
if(member.getExpiredDate().getTime() < System.currentTimeMills)
-> if(member.isExpired())
반응형
'Computer Science > OOP' 카테고리의 다른 글
'오브젝트: 코드로 이해하는 객체지향 설계' 의 인상깊은 글귀들 (0) | 2020.08.15 |
---|