CWN(CHANGE WITH NEWS) - IoT 개발 위한 3가지 프로그래밍 언어 "C, 자바, 파이썬"

  • 흐림남원7.5℃
  • 구름많음진주10.6℃
  • 구름많음보은5.7℃
  • 구름많음수원7.3℃
  • 구름많음완도10.8℃
  • 구름많음남해10.1℃
  • 흐림흑산도9.3℃
  • 구름많음대구10.3℃
  • 구름많음고흥11.4℃
  • 구름많음보성군9.6℃
  • 구름많음목포9.3℃
  • 흐림전주7.3℃
  • 구름조금경주시9.7℃
  • 흐림고산11.5℃
  • 흐림속초9.4℃
  • 구름많음광양시8.8℃
  • 구름조금합천11.1℃
  • 맑음울산11.7℃
  • 흐림상주5.0℃
  • 구름많음거제12.3℃
  • 구름많음광주9.0℃
  • 구름많음장흥9.8℃
  • 구름많음청송군7.3℃
  • 구름많음의성7.7℃
  • 구름많음순천7.2℃
  • 구름많음거창7.4℃
  • 맑음밀양12.2℃
  • 구름많음이천8.4℃
  • 구름많음추풍령7.1℃
  • 맑음영덕9.5℃
  • 구름많음성산11.6℃
  • 맑음양산시13.0℃
  • 구름많음진도군9.7℃
  • 흐림강화5.6℃
  • 구름많음안동8.3℃
  • 흐림고창8.3℃
  • 구름조금의령군9.4℃
  • 맑음창원11.3℃
  • 구름많음구미10.3℃
  • 흐림파주5.3℃
  • 흐림울릉도10.2℃
  • 구름조금여수10.5℃
  • 구름조금대전9.0℃
  • 구름많음서청주8.1℃
  • 구름많음해남10.3℃
  • 흐림보령8.6℃
  • 구름조금서귀포13.0℃
  • 흐림제주12.0℃
  • 비포항9.0℃
  • 구름많음임실7.4℃
  • 구름많음강진군10.0℃
  • 구름많음영월7.3℃
  • 구름많음산청7.5℃
  • 구름많음영천7.2℃
  • 흐림정선군4.9℃
  • 흐림동해11.2℃
  • 구름많음세종8.4℃
  • 구름많음영주6.3℃
  • 흐림홍성8.0℃
  • 구름많음충주5.8℃
  • 흐림철원5.5℃
  • 흐림강릉11.0℃
  • 맑음북부산12.2℃
  • 구름많음통영12.0℃
  • 구름많음고창군8.6℃
  • 맑음부산12.5℃
  • 맑음김해시11.7℃
  • 구름많음정읍8.5℃
  • 흐림영광군8.3℃
  • 구름많음양평7.8℃
  • 구름많음제천6.0℃
  • 흐림동두천5.5℃
  • 구름많음홍천6.5℃
  • 구름많음부여9.0℃
  • 구름많음부안9.6℃
  • 구름많음함양군7.4℃
  • 구름많음봉화6.1℃
  • 구름조금금산7.6℃
  • 흐림백령도6.5℃
  • 흐림태백4.7℃
  • 흐림대관령2.7℃
  • 비북강릉9.8℃
  • 구름많음천안8.4℃
  • 흐림순창군8.3℃
  • 흐림인천6.3℃
  • 구름많음군산8.2℃
  • 흐림인제5.2℃
  • 구름많음문경7.4℃
  • 흐림원주7.2℃
  • 구름많음춘천6.5℃
  • 박무서울6.9℃
  • 구름조금북창원12.3℃
  • 흐림서산7.5℃
  • 흐림울진10.9℃
  • 흐림장수5.3℃
  • 비북춘천6.0℃
  • 구름많음청주8.8℃
  • 2025.11.25 (화)

IoT 개발 위한 3가지 프로그래밍 언어 "C, 자바, 파이썬"

박병화 / 기사승인 : 2019-01-24 14:08:00
  • -
  • +
  • 인쇄

10년 전만 해도, 사용량에 따라 성능을 개선할 수 있는 에어컨을 사용한다거나 자율적으로 교통을 항해할 수 있는 자율주행차(self-driving cars)를 운행해 볼 수 있다고 상상할 수 있었을까. 하지만 둘 다 현실이 됐다. 이러한 스마트한 기기들이 어떻게 작용하는지 궁금하다면, 그 대답은 사물 인터넷(Internet of Things, IoT)이다.

잘 알다시피, IoT 기술의 목적은 데이터를 측정, 수집 및 분석해 더 나은 고객 경험(customer experience)을 제공하고 제품의 품질을 높이는 것이다. 다시 말해, IoT 기능은 도시, 집, 그리고 사업을 더 나아지게 만드는 것이다.

IoT 기술의 세 가지 단계인 측정(measurement), 수집(collection), 분석(analysis)은 각각 제약 조건이 서로 다른 작업 환경을 가지고 있다. 일례로  데이터는 기능이 제한된 디바이스의 센서를 통해 측정된다. 그런 다음 이 데이터는 스마트폰의 앱과 같은 게이트웨이(gateway)와 디바이스 보다 완전히 다른 컴퓨팅 성능을 가진 소형 콘솔(console)을 사용해 집계되고 전송된다. 이 데이터는 클라우드를 이용해 저장 및 분석된다.

따라서 소프트웨어 개발 단계마다 IoT 프로그래밍 언어가 다를 수 있다. 실제 이클립스 재단(Eclipse Foundation)이 2018년 1월부터 3월까지 502명이 참여한 IoT 개발자 설문조사를 진행했는데, 설문조사에 따르면 개발자들은 C, C , Java, JavaScript, Python, PHP와 같은 몇 개의 다른 IoT용 프로그래밍 언어를 사용하는 것으로 나타났다. 특히 이번 조사에 따르면 자바가 66.5%의 인기를 얻으며 전반적인 리더라는 것을 보여준다. C는 56.9%로 그 뒤를 이었고, 자바스크립트(JS)와 파이썬(Python)이 각각 47.1%와 46%로 뒤를 이었다. 이클리스 재단은 2015년부터 전 세계 IoT 개발업체에서 일하는 개발자들을 대상으로 이 분야의 전반적인 환경, 과제, 동향을 파악해 왔다.

이와 관련 최근 IoT 전문매체 아이오티포올닷컴(iotforall.com)은 C, 자바, 파이썬 등 IoT 개발을 위한 상위 3개 프로그래밍 언어에 대해 분석해 보도했다.

먼저 C 언어는 디바이스 수준에서 컴퓨팅 파워(computing power, 연산력)은 상당히 제한적이다. 낮은 수준의 코드(즉, 하드웨어 레이어에 가까운 코드)를 쓰는 데 이상적이고 프로세싱 파워(processing power, 처리능력)이 많이 필요하지 않으며 RAM과 직접 작동할 수 있다. 또한 C는 마이크로컨트롤러 프로그래밍(microcontroller programming)의 공통 언어로, 센서 및 게이트웨이 하드웨어 레이어 애플리케이션의 경우 쉽게 처리할 수 있다. 하지만 C는 매우 낮은 수준의 언어이기 때문에 개발자들이 능숙하지 않으면 C의 신택스(syntax, 구문)이 빠르게 어수선해지고 흐트러질 수 있다.

다음으로 자바는 프로그래밍 세계에서 널리 사용되고 가르쳐진다. IoT 애플리케이션에서는 자바 가상 머신(Java Virtual Machine, JVM) 코드를 어떤 칩으로도 전송할 수 있다. 이 코드는 스마트폰과 서버처럼 JVM이 흔한 곳에서 사용될 수 있다. IoT 소프트웨어에 이상적으로 적합하도록 작은 기계에도 사용할 수 있다. 이밖에 자바 언어는 IoT를 위한 객체지향 프로그래밍 언어(object-oriented programming language)다. 또한 IoT 응용프로그램에 유용한 내장 기능을 가지고 있고 휴대성이 뛰어나며 하드웨어 제한이 없다.

마지막으로 파이썬은 고급 스크립팅(scripting) 언어로서의 입지를 구축해 가고 있다. 파이썬은 많은 유용한 라이브러리(library, 파일들의 모음)을 가지고 있고, 더 적은 수의 코드 행수(lines of code)로 더 많은 것들을 할 수 있다. 이 때문에IoT 시스템 데이터 분석에 이상적이다. 또한 파이썬의 소스 코드는 신택스가 깨끗하기 때문에 컴팩트하고 알기 쉽다. 아울러 배우기 쉽고, 널리 사용되며, 강하게 지지된다. 이밖에 똑같이 복잡한 코드베이스(codebases)를 유지하지 않고도 복잡한 데이터 스트림(data streams)을 관리하고 구성할 수 있다. 파이썬은 계산 수요(computational demand)가 적당히 낮은 단순한 모듈형 프로젝트(modular projects)로 인기를 얻고 있다.

한편 매체는 "IoT 사용이 증가함에 따라 제품 성능, 도전, 기회에 대한 더 많은 데이터가 생성될 것이다. 그리고 어떤 프로그래밍 언어가 IoT 제품이나 서비스에 더 잘 적용되는지 더 잘 이해할 수 있을 것이다"면서 "이 데이터를 분석하면 IoT 개발의 특정 시나리오에 가장 적합한 시스템 레벨 프로그래밍 언어를 더 잘 이해할 수 있다. 그때까지 IoT 소프트웨어 개발은 여러 언어로 진행될 전망이다"고 전했다.

[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]

최신기사

뉴스댓글 >

- 띄어 쓰기를 포함하여 250자 이내로 써주세요.
- 건전한 토론문화를 위해, 타인에게 불쾌감을 주는 욕설/비방/허위/명예훼손/도배 등의 댓글은 표시가 제한됩니다.

댓글 0

Today

Hot Issue