객체지향에서도 오로지 C++에만 있는 고유의 특징.
다중상속, 템플릿, 연산자오버로딩, ...
C++ 이후에 탄생한 OOP 파스칼이나 자바 등등의 랭귀지 스펙에서
이런걸 일찌감치 제외시켜버린 데에는 다 그만한 이유가 있습니다.
언어 설계한 전문가들이 다 이유가 있어서 일부러 제외시킨거라고요.
(언어 스펙에 포함된 모든 개념들을 어떻게든 자기 플젝에 다 적용해서
써먹어보려는 헛똑똑이 병신들은 제발 반성 좀 합시다)
쉽게 말해 니 혼자 잘났다고, 헷갈리기 쉬운 개념들 입맛대로 써먹을
대가리 된다고 해서 소스코드 설계에 막무가내로 적용하지 말라는겁니다.
회사는 혼자 일하는 곳이 아니고 회사에서 하는 프로젝트도
시간 넉넉한 상태에서 혼자 연습용으로 하는게 아니니까요.
C++ 고유의 OOP 특징은 학생이나 연구원 신분으로 공부할 때에는
그럭저럭 호기심을 자극하면서 어려운 듯 하면서도 곧 이해되고
차후에 유익하게 써먹을만한 획기적인 개념이라 생각하기 쉽습니다.
하지만 관련업계로 취업을 하게 되면 그런 여유로운 상황이 아닙니다.
남들이 작성해 놓은 수만~수십만 줄의 C++ 소스코드를 제한된 일정 내에
유지보수 해야하며 C++로 신규 개발을 해야할 수도 있습니다.
2~3개월에 걸쳐 개발했다가 손을 놓은 후 다른 사람에게 맡겨지기도 하고
그걸 다시 1년 후에 유지보수 해야 할 수도 있습니다. 뜻대로 될까요?
퇴근 시간은 늦어지고 남들 쉬는 주말에도 못쉴껍니다.
결국엔 못버티고 기존 플젝의 유지보수 포기를 선언하고
첨부터 다시 새로 만들겠다고 말했다가 욕 쳐먹고 쫓겨날 수도 있습니다.
연산자오버로딩 다중상속은 최대실수 맞는듯 ㄹㅇ
파이썬도 연산자 오버로딩됨
파이썬같은 언어가 연산자 오버로딩되면 개씹헬인데
파이썬은 근본없는 언어로 이제 유행 끝날 때가 됐습니다.