We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
세상에는 프로그래머라는 하나의 직업명으로 부르기 힘들 만큼 다양한 종류의 프로그래머들이 있다.
같은 직업을 공유하지만, 데이터베이스 프로그래머, 웹 프로그래래머, 게임 프로그래머는 모두 전혀 다른 환경에서 다른 언어와 도구를 써서 프로그램을 작성하고, 전혀 다른 문제를 고민한다.
과연 이런 분야 간의 차이를 뛰어넘는 좋은 개발자의 조건이 있을까?
프로그래밍을 하기 위해선 생각보다 더 많은 것들을 알아야 한다.
아무 생각 없이 키보드를 치고 있는 프로그래머 머릿속에서는 사용하고 있는 언어의 특징, 프로그램이 동작할 하드웨어와 운영체제에 관한 지식, 사용하고 있는 라이브러리들에 대한 유의사항들이 회오리치고 있다.
이외에도 고객을 위한 생각과 팀의 커뮤니케이션 등 다양한 능력을 가지고, 최선의 방법을 찾아내는 프로그래머가 되어야 한다.
이 책에선 이런 능력을 문제 해결 능력이라고 부른다.
그러나 문제 해결 능력은 추상적인 기술이기에 훈련하기가 매우 어렵다.
자기 개발을 하고 싶은 프로그래머들은 새로운 언어와 프레임워크, 개발 방법들을 계속 배워 나가지만 이들을 조합하는 방법에 대해서는 배울 곳이 없다.
단지 경험이 생기면서 나아질 것이라고 막연히 짐작할 뿐이다.
좋은 프로그래머가 되기 위한 좀더 나은 방법은 없을까?
프로그래밍 대회에 참가하는 것은 문제 해결 기술을 연마하기에 가장 좋은 방법이라고 할 수 있다.
다양한 종류의 프로그래밍 대회가 있지만 이 책에서 다루는 대회는 짧은 시간안에 빠르게 작성하는 능력을 겨루는 대회이다.
이때 요구사항은 현업에서 사용하는 형태가 아니라 어떤 값을 읽어서 어떤 값을 계산하는 프로그램의 형태이다.
전체 7부로 되어 있으며, 1부와 2부는 후반부에 다루는 주제들을 공부하기 위해 필요한 기본 지식을 다룬다.
이들은 프로그래밍 대회의 문제 해결 방법론, 코딩과 디버깅에 대한 주의사항, 알고리즘의 정당성 증명과 효율성 분석에 대한 내용들을 포함한다.
이 부분을 잘 이해하고 넘어가야 이후에 다루는 주제를 제대로 이해할 수 있다.
책의 나머지 부분은 모두 알고리즘 설계 기법과 자료 구조 등 문제 해결에 필요한 기술들을 소개하고 있다.
실제 문제를 풀어보고 책에 나와있는 방법과 비교하여 최선의 방법을 찾아보려고 노력해볼 것
학부생 대상으로 쓰여진 책이기에 수학이나 전산학, C++, STL을 사용할 수 있다면 문제없다.
책 자체가 2권으로 나눠질 만큼 방대한 내용을 담고 있기에, 아직 소개하지 않은 기법이나 도구를 다루는 경우가 많다.
따라서 모든 장을 순서대로 읽기보다 가장 중요하고 기초적인 주제만 우선 소화한 뒤 다시 읽으며 빈 곳을 메꿔가는 쪽이 편하다.
추천 커리큘럼
위 순서대로 진행하고 이후에 빈 챕터를 채우는 방식으로 진행해본다.
단순 알고리즘을 숙제하듯이 풀기 싫어서 유형을 명확하려고 읽기 시작한 책인데, 상당히 전문적이다.
프로그래머로써 생각해야 하는 부분 (언어가 달라지더라도 알고리즘은 동일)과 문제해결 능력까지 깊게 생각하고 쓴 책이라 도움이 될 듯하다.
프로그래밍 대회까진 생각이 없는데 과연 책을 다 읽어도 생각이 없을지..
이번 알고리즘 스터디에서 책에서 다루는 커리큘럼에 맞게 알고리즘 문제와 유형에 대해서 발표하면서 진행할 예정이다.
The text was updated successfully, but these errors were encountered:
fkdl0048
No branches or pull requests
1장 문제 해결과 프로그래밍 대회
도입
세상에는 프로그래머라는 하나의 직업명으로 부르기 힘들 만큼 다양한 종류의 프로그래머들이 있다.
같은 직업을 공유하지만, 데이터베이스 프로그래머, 웹 프로그래래머, 게임 프로그래머는 모두 전혀 다른 환경에서 다른 언어와 도구를 써서 프로그램을 작성하고, 전혀 다른 문제를 고민한다.
과연 이런 분야 간의 차이를 뛰어넘는 좋은 개발자의 조건이 있을까?
프로그래밍은 문제 해결이다
프로그래밍을 하기 위해선 생각보다 더 많은 것들을 알아야 한다.
아무 생각 없이 키보드를 치고 있는 프로그래머 머릿속에서는 사용하고 있는 언어의 특징, 프로그램이 동작할 하드웨어와 운영체제에 관한 지식, 사용하고 있는 라이브러리들에 대한 유의사항들이 회오리치고 있다.
이외에도 고객을 위한 생각과 팀의 커뮤니케이션 등 다양한 능력을 가지고, 최선의 방법을 찾아내는 프로그래머가 되어야 한다.
이 책에선 이런 능력을 문제 해결 능력이라고 부른다.
그러나 문제 해결 능력은 추상적인 기술이기에 훈련하기가 매우 어렵다.
자기 개발을 하고 싶은 프로그래머들은 새로운 언어와 프레임워크, 개발 방법들을 계속 배워 나가지만 이들을 조합하는 방법에 대해서는 배울 곳이 없다.
단지 경험이 생기면서 나아질 것이라고 막연히 짐작할 뿐이다.
좋은 프로그래머가 되기 위한 좀더 나은 방법은 없을까?
프로그래밍 대회
프로그래밍 대회에 참가하는 것은 문제 해결 기술을 연마하기에 가장 좋은 방법이라고 할 수 있다.
다양한 종류의 프로그래밍 대회가 있지만 이 책에서 다루는 대회는 짧은 시간안에 빠르게 작성하는 능력을 겨루는 대회이다.
이때 요구사항은 현업에서 사용하는 형태가 아니라 어떤 값을 읽어서 어떤 값을 계산하는 프로그램의 형태이다.
대회에서 배울 수 있는 것
이 책을 읽는 방법
책의 구성
전체 7부로 되어 있으며, 1부와 2부는 후반부에 다루는 주제들을 공부하기 위해 필요한 기본 지식을 다룬다.
이들은 프로그래밍 대회의 문제 해결 방법론, 코딩과 디버깅에 대한 주의사항, 알고리즘의 정당성 증명과 효율성 분석에 대한 내용들을 포함한다.
이 부분을 잘 이해하고 넘어가야 이후에 다루는 주제를 제대로 이해할 수 있다.
책의 나머지 부분은 모두 알고리즘 설계 기법과 자료 구조 등 문제 해결에 필요한 기술들을 소개하고 있다.
실제 문제를 풀어보고 책에 나와있는 방법과 비교하여 최선의 방법을 찾아보려고 노력해볼 것
필요한 배경지식
학부생 대상으로 쓰여진 책이기에 수학이나 전산학, C++, STL을 사용할 수 있다면 문제없다.
입문자를 위한 권장 사항
책 자체가 2권으로 나눠질 만큼 방대한 내용을 담고 있기에, 아직 소개하지 않은 기법이나 도구를 다루는 경우가 많다.
따라서 모든 장을 순서대로 읽기보다 가장 중요하고 기초적인 주제만 우선 소화한 뒤 다시 읽으며 빈 곳을 메꿔가는 쪽이 편하다.
추천 커리큘럼
위 순서대로 진행하고 이후에 빈 챕터를 채우는 방식으로 진행해본다.
국내에서 참가할 수 있는 프로그래밍 대회
대회 준비를 위한 조언
느낀점
단순 알고리즘을 숙제하듯이 풀기 싫어서 유형을 명확하려고 읽기 시작한 책인데, 상당히 전문적이다.
프로그래머로써 생각해야 하는 부분 (언어가 달라지더라도 알고리즘은 동일)과 문제해결 능력까지 깊게 생각하고 쓴 책이라 도움이 될 듯하다.
프로그래밍 대회까진 생각이 없는데 과연 책을 다 읽어도 생각이 없을지..
이번 알고리즘 스터디에서 책에서 다루는 커리큘럼에 맞게 알고리즘 문제와 유형에 대해서 발표하면서 진행할 예정이다.
The text was updated successfully, but these errors were encountered: