프로그래밍 패러다임

jellyjoji·2023년 2월 28일
0

프론트엔드

목록 보기
3/3

프로그래밍 패러다임
프로그래밍하는 사고의 틀, 관점

  1. 절차지향
  2. 객체지향
  3. 함수형지향

객체지향

"손님" 중심.
1. 추상화 : 공통적인 속성이나 기능을 묶어서 이름을 붙이는 것
2. 캡슐화 : 데이터를 은닉하고 데이터 기능을 노출시키지 않음.한 객체에서 비슷한 역할을 하는 속성, 메서드를 캡슐처럼 한 곳(클래스)에 담는다.
3. 상속성 : 상위 부모 객체의 속성과 특징을 하위 객체가 물려 받는 것.(만약 어떠한 객체가 이미 존재하는 객체의 특성을 가지고 있다면, 기존 객체의 특성을 상속시켜 만들 수 있음.)
4. 다형성 : 같은 함수가 있어도 매개변수에 따라 각자 다른 일을 하는 것
클레스
객체의 속성과 행동을 코드로 적어둔 것.

class Notebook(색상, 해상도, 무게, 디스플레이) {
	this.색상 = 색상;
	this.해상도 = 해상도;
	this.무게 = 무게;
	this.디스플레이 = 디스플레이;
}

var galaxyBook = new Notebook('네이비', '2560x1600', '1.2kg', '15인치');
var macBook = new Notebook('스페이스그레이', '2560x1600', '1.8kg', '16인치');

상속
부모의 클래스를 '재사용'하여 새로운 클래스를 작성하는 기법

public ParentApp{
	void parentMethod() {}
}

public class ChildApp extends ParentApp {
	// 해당 클래스는 상속을 받은 클래스의 메서드도 사용할 수 있어요
    // 그렇기에 ParentApp을 확장한다는 의미로 `extends`라는 키워드를 기입해요
    // 'Child extends Parent', `자식은 부모를 확장한다`
	// 	void parentMethod() {}
    void method() {}
}

함수지향

프로그래밍하려는 문제를 함수들의 정의와 조합을 통해서 비교하고 해결하는 프로그래밍 방법입니다. 함수 "방식" 중심.

함수형 프로그래밍과 객체지향 프로그래밍의 차이
함수형 프로그래밍에서는 함수(Function) 자체가 일급 객체가 되지만, 객체지향 프로그래밍에서는 클래스(또는 객체, Object)가 일급 객체가 됨.

0개의 댓글