이전 글을 못 보신 분은 하단 게시글도 참고하시기 바랍니다.
https://kumoh42.com/best/89704 - 금오 컴공 재학생이 후배들에게 알려주는 뇌절 팁(?)
개인적인 쪽지로 신입생 한 분께서 어떤 공부를 하면 좋을지를 여쭤보셔서 추가로 글 작성해보았습니다.
컴퓨터 공학과의 전공이란 그냥 심플하게 컴퓨터의 하드웨어(H/W) + 소프트웨어(S/W)의 전반적인 지식을 담는 것이죠.
여기서 1학년은 파이썬과 C와 C실습으로 소프트웨어 지식을, 공학 입문과 디지털 공학을 통해 하드웨어의 지식을 요구합니다.
"응? 그러면 파이썬이랑 C를 배워서 들어가면 좋지 않나요? 미리 배워놓고 들어가면 좋잖아요."라고 초반에 물어보곤 합니다.
실제로 배워서 들어온 학생과 아닌 학생들의 초반 격차가 있기도 하죠. 그.런.데... 사실 이걸 배워서 들어오는 학생들이 나중에도
잘한다는 보장이 없습니다. 실제로 제 주위에 C언어를 배워서 초반 전공 과목을 거의 움켜쥐었던 학우가 있었는데...
지금은 그냥 C를 할 줄 아는 겜돌이가 되어 있더군요... ( 먼저 배우나 나중에 배우나 결국 얼마나 노력하냐에 따라서 금방 뒤집힙니다. )
결과적으로 신입생분들이 선행학습으로 전공을 배울 필요가 전혀 없습니다.
그보다 왜 전공을 배워야 하는 가의 필요성과 문제 해결에 있어서 논리적 사고에 대해 잘 미리 알고 오셔야 합니다.
"엥? 전공 배우는데 필요성을 왜 따져요? 그냥 가르쳐주면 배우는거지..." 라고 물어보시겠죠.
이게 정말x3 중요합니다! 왜냐하면 초중고학교에서 가르치는 방식과 대학교에서 가르치는 방식이 다르기 때문이죠.
이전에는 단순히 시험을 또는 "수능"을 보기 위해서 공부를 한 것에 대해 그 목적이 있었습니다.
(물론 선생님들이 교육목표라는 것을 쓰시지만 아무도 보지는 않죠.)
하지만 대학 수업에서는 이론적인 것과 기본적인 방법을 알려주고,
문제나 과제를 해결하는데에 있어서 "소를 가지고 스테이크를 만들어와라."식의 해결 방법과 절차를 요구하게 됩니다.
그래서 단순히 수업을 듣고, 메모를 하는 선에서 이해를 못하여서 손을 놓거나,
수업 시간에 전혀 흥미가 없다면 안배우니만 못하는 상황이 생기는거죠.
그래서 이 과목을 왜 배우는 가 부터 초점을 잡아서 필요성을 본인이 세워야합니다.
예를 들어 "본인이 이 전공을 배워서 실무에서 어떻게 활용할지를 생각하며 배운다."라고 세운다면
그에 초점을 맞춰서 전공에 대한 접근과 흥미도가 천지 차이가 나게 되는거죠.
결과적으로 관련 문제와 과제 또한 손쉽게 해결할 수 있게 될겁니다.
이제는 논리적 사고에 대해 말해보도록 하겠습니다.
일단은 논리적 사고가 무엇이 중요한지 유튜브 영상 하나 소개하고 가겠습니다.
https://www.youtube.com/watch?v=I5cq54MFQCo - 코딩 교육, 국·영·수 가르치듯 해봐야 아무 소용 없다
이 영상에서 마지막에 아이가 말을 하는 것을 알 수 있듯이 "진짜 이해가 안된다. 일부로 엉터리로 만드는거지 않느냐"라고 말합니다.
자. 그러면 한번 제가 센드위치를 만드는 방법까지는 아니지만 유사한 문제를 내보겠습니다.
크리스마스 트리 LED 장식처럼 전구가 1초마다 깜빡이는 시스템을 만들어볼텐데요.
이 때에 "전구를 킨다", "전구를 끈다", "1초 기다린다" 를 사용해서 한번 제시해보겠습니다.
1. 전구를 킨다.
2. 1초 기다린다.
3. 전구를 끈다.
4. 1~3번 과정을 순차 반복한다.
라고 작성해보았습니다. 여기서 틀린 부분이 있는데, 아시겠나요? (쉽게 찾기는 힘들 겁니다.)
이 반복되는 순서를 쭈욱 나열하면 문제가 있음을 조금 더 쉽게 파악할 수 있습니다.
1. 전구를 킨다.
2. 1초 기다린다.
3. 전구를 끈다.
1. 전구를 킨다.
2. 1초 기다린다.
3. 전구를 끈다.
1. 전구를 킨다.
2. 1초 기다린다.
3. 전구를 끈다.
...
눈치채셨나요? 바로 3번->1번으로 가는 과정에서 기다리는 시간이 없기 때문에,
전구가 끄자마자 켜지므로, 컴퓨터와 같이 빠른 연산을 하는 기계로는 전구가 계-속 켜져있는 상황이 예측 가능합니다.
수정하자면 이렇게 해야겠죠.
1. 전구를 킨다.
2. 1초 기다린다.
3. 전구를 끈다.
4. 1초 기다린다.
5. 1~4번 과정을 순차 반복한다.
이러한 논리적 사고 능력은 프로그래밍이 매우매우 중요한 자리를 차지하고 있기 때문에,
반드시 이에 대한 사고 능력을 다져두시고 오시는 것이 좋습니다.
앗차...; 이 이상 쓰면 글이 너무 길어질 것 같으니 자르고 다른 글에서 만남을 기약하도록 하겠습니다.
( 오타나 서술상의 문제가 있더라도 양해부탁드리겠습니다. )
포푸코 금오
2019.01.08 베스트댓글그저 빛...
포푸코 금오
2019.01.08그저 빛...
한국전력공사 금오
2019.01.08익명_35167059 금오 익명
2019.01.08알제? 정성글은 ㅊㅊ 이야
익명_70747228 익명
2019.01.08역시는 역시군
금오사이
2019.01.08조동동 금오
2019.01.08닥추
로이장
2019.01.08꿀재미