1. 객체지향 프로그래밍(OOP)에 대해 설명해주세요. 알고있는 원칙이나 키워드를 언급해주세요
객체 지향 프로그래밍이란 프로그래밍에서 필요한 데이터를 추상화 시켜서 상태와 행위를 가진 객체로 만들고 그 객체들간의 상호작용을 통해 로직을 구성하는 방법이며 추상화, 캡슐화, 상속, 다형성의 특징을 가지고 있습니다.
객체 지향 프로그래밍은 클래스 단위로 모듈화시켜서 개발하기 때문에 업무 분담이 편리하고 대규모 소프트웨어 개발에 적합하며 유지 보수가 편리합니다. 또한 클래스를 재사용하거나 상속을 통해 확장함으로써 코드 재사용이 용이합니다.
객체의 수가 많아질 경우 용량이 커질 수 있고 처리속도가 상대적으로 느리다는 단점이 있습니다.
객체 지향적으로 설계하기 위해서 SOLID라 불리는 다섯 가지 원칙이 있습니다.
1. 단일책임 원칙 (SRP)
2. 개방-폐쇄 원칙 (OCP)
3. 리스코프 치환 원칙 (LSP)
4. 인터페이스 분리 원칙 (ISP)
5. 의존관계 역전 원칙 (DIP)
2. REST API란 무엇인가요? 프로젝트에 REST API를 사용한 이유가 무엇인가요? REST API 말고 다른 비교할만한 것을 알고 있나요?
REST란 HTTP URI를 통해 자원을 명시하고 HTTP Method를 통해 해당 자원에 대한 CRUD Operation을 적용하는 것을 말합니다. 이 REST를 기반으로 서비스 API를 구현한 것이 REST API라고 말할 수 있습니다.
이해하기 쉽고 사용하기 쉬운 REST API를 구현하여 API의 이해도와 호환성을 높여주기 위해 사용합니다.
'CS study' 카테고리의 다른 글
Answer the Question (4) (0) | 2023.07.24 |
---|---|
Answer the Question (3) (0) | 2023.07.21 |
Answer the Question (2) (0) | 2023.07.20 |
팩토리 패턴 (2) | 2023.04.10 |
싱글톤 패턴 (0) | 2023.04.08 |