개발자이야기

발상의 전환 - 객체지향

김푸른초푸른 2021. 2. 7. 21:45

0. 객체지향의 중요성

= 객체지향은 유지보수와 개발을 쉽게 해주기에 클라우드 시대에도 중요하다

 

1. 객체지향 발상의 전환

1) 객체지향의 정의와 목표인 유연한 소프트웨어가 중심

2) 점보다 선으로 접근하라

 

2. 기능 중심 개발 : 코드 품질 저하

- 기능중심 개발이 코드에 끼치는 영향

1) 코드 중복 

= 카피앤 페이스로 기존에 있던걸 쓰지만 문제가 발생하거나 버그가 발생하면 전부 바꿔야한다.

2) 코드 속성과 행동의 과도한 노출

-> 결합도를 낮출때 외부에 노출되지 않게 은닉해야 할 시 문제 발생

-> 따라서 의존성이 증가된다.

3)코드 배치의 일관성이 없다

-> 가독성 저하

4) 사이드 이펙트 발생

-> 유지보수의 지장이 생긴다

5) 코드 재사용이 어려움

3. 유연한 소프트웨어

= 고객이 원하는 기능의 정확한 구현 + 유연한 구성

 

[특징]

1) 코드 중복이 적다

2) 코드 속성과 메소드의 캡슐화가 잘 되어 있다.

3) 의존성 감소 가독성이 좋다

 

4. 관계의 의존성은 낮게 / 기능의 집중도는 높게

5. 객체지향의 목표

- 낮은 의존성과 높은 기능의 집중도를 지향 

- 소프트웨어 유연함을 극대화하는 개발 기법

 

6. 객체지향의 구현 대상은 현실세계

= 각 구성요소들을 어떻게 작동하는지 확인이 필요

: 합체로봇을 생각하면 이해하기 쉽다

 

7. 점보다 선으로 접근한다

= 객체 하나하나 보다 객체 간 협력관계로 접근해야한다. 

-> 로직보다 인터페이스에 더 집중

 

 

참고 : 객체지향 프로그래밍

객체지향의 사실과 오해 - 위키북스

'개발자이야기' 카테고리의 다른 글

기능 분산  (0) 2021.02.19
[프로그램이란]  (0) 2020.12.01
모르는 것을 인정하는 용기  (0) 2020.11.25
업무 룰  (0) 2020.11.24
sm과 si의 개발자의 차이  (0) 2020.07.08