JAVA/OOP

7월 30일 객체지향 공부

gracelove91 2019. 7. 30. 18:24

로버트마틴

기계가 이해하는 코드는 누구나 작성할 수 있다.

하지만 사람이 이해할 수 있는 코드는 잘 훈련된 엔지니어만이 작성할 수 있다.

돌아가는 코드가 아닌 읽을 수 있는 코드를 작성하자.

 

Why OOP ?

Encapsulated!

데이터와 그 데이터를 조작하는 코드의 변경은

외부에 영향을 미치지않는다.

어떻게? 인터페이스를 통해.

프로시져를 실행하는 필요한 만큼만의 데이터를 가지게!

 

 

코드를 짤 때 어떻게 짜라?

나 말고 다른 사람이 내 코드를 유지보수한다

그 사람은 내 주소와 얼굴을 알고, 총을 갖고있다.

근데 그 사람은 미친사람이다!

 

 

아무리 변경안된다고 클라이언트가 말하더라도

변경되지않는 코드는 없다. OOP로 짜자

 

객체를 볼 때 데이터를 보지말고, 기능으로볼 것.

WriticleService 좋아!

ArticleService? 안좋아!

 

인터페이스의 이름?

무엇으로 정의하자 (RequestParser)

어떻게로 정의하지말고.(JsonRequestParser)

 

Don't Ask!

if(member.getExpiredDate().getTime() < System.currentTimeMills)

-> if(member.isExpired())