티스토리 뷰

인터넷이 발달함에 따라서 검색이 무척 용이해졌다.


이제는 "개발=검색" 이라는 공식을 내세우는 관리자(혹은 개발자)를 심심치 않게 찾아볼 수 있다.


요즘은 특정 키워드나 개발과 관련된 검색을 하면 sample code를 쉽게 찾아 볼 수 있고 그 코드를 바로 적용 시키고 돌려보는 이들이 무척 많다.


그리고는 프로그램이 원활하게 돌아가지 않는다고 comment를 작성하고 Q&A를 활용한다. 사실 여기서 간과하고 있는 재밌는 사실은.. sample code는 사실 pseudo code 였다는 점. 


그것이 pseudo code 인지 조차 모르고 무조건 "복사&붙여넣기"로 코드를 개발하고 있다니..!!



여기 좋은 예제가 있다.

Embedded 환경의 C/C++에서 특정 directory의 내용을 가져올 때 opendir을 사용하기도 하지만 sort된 결과가 필요한 경우에는 scandir을 사용하고는 한다.


자, 문제는 지금부터다.

google에 scandir을 검색했을 때 나오는 게시 글 중 제대로 된 것이 man page 부류를 제외하고는 없다.

(정말 가뭄에 콩 나듯이 1~2개 제대로 되어 있는 건 없는 것으로 친다)


무엇이 잘못되었느냐고? 

프로그램 개발의 기초가 되고, 개발자라면 정말 당연 시 여겨야 하는 free에 대한 언급이 없다.

scandir은 메모리를 할당해서 사용하는 함수다. 그러므로 당연히 sample code에는 free가 있어야 한다!!

잠깐 man page를 살펴보자. 

#include <dirent.h>

       main(){

           struct dirent **namelist;

           int n;


           n = scandir(".", &namelist, 0, alphasort);

           if (n < 0)

               perror("scandir");

           else {

               while(n--) {

                   printf("%s\n", namelist[n]->d_name);

                   free(namelist[n]);

               }

               free(namelist);

           }

       }


영어 울렁증 있는 우리 친구들 man page는 절대로 보지 않는다.

잘 작성되어 있는 블로그를 기반으로 또 다른 블로그에 유사한 글이 포스팅 되는 과정이 국내 IT 블로거들의 큰 특징이기 때문에 ...

참 안타까운 일이 아닐 수 없다.


이러다가 정말 프로그래밍하는 법을 모르는 사람이 개발을 하고 지휘봉을 휘두를 것 같은 느낌이다.

우리는 프로그래밍하는 법을 잊어버렸는가?


이런 질문이 나오지 않도록 마음가짐을 다시 잘 추스려보자.




아! 프로그램이 바로 종료되기 때문에 굳이 free하지 않아도 된다고?

참. 좋은 습관이고 바른 개발자이십니다. 계속 그렇게 사는 건 관계 없지만, 검색한 사람에게 혼란은 주지 말기를.. 바라봅니다.

'생활 > 주절주절' 카테고리의 다른 글

한별농장 방문  (2) 2016.05.30
ocr 부터 captcha 까지...  (2) 2016.05.17
프로그래머 면접 - 경력  (0) 2016.04.19
16.04.16 세월호 2주기  (0) 2016.04.18
제20대 국회의원 선거 - 투표 하셨쥬?  (0) 2016.04.14
댓글
최근에 올라온 글
최근에 달린 댓글
글 보관함
Total
Today
Yesterday