C언어, JAVA, 파이썬의 특징과 프로그래밍 언어별 차이, 코드 구현에 대해
정보통신기술의 융합으로 ‘초연결’, ‘초지능’, ‘초융합’을 대표하는 4차 산업을 위한 미래 인재 양성 노력이 시작되고 있다. 특히, 소프트웨어 교육과 AI 교육을 토대로 컴퓨터와 관련한 교육의 필요성에 대한 목소리가 높아지고 있다. 즉, 컴퓨터공학 분야가 아니더라도 프로그래밍 언어 하나쯤은 알아두는 것이 필수인 시대가 됐다.
ⓒ게티이미지뱅크
프로그래밍 언어란 ‘기계가 읽을 수 있고 사람이 읽을 수 있는 형식으로 프로그램을 작성하기 위해 사용되는 컴퓨터 언어’를 말한다. 컴퓨터가 바로 이해할 수 있는 언어는 기계어다. 기계어는 2진수인 0과 1로 구성돼 있어 자연어(사람이 사용하는 언어)로 이해하는 데 불편함과 어려움이 있다. 이에 기계어와 자연어의 중간적 위치에서 프로그램을 쉽게 작성할 수 있게 하는 인공언어인 프로그래밍 언어가 등장했다.
프로그래밍 언어는 가장 크게 저급 언어와 고급 언어로 분류된다. 저급 언어는 기계 중심의 언어로, 주로 기계어, 어셈블리 언어가 이에 해당한다. 저급 언어는 하드웨어에 관련된 직접적인 제어가 가능하다. 고급 언어는 인간 중심의 언어로, 사무처리용 언어인 코볼, PL/1, RPG가 이에 해당한다. 고급 언어는 하드웨어 관련 지식이 없어도 프로그램 작성이 가능한 언어다. 쉽게 말해, 사람이 이해하고 작성하기 쉬운 언어로 흔히 우리가 아는 C, C++, Java 등이 고급 언어에 해당한다.
ⓒ게티이미지뱅크
대표적인 프로그래밍 언어들에 대해 알아보자. 가장 먼저, C언어다. C언어는 미국 벨 연구소의 리치가 개발한 운영 체제나 언어 처리계 등의 시스템 기술에 적합한 프로그래밍 언어다. 현재 가장 널리 쓰이는 명령형 언어로, JAVA, Python 등에 비해 성능이 압도적으로 높다. 다만, 프로그램을 활용할 각종 라이브러리가 잘 발달해 있지 않아 직접 개발해야 하고, 이에 난이도가 높다는 단점이 있다. 또한, 절차지향 언어로 프로그램 코드를 위에서부터 순서대로 실행하는 언어라 코드가 간결하고, 속도가 빠르다는 것이 장점이다. C언어는 주로 임베디드(전자 기기가 자동으로 기능을 수행할 수 있게 만든 내장형 칩), 시스템 프로그래밍에 사용된다.
추가로 C++는 C언어가 복잡한 프로그램 작성 시 마주하는 일정 한계를 극복하고자 대규모 응용프로그램을 만드는 데 최적화하기 위해 만들어진 프로그래밍 언어다. 이는 새로운 방식의 프로그래밍 접근 방법으로, 객체지향형 언어라 불리기도 한다.
ⓒ게티이미지뱅크
자바는 C언어와 C++에 비해 간략하고 쉬우며 네트워크 기능의 구현이 용이해 인터넷 환경에서 가장 활발히 사용되는 프로그래밍 언어로, C++과 같이 객체지향형 언어다. 자바는 “write once, run anywhere”라는 슬로건 하에, 한 번 구현한 코드를 플랫폼에 독립적으로 사용할 수 있도록 특별히 설계됐다는 점이 특징이다. 자바의 가장 큰 장점은 보안력이 높다는 것이다.
바이러스에 노출이 쉬운 프로그램 세계에서 바이러스가 침투하지 못하는 구조를 갖추고 있다. 본래 네트워크 분산 처리 환경에서 사용하기 위해 디자인된 언어로, 접근 허용이 없다면 데이터 혹은 데이터 구조에 대한 접근은 불가능하다. 자바는 주로 웹, 안드로이드 개발에 사용된다.
ⓒ게티이미지뱅크
C언어를 기반으로 1991년 귀도 반 로섬에 의해 설계 및 개발된 오픈소스 고급 프로그래밍 언어다. 파이썬은 C++과 자바와 마찬가지로 객체지향형 언어다. 이는 처음 프로그래밍 언어를 접하는 사람도 쉽게 적응할 수 있을 만큼 쉬운 프로그래밍 언어로 꼽힌다. C언어나 자바와 같이 자료형을 지정하고, 중괄호를 겹치지 않게 입력해야 하는 등의 번거로움이 적어 코드나 문법에 있어 간결한 것이 그 이유다.
다양한 라이브러리가 있어 사용하기에 편리하기도 하다. 여러 분야에 있어 쉽게 활용할 수 있으나, 성능이 중요하고 중대한 프로젝트를 이행하기에는 속도가 느리고, 개발 환경에서 활용하기 힘들다는 단점이 있다. 파이썬은 주로 GUI(컴퓨터 그래픽 기능을 사용하는 사용자 인터페이스) 프로그래밍, 데이터 분석, 사물 인터넷 분야에 사용된다.
소통을 위해 존재하는 언어, 컴퓨터와 소통할 수 있는 흥미로운 언어를 공부해보는 것은 어떨까. 다양한 프로그래밍 언어를 활용해 자신만의 코드를 구성한 후 컴퓨터에 여러 명령을 실행해 결과를 내는 값진 과정을 경험하기를 바란다.
각 프로그래밍 언어를 활용해 출력할 문구는 하단의 문구로 동일하다. ‘~~~’에는 활용한 프로그래밍 언어가 들어간다.
사이언스타임즈는 한국과학창의재단 주관하에 운영되는 인터넷 과학신문입니다. 사이언스타임즈는 과학기술, 과학문화, 과학교육 등 과학과 융합한 관련 뉴스를 신속하고 정확하게 취재해 보도합니다. 이것은 '~~~'로 출력한 값입니다.
▲ 해당 문구는 프로그래밍 언어 중 C언어로 공통 문구를 구현한 모습이다. ⓒ정수빈 리포터
▲ 해당 문구는 프로그래밍 언어 중 자바로 공통 문구를 구현한 모습이다. ⓒ정수빈 리포터
▲ 해당 문구는 프로그래밍 언어 중 파이썬으로 공통 문구를 구현한 모습이다. ⓒ정수빈 리포터
다음 사진에서 보면 알 수 있듯, 같은 듯 다르게 코드 구현에 차이가 있음을 확인할 수 있다. 예를 들어, C언어와 자바에는 {}가 사용되는 반면, 파이썬에서는 {}가 사용되지 않는다. 또한, 출력을 위해서 같은 뜻을 나타내는 것이기는 하지만, C언어에서는 printf()로, 자바에서는 println()을, 파이썬에서는 print()를 사용한 것을 확인할 수 있다. 이처럼 각 프로그래밍 언어에서 사용하는 문법과 코드가 상이함을 확인할 수 있다.
(1920)
로그인후 이용 가능합니다.
채식 다이어트가 고관절 골절 위험과 연관이 있을 수 있다는 연구 결과가 나왔다. 고관절 골절은 허벅지 뼈(대퇴골)의 위쪽 끝(골두)이나 목 부분(경부)에서 발생하는 골절로 주로 노인들의 낙상이 원인으로 회복이 매우 어렵다. 영국 리즈(Leeds) 대학 식품과학·영양학 대학의 제임스 웹스터 영양역학 교수 연구팀이 35~69세 여성 2만6천318명을 대상으로 거의 20년에 걸쳐 진행된 '여성 코호트 연구'(Women's Cohort Study) 자료를 분석한 결과 이 같은 사실이 밝혀졌다고 의학 뉴스 포털 메드페이지 투데이(MedPage Today)와 메디컬 익스프레스(MedicalXpress)가 11일 보도했다.
쓰레기 매립지에서 음식물 쓰레기 등이 썩으면서 내뿜는 온실가스인 메탄이 지금까지 매립지 규모와 부패율 등을 토대로 추정해온 것보다 훨씬 더 많은 것으로 나타났다. 로이터통신 등 외신에 따르면 네덜란드 우주연구소 대기과학자 요아네스 마사커스가 이끄는 연구팀은 인도 뭄바이를 비롯한 4개 도시의 첨단위성 자료를 분석한 결과, 2018∼2019년 쓰레기 매립지의 메탄 배출량이 이전 추정치의 1.4∼2.6배에 달했다고 과학저널 '사이언스 어드밴시스'(Science Advances)에 발표했다.
현재 사용되는 리튬 이온 전지의 충전 방식이 배터리의 성능을 저하시킬 수 있다는 국내 연구 결과가 나왔다. 한국과학기술연구원(KIST)은 에너지저장연구센터 장원영 박사와 전북분원 탄소융합소재연구센터 김승민 박사 공동연구팀이 보편적인 리튬이온전지 충전방식으로 통용된 '정전류-정전압' 방식이 충전전압 안전 상한선에서는 배터리의 성능을 저하시킨다는 점을 밝혀냈다고 11일 밝혔다.
다세포 생물 중 가장 하등동물로 분류되는 해면이 물속의 영양분을 섭취하면서 걸러낸 필요 없는 물질을 점액에 섞어 재채기로 배출하는 장면이 생생하게 포착됐다. 이 점액 물질은 해면 주변의 다른 생물에게 먹이가 되는 것으로 나타났다. 네덜란드 암스테르담대학의 해양생물학자 야스퍼 드 괴이즈 박사가 이끄는 연구팀은 해면이 재채기를 통해 자신의 몸을 정화하고 있다는 점을 보여주는 연구 결과를 생물학 저널 '커런트 바이올로지'(Current Biology)에 발표했다.
어떤 암 종양을 둘러싼 생태계를 종양 미세환경이라고 한다. 암 종양과 주변 미세환경은 끊임없이 상호작용을 하고, 이것은 당연히 종양의 성장에 영향을 미친다. 종양 미세환경에서 매우 중요한 부분이 '세포외 기질'(extracellular matrix)이다. 콜라겐은 체내 단백질의 약 30%를 차지하지만, 종양 미세환경에서도 중요한 요소다. 하지만 콜라겐이 종양에 어떤 영향을 미치는지는 알려진 게 거의 없다. 인체 내 콜라겐이 암의 발달과 전이에 직접 관여한다는 게 과학적 연구를 통해 밝혀졌다.
카스파아제(caspase)는 프로그램 세포사에 꼭 필요한 프로테아제(proteaseㆍ단백질 분해 효소)다. 카스파아제가 활성화하면 세포 구성 요소가 분해되면서 세포 사멸이 일어난다. 주변에 피해를 거의 주지 않는 이런 유형의 프로그램 세포사는 병원체 감염이나 스트레스로부터 유기체를 보호하는 데 중요한 역할을 할 수 있다. 실제로 카스파아제 결핍은 종양 발생의 원인이 되기도 한다.
기온이 꾸준히 상승하는 지역에 서식하는 도마뱀이 늙은 유전자를 지닌 새끼를 낳을 가능성이 있다는 연구 결과가 나왔다고 워싱턴포스트(WP)가 8일(현지시간) 보도했다. 프랑스 국립해양개발연구소(IFREMER) 연구팀은 미국 국립과학원회보(PNAS)에 게재한 논문에서 프랑스 중부 마시프상트랄 고원지대에 사는 '태생 도마뱀'(viviparous lizard)을 10여 년간 관찰한 결과, 열에 노출된 모집단에 속한 암컷의 염색체 구성 조직인 텔로미어(Telomere)가 뭉툭해진 상태로 유전된다는 사실을 확인했다고 밝혔다.