프로그래밍 언어란? 2 [고수준 프로그래밍 언어, IDE]
고수준 프로그래밍 언어에 대해서 설명하겠다.
고수준이래서 대단한 언어고, 저수준이래서 가치가 없는 언어고 이런 게 아니다.
그저 컴퓨터라는 Hardware라는 관점에서 고수준과 저수준을 나눈 것이니 오해 없길 바란다.
고수준 프로그래밍 언어론 현재 우리가 쉽게 찾아볼 수 있는 언어들이 있다.
대표적으론 C, C++, 파이썬, Java, Javascript, php 등이 있다.
여기서 경제성을 고려하여 속도와 성능을 중시하는 언어로는 C와 C++, Java 정도등이 있다.
이유는 위의 3 언어는 컴파일 과정(일종의 번역)이란 걸 거치는 언어기 때문에
컴퓨터에서 동작 속도가 빠르다.
ㄴ 비유하자면 한국인의 경우 번역된 원서[컴파일]를 읽는 속도와 영어로 된 원서[인터프리터]를 읽는 속도와 어떤게 더 빠르고 효율이 있을까?
파이썬이나 Javascript, php 등은 인터프리터 언어로 코드를 그 때 그 때 한 줄씩 번역하면서 실행하는 프로그램으로
실행속도가 느릴 수 밖에 없다.
그 외 조금 깊이 들어가보자면 C와 C++ 같은 경우엔 포인터라는 기능으로 동적 메모리 지정이 가능하기 때문에
한정된 자원에서 극한의 성능을 뽑아낼 수 있다.
(오류나면 온전히 개발자가 다 찾아내서 고쳐야 된다는 점에서 쉽지 않은 언어라 할 수 있다.)
웹 쪽에선 C와 C++로 코딩하기보단 Java로 많이들 코딩하는데 이유는 시간당 효율이 이 편이 낫기 때문이다.
(C와 C++가 사용이 안된다는 것은 아니다. 백엔드 분야에선 C 코드가 꽤 쓰인다 ^^..)
그리고 애시당초 Java도 꽤 훌륭한 컴파일 언어기 때문에 메모리 쪽에서 큰 누수도 없기 때문이다.
Java의 경우 가비지 컬렉터란 녀석이 자동으로 메모리 리크에 대한 위험 부담을 짊어지고 있기 때문에
비교적 안전한(?) 언어라 할 수 있다.
뭐 더 깊은 내용은 각자들 공부하시기 바란다.
여기서 써봤자 글이 길어지고 난해해지기 때문에 줄인다.
IDE Integrated Development Enviornment
직역하자면 통합 개발 환경이다.
우리가 문서를 작성할 때 윈도우 기본으로 제공되는 텍스트 파일을 활용해도 되나
좀 더 편리한 활용성을 위해 한글프로그램이나 워드를 쓰듯
개발할 때도 텍스트 파일을 써도 되나, IDE라는 각 언어에 맞게 셋팅된 통합 개발 환경을 설치하여 사용하곤 한다.
IDE를 사용하면 좋은 점은 비교적 오탈자나 Error에 대해서 쉽게 파악할 수 있으며 새로운 기능에 대한 피드백을 어느정도 받을 수 있다.
IDE의 예로는
이클립스(Java 보통 무료),
인텔리제이(Java 유료),
파이참(Python 유료, 무료 둘 다 있음),
안드로이드 스튜디오(인텔리제이의 안드로이드 개발용 버전으로 Java 혹은 코틀린 사용),
엑스코드(애플개발, Mac에서 작동. Swift 언어),
비쥬얼 스튜디오(마이크로소프트 개발, 무거운 프로그램이나 그만큼 기능이 많음),
VSC(비쥬얼 스튜디오 코드로 마이크로 소프트에서 개발하였다. 가벼운 프로그램으로 그저 에디터 정도로 봐도 된다.) 등이 있다.