**Autonomous driving tech./*C++

[C++] 03.04 review

2wnswoo 2025. 3. 4. 08:42
  • 하나의 클래스가 다양한 역할을 수행하게 되는 거대 클래스는 개발자가 지양해야 함
  • void function(){cout <<"문장출력확인!"<<endl;} , 함수 선언할 때 void 빼먹지 말자
  • 자식 클래스의 객체를 부모 클래스의 타입으로 변환하는 것을 업캐스팅이라고 함
  • ::는 범위 연산자, 범위 지정자
SOLID 원칙, 객체지향 설계의 다섯 가지 원칙

1. 단일 책임 원칙, SRP : 클래스는 한 가지 기능만 수행해야하고, 한 가지 이유로만 변경해야 한다.

2. 개방-폐쇄 원칙, OCP : 클래스는 확장에는 열려 있으나, 수정에는 닫혀 있어야 한다.

3. 리스코프 치환 원칙, LSP : 자식 클래스는 언제나 부모 클래스를 완전히 대체할 수 있어야 한다.

4. 인터페이스 분리 원칙, ISP : 클라이언트는 사용하지 않은 인터페이스에 의존해서는 안 된다.

5. 의존 역전 원칙, DIP : 고수준 모듈은 저수준 모듈에 의존하지 않고, 둘 다 추상화에 의존해야 한다.

 

>> 위의 설계 원칙을 고민하고 만든 소프트웨어는 유지, 보수 면에서 큰 차이가 있음

 

  • 템플릿, template : 템플릿은 쉽게 말해서 '틀' 이라고 할 수 있다.
    • 이 틀을 가지고 함수를 만들면 > 함수 템플릿
    • 클래스를 만들면 > 클래스 템플릿

 

 

'**Autonomous driving tech. > *C++' 카테고리의 다른 글

[C++] 03.03 review  (0) 2025.03.03
[C++] 03.02 review  (0) 2025.03.02
[C++] 02.28 review  (0) 2025.02.28
[C++] 02.27 review  (0) 2025.02.27
[C++] Review 02.26  (0) 2025.02.26