말 그대로 또 다른 선택일 뿐입니다.
대체적으로 여러 사이트에서 추천하는 방식은 '책'을 중심으로 '탄탄한 기초정립'에 목표를 두고 있습니다. 저는 이런 방식은 그야말로 우리나라 학교교육, 학원교육, 과외교육의 전형이라고 생각합니다. 공통점이라고 한다면 '주입식'이죠. 자신이 공부하는게 어디에 쓰이고 왜 필요한지도 모른채...
그래서 가장 기본이 되는 문법만 공부하고 최대한 많이 실제로 경험해 보는것이 저는 중요하다고 생각합니다. 설사 그것이 '긍정적'경험이건 '부정적'경험이건 말이죠.
기본문법이라 함은 연산자, 조건문, 루프, 포인터, 클래스 정도 되겠죠. 말 그대로 '최소한 공부해야 하는 범위'로 국한한 것입니다.
STL.. 물론 Ansi C++의 핵심인것은 인정합니다만.. 스스로 포인터의 괴로움과 기존의 프로그래밍의 한계를 절실히 느낀 후에 접할 때 더욱 더 깊은 이해와 충격을 느낄 수 있으리라 생각합니다.
어떤 분들은 C를 먼저 익히고 C++를 익히면 전혀 C++답게 쓰지 못한다는 얘기를 하시는데 그건 너무나 C를 오래써서 완전히 고착된 경우에만 적용됩니다. 1년정도 기간 안에서는 별 상관 없다고 전 생각합니다.
추천해 주신 Accelerated C++ : Practical Programming by Example라는 책은 저도 보지는 않았지만 얘기는 많이 들었습니다. 아마 반드시 한 번은 봐야 할 책일 것 같네요. 전 지금 당장은 별 필요성을 못 느껴서 안보고 있을 뿐이니까요.
만일 제한된 시간 내에 프로젝트를 완성해야 하는 환경에서 프로그래밍을 하게 된다면 자신이 익숙한 방법을 사용할 수 밖에 없게 되고 결국 자신이 익숙한 방식에 고착되기 마련입니다.
그러나 왕초보, 특히 학생이라면 그런 제한은 없죠. 전 그런 환경을 최대한 잘 살리길 간절히 바랍니다. 스스로 부지런할 수만 있다면 충분히 가능하리라 봅니다.
참고로, 2~3일정도 문법을 보라고 했던 것은 말 그대로 대충 보고 이후에 다시 보지 말란 말이 아닙니다. 2~3일은 대충 보고 실제 프로그래밍을 하는 과정에서 끊임없이 책을 봐야 합니다. 당연히 2~3일 공부한 것은 부족할 수 밖에 없을테니까요. 하지만 흐름 파악에 성공했다면 자신이 무엇을 공부해야 하는지는 알 수 있겠죠.
|