2007년 4월 29일 일요일

Language Matters

다들 좋은 주말 보내고 계신가요?

전 요즘 새로운 책의 집필을 기획하고 있습니다. 알고리즘을 주제로 준비하고 있는데,  여러가지 결정해야 하는 일들이 있어서 고민하고 있습니다.

그 중의 하나가 책에 사용할 프로그래밍 언어를 고르는 일입니다. 이것 참 고민스러운 일입니다. 이에 대한 결정을 내리기 위해 여러가지 통계 자료를 구글링하고 하던 중,
세계 최고의 IT 출판사, Oreilly 의 회장 Tim Oreilly 의 블로그에서 좋은 자료를 발견했습니다.

Programming Language Trends

프로그래밍 언어는 C#을 기본으로 하되, 충분한 근거와 타당성 검토를 거쳐 필요하다고 판단되면 Java나 C++를 같이 넣는 방향으로 하려 합니다.

혹시 이에 대해 의견이나 아이디어가 있으시면 덧글을 달아 주시거나, 제게 이메일(steelblue@nate.com)을 주시기 바랍니다. 좋은 아이디어가 있으면 제가 훔쳐 쓰려 하거든요.

댓글 2개:

  1. 일관성이 중요하다고 생각됩니다. Java나 C++를 병행사용하는 것도 하나의 방법임에는 분명하지만, 중요한 것은 알고리즘의 정확한 전달일 것이고 Java나 C++에 익숙한 독자라면 혼란이 없겠지만 그렇지 않은 독자들은 좀 어려워 하지 않을까요? 더구나 C#으로는 작성이 불가능한 알고리즘을 Java나 C++는 표현이 가능한 알고리즘은 없을 거라고 생각이 되네요.

    짧은 소견이었습니다.

    답글삭제
  2. @현송 - 2007/05/01 21:47
    의견 감사합니다. 현송님^^



    전 어느 한 알고리즘은 C#으로, 또 다른 알고리즘은 C++로 구성하는 형식이 아닌 양언어 병기 방식을 고려하고 있었습니다. 예를 들어 퀵소트 알고리즘 예제 코드를 설명할 때 C#과 C++로 동시에 제공하는 것이죠. 이렇게 구성하면 C# 프로그래머는 C# 코드 예제를 보고, C++ 프로그래머는 C++ 코드 예제를 보면 됩니다.



    이번에 집필할 알고리즘 서적은 Pseudo 코드 대신 특정 프로그래밍 언어를 채택하기 때문에 독자층이 많이 좁아집니다. 이것을 어떻게 극복할수 있을까 하는 고민에서 이런 방안을 생각해 본 것입니다.



    마음을 비우고 제시해 주신 의견을 검토해 보겠습니다. 판단의 축에 "일관성"도 포함이 되어야겠군요.

    답글삭제