알고리즘은 문제 해결을 위한 절차이며 이는 개념적인 형태로 존재합니다. 알고리즘이 현실세계에서 위력을 발휘하려면 프로그래밍 언어로 구현되어 컴퓨터에서 동작되어야 합니다. 이 중에서도 객체지향 언어가 알고리즘과 자료구조를 표현하는 데 가장 적합합니다. 그리고 현대적인 프로그래밍 언어가 대부분 추상 데이터 타입으로서의 객체(class)를 지원합니다.
이 강좌에서는 C++ 언어를 매개로 하여 알고리즘을 만나고 구현하고 시험하고 검증하는 여정을 하게 될 겁니다. C++ 언어는 오래된 역사를 가지고 있지만 더 오래된 C라는 언어에서 유래된 것입니다.
Java니 C#이니 하는 트렌디한 언어들이 활개를 치고 있지만, 아직도 컴퓨팅 세계에서 C++는 상당한 비중을 차지하고 있습니다. 사실 C#이나 Java도 C++의 원형을 많이 가지고 있습니다.
강좌를 본격적으로 진행하기에 앞서서 C++의 모든 문법적 사양을 다룰 수는 없지만, 적어도 알고리즘과 자료구조를 구현하는데 필요한 최소한의 문법 사양에 대해서 훑어보는 시간을 가져 보도록 합니다.
강의 파일
동영상 강의
2.0 C++언어 개요 시작 : 2장에서 다룰 C++ 언어 개요 항목들을 살펴 봅니다.
2.1 C++의 역사와 개요 : 프로그래밍 언어의 역사를 통해 C++언어가 왜 알고리즘 구현에 적합한지를 살펴봅니다.
2.2 C언어 확장으로서의 C++ : C++언어는 C언어의 단점을 개선하고 기능을 추가하였습니다. 이런 측면에서 C++의 변경 내용을 살펴봅니다.
2.3 객체지향 언어로서의 C++ : C++언어는 C언어에 객체지향 개념을 추가하였습니다. 객체지향의 요소인 캡슐화, 계승, 다형성에 대해 C++언어의 지원 방법을 살펴 봅니다.
2.9 C++ 언어 개요, 결론 : C++ 언어는 C의 장점을 취하면서 C의 단점을 개선하였으며, 여기에 객체지향 개념을 접목한 것입니다. C++언어에 대해 배운 내용들을 정리합니다.
3장 "String 클래스 만들기"로 이어집니다.
관련글 |
- C++로 배우는 알고리즘
- 1장 : 희망의 나라로, 알고리즘
- 3장 : String 클래스 만들기
피드 구독하기:
댓글 (Atom)
인기글
-
언젠가부터 내 스마트폰에서 용량이 부족 하다면서 계속 알림이 떴다. 저가폰이라 내부저장소가 16GB 밖에 되지 않았지만, 추가로 마이크로SD 카드 16GB를 달았는데도 그렇다. 안드로이드가 앱을 설치하고 필요한 데이터를 저장하는 곳은 특별히 지정하...
-
사람들은 메이드인 차이나라 그러면 업신여기는 경향이 있지만, 요즘 웬만한 제조물품들은 중국도 꽤나 잘 만든다. 아니 샤오미나 팍스콘을 보면 꽤나 잘 만드는 정도가 아니라 아주 잘 만든다. 중국이 세계의 공장이 되면서 미국도 그렇고, 우리나라도 그렇...
-
나는 무려 10년이 된 Java 프로젝트를 여러개 관리하고 있는데, Netbeans와 Ant 기반의 개발/빌드 환경을 사용한다. Netbeans는 Sun이 Oracle로 넘어간 뒤에 Apache 재단으로 넘어가면서 개발 동력이 많이 떨어져 있다...
댓글 없음:
댓글 쓰기