티스토리 뷰

#코딩이란? #프로그래밍이란? #프로그래밍언어 #코딩언어 #기본용어정리






코딩, 프로그래밍 언어, 프레임워크, 라이브러리, API, SDK 등 어디서 많이 들어보셨는데 무슨 개념인지 잘 모르셨나요? 누구나 이해할 수 있도록 쉽게 설명해드리겠습니다

안녕하세요 누구나 배울 수 있는 쉬운 코딩 채널을 만들어가는 조코딩입니다.
이번 영상에서는 코딩에 관련된 기본적인 용어를 정리해보도록 하겠습니다.

1. “코딩”이란 무엇인가?
요즘 초등학교에서도 코딩 교육이 의무적으로 시행되고 있으며 4차 산업혁명에 핵심요소로 많이 언급되고 있습니다.
도대체 코딩이 뭐길래 그런걸까요? “코딩”은 Code + ing의 합성어로 코드를 작성한다는 의미입니다. 여기서 코드는 컴퓨터가 알아들을 수 있는 언어로, 요약하자면 컴퓨터에게 명령하는 것입니다. 예전에는 컴퓨터의 성능이 그다지 좋지 않아서 코딩을 통해 할 수 있는 것이 별로 없었습니다. 그러나 초당 수십억 번의 연산을 할 수 있고 인터넷으로 전세계가 연결되어 있는 컴퓨터에게 명령할 수 있는 힘은 정말 엄청납니다.
지금 현대 사회에서는 코딩이 마법과 비슷하다고 할 수 있겠습니다. 마법 주문을 외우듯 코드를 작성하면 무생물인 물체도 지능을 가진 생명체 처럼 만들 수 있고, 여러분의 사진을 자동으로 보정, 합성해주며, 전세계 수십억 명이 이용할 수 있는 게임 및 커뮤니티를 만들 수도 있습니다. 또 업무를 자동화해 수개월 걸릴 일도 단숨에 처리할 수도 있습니다. 그 외에도 정말 마법 같은 일을 해낼 수 있는 것이 바로 “코딩”입니다. 코딩을 할 줄 안다면 마치 마법사가 된 듯한 느낌을 받을 수 있죠

2. 프로그래밍 언어란?
그렇다면 코딩에 사용되는 코드, 즉 컴퓨터에게 명령을 할 수 있는 언어는 어떤 것이 있을까요? 사실 컴퓨터 내부적으로는 전원이 들어온 것 안 들어온 것을 나타내는 0과 1만 인식할 수 있습니다. 즉 컴퓨터에게 명령을 하려면 101010101010101~~ 이라고 말을 해야 알아듣고 원하는 동작을 할 수 있는 것이죠. 이렇게 컴퓨터가 쉽게 알아들을 수 있는 언어를 “기계어”라고 합니다. 그런데 매번 101010101 이런 것을 외우고 사용하려면 사람 입장에서는 굉장히 힘들겠죠? 그래서 사람이 좀 더 쓰기 좋은 형태로 가공하여 사용하게 됩니다. 그것을 바로 우리가 흔이 말하는 "프로그래밍 언어"라고 합니다 우리 인간이 쓰는 언어도 나라별로 다르듯이 기계어를 가공한 형태의 프로그래밍 언어도 굉장히 다양한 종류가 있습니다. 이러한 언어들 중에서 기계어에 가까운 형태일수록 “저급 언어”라고 불리며 인간의 언어에 가까울 수록 “고급 언어”라고 불리게 됩니다. 그럼 이런 의문이들 수 있습니다 인간의 언어에 가까운 쉬운 고급 언어가 있는데 왜 어려운 저급 언어를 아직도 사용하는 걸까?하는 생각이 드실겁니다. 그런데 저급 언어라고 해서 무조건 안 좋은 것이 아니고 상대적으로 조금 복잡하고 사용하기 어렵지만 컴퓨터 내부적으로 더 세부적인 조절이 가능하며 실행 속도도 더 빠릅니다. 반면 고급 언어일수록 사람이 배우고 활용하기 쉬운 대신 세부적인 조작 능력이나 실행 속도가 조금 떨어집니다. 또한 언어들 중 용도에 맞게 특화된 언어들이 존재하며 코딩을 배우는 목적에 따라 선택하여 학습하시면 되겠습니다.

3. 프레임워크란? 라이브러리? API? SDK?
이렇게 프로그래밍 언어만 알고 있어도 컴퓨터에게 명령하여 여러분이 만들고 싶은 프로그램은 다 만들 수 있습니다. 그런데 모든 것을 다 처음부터 개발하려면 정말 힘들지 않을까요? 예를 들어 앱을 만든다고 하면 로그인을 하거나 게시판이 있거나 비슷한 구조가 많이 있을텐데… 매번 처음부터 코딩하기는 너무 귀찮고 시간이 많이 걸립니다. 누군가 이런 자주 쓰는 기능들은 미리 구현해놓고 그냥 가져다 쓸 수 있는 도구 모음을 만들어 놓지 않았을까요? 네 그렇습니다. 누군가 만들어 놓은 이러한 도구 모음이 바로 프레임워크입니다. 프레임워크는 코딩할 때 자주 사용되는 기능들을 쉽게 가져다 쓸 수 있게 환경을 만들어 주어 훨씬 생산성을 향상 시킬 수 있습니다. 바닥부터 하나하나 다 만들어야 한다면 수십년이 걸일 것을 프레임워크의 도움으로 우리는 단 몇일만에 만들어 낼 수 있습니다. 이렇게 쓸 수 있는 도구를 프레임워크, 라이브러리, API, SDK 등으로 부르기도 하지요. (세부적인 차이가 있긴 하지만 비슷한 개념입니다.) 이러한 프레임워크는 게임을 만들 때, 웹을 만들 때, 앱을 만들 때 등 용도별로 다양하게 존재합니다. 지금까지 코딩, 언어, 프레임워크의 개념을 간략히 알아보았습니다. 좀 더 자세한 내용이 궁금하시다면 댓글을 남겨주세요! 제가 상세히 답변드리도록 하겠습니다. 앞으로 더 쉽고 유익한 영상으로 찾아뵙겠습니다. 시청해주셔서 감사합니다.
 
요약 정리

1. 코딩 : 컴퓨터에게 명령하는 것


2. 프로그래밍 언어 : 컴퓨터에 명령하는 언어



3. 프레임워크 : 코딩을 쉽게 할 수 있도록 도와주는 도구 모음

(용도별, 언어별 다양한 프레임워크 존재함)



댓글