출력함수 선택에 대한 고민
printf 는 가변 인자 함수로써
단순히 문자 한 개를 출력한다던가, 순수 문자열을 출력하기 위해 사용하기에는
조금 무거운 감이 없지 않아 있다고 들었습니다.
C++ 에서 printf 함수 대신 사용되는 cout 객체의 << 연산자 오버로딩은 어떠한가요?
cout << "안녕하세요?"; ㅡ> fputs("안녕하세요?", stdout);
cout << ' A'; ㅡ> putchar('A');
우측과 같이 사용하는 것이 좋을까요?
--------------------------------------------------------------------------
질문자께서는 지나친 고민을 하고 있다고 보여 집니다.
어느쪽이든지 편한대로 사용하면 됩니다.
가령 숨은 비용이 조금 더 든다고 하더라고 거의 문제가 되지 않습니다.
예를 들어서 어떤 일을 하는데 수십억원의 비용이 든다고 가정해 보겠습니다.
그런데 지금 작은 단위의 일을 하는데 5원이 드는지 20원이 드는지는 중요하지
않다고 보여 집니다.
프로그래머가 편하게 생각하고 작업을 하는 것이 무거운 함수라고 고민하는 것보다
더 많은 비용을 지불하는 것이라고 생각합니다.
보다나은 프로그램을 만들기 위해서 고민을 하는 자세는 바람직한 것입니다.
하지만 알고리즘이나 자료구조를 생각하는데 노력을 기울여야 한다고 봅니다.
----------------------------------------------------------------
조금더 말을 이어 가겠습니다.
아주 오래전에 c프로그래밍 초차도 어셈블리 언어에 비햐면 느리다고
생각할 때가 있었읍니다.
그 후에 c++이 나왔을때 비슷한 일이 일어 났습니다. c언어 대신에
c++을 쓰는것이 전문가 답지 못하다고 여겨지던 때도 있었읍니다.
다시 자바가 나오고 나서 자바를 사용하는데 대해서도 비슷한 의견이
있었읍니다.
또 파이썬이 좀더 쓰이게 되자 파이썬에 대해서도 비슷한 의견이 나왔습니다.
하지만 가장 중요한 것은 사람입니다. 프로그래머의 생산성이야 말로
우리가 가장 소중하게 여겨야 하는 것입니다. 프로그래머가 일하기
편하도록 해주는 언어나 시스템이 가장 좋은 것입니다.
조금 덜 빠르다거나, 조금 더 자원을 사용한 다는 것은 무시되는 시대에
우리는 살고 있습니다. 개발을 빨리 할 수 있는 환경, 수정을 빨리 할 수
있는 언어나 시스템이 더 필요해 진 것입니다.
'c·c++ > c 프로그래밍' 카테고리의 다른 글
sizeof('A')는? 왜 4인가 (0) | 2012.03.05 |
---|---|
간단하게 컴파일 할수 있는 프로그램 없을까요? - usb compiler (0) | 2012.03.03 |
C 언어 에서 %e와 %g에 대해서 (0) | 2012.01.21 |
srand rand (0) | 2012.01.21 |
scanf_s 함수의 문제점 (0) | 2012.01.18 |