프로그래밍에 대한 짧은 조언 : 옵션에 대하여

프로그래밍/프로그래밍 메모장 2006/09/25 13:07
프로그래밍에 대한 짧은 조언 : 옵션(Option)에 대하여

프로그래밍을 하다보면 많은 API를 사용함에 있어서 Option을 존재하는 것을
알 수 있습니다. 그런데 이 Option에 대한 본질적인 이해를 등한시 하는 경우가
꽤 많습니다.

특히 여러 인터넷의 글들이나 심지어 책에서도 어떤 API의 어떤 Option은 쓰지
말하야 한다... 라고 표현하는 형태의 글들이 존재합니다.

그러나 이러한 것은 옵션(option)이라는 본질적인 단어의 의미를 파악하지 못하는
오류라고 생각합니다.

API에 왜 옵션이 생겼을까? 라는 것을 고민해보면 이러한 문제는 간단해집니다.
옵션은 말그대로 선택의 문제인것입니다.  환경의 변화로 어떤 옵션은 거의 선택될
필요가 없다라고 되면 아마도 다음 API에서는 그 옵션은 사라질 것입니다.

옵션이 있다는 것은 프로그래머로 하여금 다양한 상황에서 다양한 선택을 할 수
있도록 해준다는 의미 입니다. 다시 말하면 그 API는 정형적으로만 쓰기에는
여러가지 환경이 있을 수 있다는 것을 의미합니다
. 즉 애초부터 정답이 없는
환경을 의미합니다. 다양한 환경 그리고 다양한 구축에서 최선의 것을 선택하라는
의미입니다. 따라서 옵션을 쓰는 API에 대해서 어느 한가지를 선택해서
그것만을 쓰라고 고집하는 것은 다양한 환경을 접하지 못했거나 옵션의 의미를
모르는 것이라고 할 수 있습니다.

옵션에 대한 자세만 바꾸어도 '유연성' 있는 사고와 프로그래밍을 할 수 있습니다.
만약  한가지 옵션만을 계속 사용하는 API가 있었다면 왜 그 옵션만을 사용하는지
그 환경을 변하지 않았는지 그것이 이 환경에서 최선의 선택인지를 고려해야 하겠습니다.

프로그래머가 만드는 프로그램 자체에서도 환경설정 파일이라든지 , 내부의 데이타에
따라서 다양한 환경을 처리할 수 있도록 옵션이 존재합니다. 환경선택의 폭이 작아질수록
이러한 옵션은 줄어들고 환경선택의 폭이 커질수록 옵션은 증가합니다.
옵션이 적을수록 프로그램은 간단해지고 옵션이 많을수록 프로그램은 복잡해집니다.

프로그램이 어떠한 환경에서 어떠한 것을 추구하는지에 따라 달라지는 것입니다.

결국 옵션은  그 언어의 의미처럼 선택의 문제입니다.
top

Trackback Address :: http://www.xevious7.com/trackback/147

Write a comment