이 글은 중2병 말기증상 새끼가 어차피 중2병 글 쓰는 ㅅㅈㅈ나 ㅇㅋㅅㄱㅇ 등이 늘어나

에라이 맞불이다 하며 쓴 것입니다. 진지하게 생각하면 너만 ㅄ입니다 'ㅅ'







흔히들 프로그래밍을 하는데 논리력이 중요하다고 한다. 뭐 그래 중요할 것이다. 근데 그런 사람치고 논리력이란게 뭔가요? 라는 물음에 대해 뭐라고 탁 대답한지 못한 체 검색질이나 하고 있을 사람이 대부분이다. 일단 오타쿠들의 살짝 멍청하지만 유용한 친구 나무위키는 다음과 같이 정의해 놓았다.

 

보다 구체적으로 말하자면 논증과 추론에 대해서 연구하는 학문.

 

논리력이 아닌 논리학에 대한 정의이지만, 말이다. 물론 저 정의 만으로는 완벽하게 논리란 무엇인지 이해했다 하기 쉽지 않다. 우선 논증추론을 검색해서 그 뜻을 자세히 찾아보아야 할 것이다.

 

나무위키와는 별개로 개인적으로는 다음과 같이 정의하고 있다.

 

원인과 결과를 합리적으로 연결하는 능력.

프갤에 비슷하게 생각하는 사람 있어서 좀 놀랐다.  

 

다시 말하면 A B가 되고 B C가 되며 CD가 되는 일련의 과정을 지적으로 파악하는 능력이 논리다. 프로그래밍 역시 그 일련의 과정을 설계한다. 생각 없이 막막 코딩하든, OOP를 하든, 함슬람을 쓰든 간에 말이다.

 

다만 여기서 꼭 A, B, C 1개라는 보장이 없다. 실제 하나의 프로그램을 만들기 위해서는 하나의 D를 만들기 위에 여러 개의 C가 필요하고 C 역시 여러 개의 B로 이루어진다. B역시 마찬가지로 여러 개의 A로 이루어져 있다. 사실 이 정도 말단 부분의 로우한 영역은 아마 신경 쓸 필요 없을 것이다. ‘

 

하나의 D를 이루기 위한 여러 개의 C를 어떻게 나누냐에 따라 추상화란 개념이 등장하기 시작한다. 이 추상화를 어떻게 하느냐에 따라 앞서 말한 생각없이 막막 코딩하는 것과(프로그램이 커졌다면 어떤 괴랄한 식으로든 추상화를 하기는 했을 것이다 그 와중에 6 for문을 썼을지도 모르지만), OOP와 함수형이 나뉘는 것이다.

 

A B C D로 이루어지는 변화를 어떻게 하여 내가 원하는 결과를 가져올 것인가?.

D라는 종국적 목표를 이루기 위한 A B C를 어떻게 정의할(혹은 추상화할) 것인가?

이 모든것을 아우르는 것이 프로그래밍 설계라 할 수 있겠다.

이것이 보쿠사마쟝이 프로그래밍을 5만가지 분야 중에서도 논리력과 특히 밀접하다고 보는 이유다.

어찌 보면 논리 그 자체이며 암기로 배울 수 있는건 한정되어 있다.

 

이를 프로그래머에게 우호적으로 해석한다면 프로그래밍을 배움으로 하여 다른 사람들보다 훨씬 논리적인 인간이 된다 볼 수 있을 것이다. 하지만 반대로 프로그래머에게 비우호적으로 해석한다면 애당초 논리력이라는 씨앗이 없는 놈은 아무리 지랄해봐야 땔감이 될 뿐이라는 결론이 나온다. ㅇㅅㅇ;;; 머 그래도 뗄감이라도 열시미 하던 굶어 뒤지진 않을거다. 아마도....

 

 

물론 보쿠사마쟝은 보쿠사마쟝이 중2병 도지면 ㅇㅋ가 좋아한다는 것 정도는 알고 있습니다.

즉 ... ㅇㅋㅅㄱㅇ 핑계된건 걍 핑계고 가끔 중2해지고 싶습니다. 'ㅅ';;;



쿠로유키히메하고 결혼하고 싶습니다. 'ㅅ'