본문 바로가기

Development/JavaScript

객체 (Object), 클래스 (Class), 인터페이스 (Interface)

객체

소프트웨어 세계에 구현할 대상

클래스에 선언된 모양 그대로 생성된 실체

 

 

클래스

객체를 만들어 내기 위한 설계도 혹은 틀

연관되어 있는 메소드와 변수의 집

 

 

 

인터페이스

일반적으로 타입 체크를 위해 사용되며 변수, 함수, 클래스에 사용할 수 있다.

인터페이스는 구현되지 않은 메서드만을 포함하며, 이를 구현하는 클래스는 인터페이스의 모든 메서드를 구현해야 한다.

 

이것은 일종의 계약에 빗대어 포현할 수 있다.

특정 인터페이스를 구현하는 클래스는 반드시 인터페이스에서 정의한 메서드를 모두 구현해야 한다.

따라서 여러 클래스에서 동일한 인터페이스를 구현하여 동일한 기능을 수행하도록 보장할 수 있다.

인터페이스는 상속을 통해 사용되며, 클래스가 여러 인터페이스를 구현할 수 있다.

 

인터페이스를 사용하면 다형성을 구현할 수 있으며, 코드의 유연성과 확장성을 높일 수 있다.

또한 구현체 간의 결합도를 낮출 수 있어 유지보수성을 향상시킬 수 있다.

 

인터페이스 정리