한윤석 개발 블로그

배운 것을 적는 블로그입니다.

디자인 패턴의 아름다움 책 정리

등록일: 2023-04-09
수정일: 2023-04-09

객체지향 프로그래밍이란

객체지향 프로그래밍이란 코드를 구성하는 기본 단위를 객체로 사용하고, 코드 설계와 구현의 초석으로 캡슐화 추상화 상속 다형성 4가지 특성을 사용한다.

객체지향 언어란

객체지향 언어는 객체 문법을 지원하거나 객체지향 프로그래밍의 특성인 캡슐화, 추상화, 상속, 다형성을 쉽게 구현할 수 있다.

캡슐화

캡슐화는 객체에 접근할 수 있는 속성과 메서드를 제한하는 것을 말한다. 모든 속성에 접근하면 유연성이 올라가지만 그만큼 혼돈을 가져오게 된다. 왜냐하면 비즈니스 로직을 사용하는 입장에서 전부 아는 상태에서 사용해야 하고, 비즈니스 로직이 객체를 사용하는 곳에 위치하게 된다. 이것은 비즈니스 로직이 흩어지게 만들고 코드를 이해하기 어렵게 만든다.

추상화

추상화는 내부 구현을 숨기는 것을 의미한다. 그래서 메서드 기능에만 집중할 수 있다. 세부 구현을 숨겨서 복잡성을 다룰 수 있게 해준다.

상속

상속은 클래스 사이에 ‘is-a’관계를 나타내는 데 사용된다. 단일 상속과 다중 상속이 있다. 이러한 기능일 지원하는 언어가 있다. 코드의 재사용할 수 있게 해주거나 객체를 사용하기 쉽게 만들어준다.

참고


자바스크립트로 직접 만들면서 배우는 - 자료구조와 알고리즘 강의 바로 가기
기계인간 이종립, 소프트웨어 개발의 지혜 - Git 강의 바로 가기

코드숨에서 매주 스터디를 진행하고 있습니다. 메일을 등록하시면 새로운 스터디가 시작될 때 알려드릴게요!