AndreaSmalltalkLecture:QnA 09

From 흡혈양파의 인터넷工房
Jump to: navigation, search
질문과 답변-9
:C/C++의 차이는...

C/C++의 차이는...

그냥 C 와 C++ 과 의 차이점이 뭔지좀 알고싶습니다..

질문이 너무 포괄적입니다. 길거리에서 "우리말과 일본말은 어떤 차이가 있느냐"고 물어보면 사람들이 뭐라고 대답할까요? 마찬가지로 C와 C++의 차이도 똑같습니다. 한 마디로 뭐라고 이야기하기는 어렵습니다. 다만 C언어의 문법을 빌어서 객체지향 패러다임을 구현하기 위해서 만들어진 언어가 C++입니다. 언뜻 보면 C와 닮아 보이지만, C는 명령형 언어이고 C++는 객체지향적 언어이기 때문에 기본 개념이 완전히 다릅니다. 어떤 분은 C++를 잘 하려면 C를 알아야한다고 하시는데, 절대로 그렇지 않습니다. C++를 잘 하려면 객체지향 패러다임을 잘 알아야 합니다. 오히려 어줍잖은 C언어의 지식은 C++를 배우기 어렵게 만들 뿐입니다.


좀 자세히 말씀해주시면 더 감사하구요..

아쉽지만 그렇게 자세히 설명을 해 드릴 수가 없습니다. 왜냐하면...


아님 이런 자료있는곳이라도 알려주시면...

날 잡아서 교보문고나 종로서적 등 대형 서점에 가셔서 C++의 기초를 설명해 놓은 책 한 권을 잡고, 땅바닥에 퍼질르고 앉아서 세 시간만 읽어보면 어느 정도 감을 잡을 수 있습니다. 아니면 인터넷 검색엔진에서 "C++"이라고 치면 몇백만건의 자료가 나올테니 거기서 찾아보십시오.

그리고 덧붙인다면, 사민님께서 C언어에 대해서 탄탄한 지식이 있으시다면 C와 C++을 비교하는 것이 의미가 있겠지만, 만약 지금 프로그래밍 언어를 배워야 하는데 C와 C++ 중에서 선택을 해야 한다면, 이 둘의 차이를 비교하는 것은 아무런 의미가 없습니다. 흡사 '독일어랑 불어랑 어떤 차이가 있죠?'라는 질문과 같기 때문이지요. 개인적으로는 C보다는 C++을 공부하는 게 좋겠지만, 그것보다는 아예 Java나 Delphi, 또는 Smalltalk 처럼 객체지향을 충분히 나타낼 수 있는 언어를 공부해 보시라고 권하고 싶습니다.


그럼 사민님, 힘내세요!


Notes