[객체 지향 프로그래밍 입문] 9. 정리
2077 단어 객체 지향 프로그래밍 입문객체 지향 프로그래밍 입문
출처: 최범균님의 객체 지향 프로그래밍 입문 강의
https://www.inflearn.com/course/%EA%B0%9D%EC%B2%B4-%EC%A7%80%ED%96%A5-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D-%EC%9E%85%EB%AC%B8/dashboard
- 소프트웨어의 가치는 변화
- 적은 비용으로 변화할 수 있는 방법 중 하나가 객체 지향
- 객체는 제공하는 기능으로 정의됨
- 예) 회원 객체 (암호 변경하기 기능)
public Member { public void changePassword(String curPw, String newPw) {...} }
- 예) 회원 객체 (암호 변경하기 기능)
- 메서드를 이용해서 기능 명세
- 이름, 파라미터, 결과로 구성
- 캡슐화: 내부 구현 감춤
- 이는 내부 구현 변경에 따른 외부 영향을 최소화
- 내부 규현 변경의 유연함
- 요구사항의 변화가 내부 구현을 변경 → 캡슐화된 기능을 사용하는 코드 영향 최소화
- 추상화: 여러 구현의 공통점을 상위 타입으로 도출
- 상속보단 조립
- 상속의 단점을 조립하는 방식으로 해소
- 기능과 책임 분리
- 네가지 분리 방법: 패턴 적용, 계산 기능 분리, 외부 연동 분리, 조건별 분기는 추상화
- 적절히 책임을 분리할수록 테스트 용이
- 의존과 DI
- DI로 의존 객체 접근
의존 객체 변경이 쉽고 테스트에서 대역 객체 사용 용이
- DI로 의존 객체 접근
다음 학습 추천
- 복습
- TDD(개발 속도, 좋은 설계 가능성 높여줌)
- 함수형 프로그래밍 기초(비용을 낮춰주는 다른 방법)
- 각 패러다임의 설계 패턴(지식/지혜 재사용)
- UML(도식화)
Author And Source
이 문제에 관하여([객체 지향 프로그래밍 입문] 9. 정리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@software/객체-지향-프로그래밍-입문-9.-정리저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)