composition이라는 강력한 기능에 대해 알아보고 실제로 코드에 어떻게 적용 할 수 있는지에 대해 알아보자. 만약, 타입스크립트와 OOP의 개념에 익숙치 않고 자세히 알고 싶다면 이전 글을 참고하자. Composition? composition이란 클래스 상속을 하지 않고 여러개의 클래스간에 관계를 맺는 방식을 의미한다. 근데 상속이라는 좋은 방법이 있는데 굳이 composition을 이용해야 하는 이유가 있을까? 우선, 아래 사진처럼 상속은 interface를 implements하는 것 처럼 여러개를 할 수가 없다. 상속을 이용하게 되면 결국 클래스 그 자체로 서로 의사소통을 해야 한다. 이렇게 되면 클래스간의 관계가 매우 견고해져 재사용성이 매우 떨어지게 된다. 그렇기 때문에 Compositio..
interface
그 유명한 OOP(Object-Oriented Programming)!!! 어떠한 원칙들이 있는지, 그리고 이 원칙들을 코드에 어떻게 녹여 낼 수 있는지 알아보자. 우리는 여기서 헬스장을 OOP를 이용하여 만들어 볼 예정이다. 먼저, OOP없이 헬스장을 코딩했을 때와 OOP의 중요 4원칙을 적용했을 때 해당 코드가 어떻게 변하게 되는지 알아보자! OOP 없이 함수 만들어 보기 TypeScript를 이용하여 운동을 하는 함수를 만들어보자. 운동을 하면 근육량과 피로도가 증가하게 된다. type Muscle = { muscles: number; fatigability: number; }; let muscles = 0; let fatigability = 50; let deltaPerHour = 10; func..