시선뉴스=조재휘 기자ㅣ경기 불황이 이어지는 와중에도 IT 개발자에 대한 기업들의 수요는 줄어들지 않고 있다. 주위만 둘러봐도 우리는 IT 제품들이 가득 찬 곳에서 생활하고 있으며 그러다 보니 IT 개발 직군 역시 관심을 받고 있는 상황이다. 예비 개발자들을 위해 초등학생부터 코딩 교육에 열을 올리고 있는 상황. 도대체 코딩이 무엇이길래 많은 기업이 열을 올리고 있는 것일까.

우선 ‘코딩’이란 주어진 명령을 컴퓨터가 이해할 수 있는 언어로 입력하는 것을 말한다. 하나 이상의 관련된 추상 알고리즘을 특정한 프로그래밍 언어를 이용해 구체적인 컴퓨터 프로그램으로 구현하는 기술이다. 4차 산업혁명 시대의 필수 언어로 주목받고 있으며 영국, 일본, 이스라엘 등 해외 각국은 이미 경쟁적으로 코딩을 정규 교육 과정에 편입시켜 교육을 하고 있다.

소프트웨어 공학에서는 보통 컴퓨터에서의 자료 처리를 위한 컴퓨터 프로그램을 작성하는 작업을 의미한다. 컴퓨터 프로그래밍과 그 의미를 혼용해 사용하기도 한다. 그러나 컴퓨터 프로그래밍은 프로그램의 설계부터 코딩(Coding), 테스트(Test) 및 디버그(Debug)에 이르기까지의 프로그램의 실행에 대한 전반적인 생애주기를 기술하는 과정인 데 반해, 코딩은 컴퓨터 프로그래밍의 한 부분이다.

코딩은 컴퓨터 프로그램이 어떤 기능을 가지게 할지, 인공지능이 어떤 행동을 하게 만들지를 입력해 주는 것이다. 그렇기 때문에 프로그래밍에서 가장 기초적이면서도 필수적인 작업이라고 할 수 있다. 서빙 로봇, 무인 청소기, 화재경보기 등은 코딩 작업을 통해 입력된 명령대로 행동하는 것이다.

효율적인 코딩을 위해서는 프로그램의 흐름을 제어하기 위한 제어구조(Control Structure)에 대해 이해하는 것이 중요하다. 제어구조란 프로그램의 실행 순서나 처리 흐름을 논리적으로 제어하기 위한 문장의 구조로써, 순차적 형태의 순차 구조(Sequence Structure), 주어진 조건에서 선택하는 선택 구조(Selection Structure), 특정 구문을 반복해서 수행하는 반복 구조(Iteration Structure) 등이 있다.

대표적인 프로그래밍언어 중 하나인 C언어나 JAVA와 같은 프로그래밍 언어를 사용해서 개발한다고 가정했을 때, 프로그래밍 언어별로 문법은 서로 다르더라도 공통으로 제어구조에 기반을 두어 코딩하게 된다.

우리나라에서는 2018년부터 전국 초중고교에서 소프트웨어교육(코딩 교육)을 의무화하고 있다. 코딩은 조직적 분석적 사고력이나 명석한 표현 등 이공계적 지능을 훈련시키는 매우 효과적인 교육이다. 또한 코딩을 하지않더라도 코딩의 방법론을 이해하는 것은 문제해결 능력을 키우는 것이기에 다양한 현실의 업무나 소통에 엄청난 도움을 준다.

하지만 코딩 조기교육이 좋은 점도 있지만 나쁜 점도 있다. 같은 초등학생도 수학이나 운동이나 음악 등에서 개인 성취 정도의 차가 매우 큰 것처럼 코딩도 개인차가 매우 크다. 재능이 있는 학생들에게는 날개를 달아 주는 격이지만 재능이 없는 학생에게는 오히려 재미없고 지루해서 컴퓨터에 대한 공포심이나 반감만 갖게 할 따름이다.

최근 코딩이 중요하게 된 것은 인공지능, 사물인터넷 등 4차 산업혁명시대를 대변하는 모든 것이 ICT(정보통신기술)를 바탕으로 한 소프트웨어를 통해 구현되기 때문이다. 컴퓨터가 현대 사회에서 필수품이 된 만큼 코딩도 현대인들에게 상식이자 교양이 될 날이 머지않은 것 같다.

SNS 기사보내기