사이언스타임즈 로고

기초·응용과학
정수빈 리포터
2022-07-06

‘초연결, 초지능, 초융합’ 시대의 프로그래밍 언어, 어디까지 알고 있니? C언어, JAVA, 파이썬의 특징과 프로그래밍 언어별 차이, 코드 구현에 대해

  • 콘텐츠 폰트 사이즈 조절

    글자크기 설정

  • 프린트출력하기

정보통신기술의 융합으로 ‘초연결’, ‘초지능’, ‘초융합’을 대표하는 4차 산업을 위한 미래 인재 양성 노력이 시작되고 있다. 특히, 소프트웨어 교육과 AI 교육을 토대로 컴퓨터와 관련한 교육의 필요성에 대한 목소리가 높아지고 있다. 즉, 컴퓨터공학 분야가 아니더라도 프로그래밍 언어 하나쯤은 알아두는 것이 필수인 시대가 됐다.

ⓒ게티이미지뱅크

프로그래밍 언어란?

프로그래밍 언어란 ‘기계가 읽을 수 있고 사람이 읽을 수 있는 형식으로 프로그램을 작성하기 위해 사용되는 컴퓨터 언어’를 말한다. 컴퓨터가 바로 이해할 수 있는 언어는 기계어다. 기계어는 2진수인 0과 1로 구성돼 있어 자연어(사람이 사용하는 언어)로 이해하는 데 불편함과 어려움이 있다. 이에 기계어와 자연어의 중간적 위치에서 프로그램을 쉽게 작성할 수 있게 하는 인공언어인 프로그래밍 언어가 등장했다.

프로그래밍 언어의 종류에는 무엇이 있을까?

프로그래밍 언어는 가장 크게 저급 언어와 고급 언어로 분류된다. 저급 언어는 기계 중심의 언어로, 주로 기계어, 어셈블리 언어가 이에 해당한다. 저급 언어는 하드웨어에 관련된 직접적인 제어가 가능하다. 고급 언어는 인간 중심의 언어로, 사무처리용 언어인 코볼, PL/1, RPG가 이에 해당한다. 고급 언어는 하드웨어 관련 지식이 없어도 프로그램 작성이 가능한 언어다. 쉽게 말해, 사람이 이해하고 작성하기 쉬운 언어로 흔히 우리가 아는 C, C++, Java 등이 고급 언어에 해당한다.

 

우리가 사용하는 프로그래밍 언어, 어디까지 알고 있니?

 - C언어, JAVA, Python에 대해서

ⓒ게티이미지뱅크

C언어

대표적인 프로그래밍 언어들에 대해 알아보자. 가장 먼저, C언어다. C언어는 미국 벨 연구소의 리치가 개발한 운영 체제나 언어 처리계 등의 시스템 기술에 적합한 프로그래밍 언어다. 현재 가장 널리 쓰이는 명령형 언어로, JAVA, Python 등에 비해 성능이 압도적으로 높다. 다만, 프로그램을 활용할 각종 라이브러리가 잘 발달해 있지 않아 직접 개발해야 하고, 이에 난이도가 높다는 단점이 있다. 또한, 절차지향 언어로 프로그램 코드를 위에서부터 순서대로 실행하는 언어라 코드가 간결하고, 속도가 빠르다는 것이 장점이다. C언어는 주로 임베디드(전자 기기가 자동으로 기능을 수행할 수 있게 만든 내장형 칩), 시스템 프로그래밍에 사용된다.

추가로 C++는 C언어가 복잡한 프로그램 작성 시 마주하는 일정 한계를 극복하고자 대규모 응용프로그램을 만드는 데 최적화하기 위해 만들어진 프로그래밍 언어다. 이는 새로운 방식의 프로그래밍 접근 방법으로, 객체지향형 언어라 불리기도 한다.

ⓒ게티이미지뱅크

Java(자바)

자바는 C언어와 C++에 비해 간략하고 쉬우며 네트워크 기능의 구현이 용이해 인터넷 환경에서 가장 활발히 사용되는 프로그래밍 언어로, C++과 같이 객체지향형 언어다. 자바는 “write once, run anywhere”라는 슬로건 하에, 한 번 구현한 코드를 플랫폼에 독립적으로 사용할 수 있도록 특별히 설계됐다는 점이 특징이다. 자바의 가장 큰 장점은 보안력이 높다는 것이다.

바이러스에 노출이 쉬운 프로그램 세계에서 바이러스가 침투하지 못하는 구조를 갖추고 있다. 본래 네트워크 분산 처리 환경에서 사용하기 위해 디자인된 언어로, 접근 허용이 없다면 데이터 혹은 데이터 구조에 대한 접근은 불가능하다. 자바는 주로 웹, 안드로이드 개발에 사용된다.

ⓒ게티이미지뱅크

Python(파이썬)

C언어를 기반으로 1991년 귀도 반 로섬에 의해 설계 및 개발된 오픈소스 고급 프로그래밍 언어다. 파이썬은 C++과 자바와 마찬가지로 객체지향형 언어다. 이는 처음 프로그래밍 언어를 접하는 사람도 쉽게 적응할 수 있을 만큼 쉬운 프로그래밍 언어로 꼽힌다. C언어나 자바와 같이 자료형을 지정하고, 중괄호를 겹치지 않게 입력해야 하는 등의 번거로움이 적어 코드나 문법에 있어 간결한 것이 그 이유다.

다양한 라이브러리가 있어 사용하기에 편리하기도 하다. 여러 분야에 있어 쉽게 활용할 수 있으나, 성능이 중요하고 중대한 프로젝트를 이행하기에는 속도가 느리고, 개발 환경에서 활용하기 힘들다는 단점이 있다. 파이썬은 주로 GUI(컴퓨터 그래픽 기능을 사용하는 사용자 인터페이스) 프로그래밍, 데이터 분석, 사물 인터넷 분야에 사용된다.

소통을 위해 존재하는 언어, 컴퓨터와 소통할 수 있는 흥미로운 언어를 공부해보는 것은 어떨까. 다양한 프로그래밍 언어를 활용해 자신만의 코드를 구성한 후 컴퓨터에 여러 명령을 실행해 결과를 내는 값진 과정을 경험하기를 바란다.

 

프로그래밍 언어별 코드의 차이

각 프로그래밍 언어를 활용해 출력할 문구는 하단의 문구로 동일하다. ‘~~~’에는 활용한 프로그래밍 언어가 들어간다.

 

사이언스타임즈는 한국과학창의재단 주관하에 운영되는 인터넷 과학신문입니다.

사이언스타임즈는 과학기술, 과학문화, 과학교육 등 과학과 융합한 관련 뉴스를 신속하고 정확하게 취재해 보도합니다.

이것은 '~~~'로 출력한 값입니다.

 

해당 문구는 프로그래밍 언어 중 C언어로 공통 문구를 구현한 모습이다.
▲ 해당 문구는 프로그래밍 언어 중 C언어로 공통 문구를 구현한 모습이다. ⓒ정수빈 리포터

▲ 해당 문구는 프로그래밍 언어 중 자바로 공통 문구를 구현한 모습이다. ⓒ정수빈 리포터

▲ 해당 문구는 프로그래밍 언어 중 파이썬으로 공통 문구를 구현한 모습이다. ⓒ정수빈 리포터

다음 사진에서 보면 알 수 있듯, 같은 듯 다르게 코드 구현에 차이가 있음을 확인할 수 있다. 예를 들어, C언어와 자바에는 {}가 사용되는 반면, 파이썬에서는 {}가 사용되지 않는다. 또한, 출력을 위해서 같은 뜻을 나타내는 것이기는 하지만, C언어에서는 printf()로, 자바에서는 println()을, 파이썬에서는 print()를 사용한 것을 확인할 수 있다. 이처럼 각 프로그래밍 언어에서 사용하는 문법과 코드가 상이함을 확인할 수 있다.

정수빈 리포터
저작권자 2022-07-06 ⓒ ScienceTimes

관련기사

목록으로
연재 보러가기 사이언스 타임즈에서만 볼 수 있는
특별한 주제의 이야기들을 확인해보세요!

인기 뉴스 TOP 10

속보 뉴스

ADD : 06130 서울특별시 강남구 테헤란로7길 22, 4~5층(역삼동, 과학기술회관 2관) 한국과학창의재단
TEL : (02)555 - 0701 / 시스템 문의 : (02) 6671 - 9304 / FAX : (02)555 - 2355
정기간행물 등록번호 : 서울아00340 / 등록일 : 2007년 3월 26일 / 발행인 : 정우성 / 편집인 : 윤승재 / 청소년보호책임자 : 윤승재
한국과학창의재단에서 운영하는 모든 사이트의 콘텐츠는 저작권의 보호를 받는 바 무단전재, 복사, 배포 등을 금합니다.

사이언스타임즈는 과학기술진흥기금 및 복권기금의 지원으로 우리나라의 과학기술 발전과 사회적 가치 증진에 기여하고 있습니다.