▷ 기계가 직접 알아들을 수 있는 기계 중심의 언어.
▷ 전기 신호인 ON/OFF(켜짐/꺼짐)=1/0로 동작한다. 0과 1로 표현되는 수를 우리는 2진수라 부르고, 이러한 2진수로 이뤄진 값으로 작성하는 프로그래밍 언어를 기계어(Machine Language)라고 부른다.
▷ 숫자로만 된 언어는 유지보수와 사용이 굉장히 어려웠기에 이와 1:1로 대응하는 기호를 만들어 프로그래밍 하게 되었다. 그러나 기호로 작성된 프로그램은 기계가 바로 알아듣지 못해 이를 원래의 숫자로 변환하는 과정이 필요해졌는데 이러한 과정에서 사용되는 도구를 컴파일러(Compiler), 기호로 작성된 언어를 어셈블리어(Assembly Language)라고 한다.
▷ 지금은 아주 특수한 경우를 제외하면 기계어와 어셈블리어로 프로그램 개발을 하지 않는다.
▷ 사람 중심의 언어. 작성한 소스코드를 컴파일러가 번역한다.
- FORTRAN : 최초의 고급언어 중 하나. 과학 계산용으로 주로 사용된다. 현재 공대에서 많이 사용한다.
- COBOL: FORTRAN과 더불어 역사가 오래된 언어. 일반 업무에서 사용할 목적으로 만들어졌으며 지금도 은행 등에서 사용된다.
- PROLOG: 논리형 프로그래밍 언어. 논리식을 토대로 오브젝트와 오브젝트 간 관계에 관한 문제를 해결하기 위해 사용된다.
- C : 1972년 미국 벨 연구소의 데니스 리치에 의해 개발된 고급 언어. 시스템 프로그래밍에 가장 적합한 평가를 받는 언어.
- Erlang : 스웨덴의 에릭슨에서 개발한 함수형 병행성 프로그래밍 언어. 통신 인프라를 위한 언어.
- Lisp : List Processor의 약자. 대표적인 함수형 언어. 프로그래밍 언어의 역사를 말할 때, 현대의 컴퓨터를 위해 등장한 고급 언어 중 가장 오래된 것이 포트란이며 두번째로 오래된 것이 리스프이다.
- Swift : 2014년 WWDC(Apple WorldWide Developers Conference)에서 공개한 프로그래밍 언어. 최근에 만들어진 언어로 현대 프로그래밍 언어의 발전을 대다수 계승한 모던 프로그래밍 언어라고 할 수 있다.
- Kotlin : IntelliJ IDEA의 개발사 JetBrains에서 2011년에 개발한 프로그래밍 언어. JVM기반의 언어로 Java와 상호운영이 100% 지원된다. Swift처럼 현대 프로그래밍 언어의 발전을 대다수 계승한 모던 프로그래밍 언어라 할 수 있다.
- Clojure : 클로저는 리치 히키(Ric Hickey)가 만든 리스프 프로그래밍 언어의 방언으로서 범용 함수형 언어다.
- Python : 읽기 쉽고 적은 코드를 사용해 프로그래밍 입문자도 프로그램 개발이 가능하다. 많은 사람에게 추천되는 언어. 데이터 과학에서도 자주 사용되며 웹사이트 개발에서 많이 사용된다. 최근 파이썬은 ML (machine learning)에서도 많이 사용된다.
- JAVA : 1995년 썬 마이크로 시스템즈에서 개발한 객체지향 프로그래밍 언어. 거의 매년 세계에서 가장 많이 사용되는 프로그래밍 언어 1위를 차지하고 있다.
▷ 사람마다 보는 관점이 다르기에 순위를 매기는 건 어렵지만 기업이나 언론에서는 github, stackoverflow 같은 사이트에서 언급되는 횟수를 활용하기도 한다. TIOBE 사이트에서도 매년 검색 엔진을 통해 분석한 인기 순위를 발표한다.
- Python : 상단 설명과 같음.
- PHP : 웹의 80% 이상은 PHP로 만들어진다. 웹 개발에서 많이 사용된다.
- JavaScript : 프론트 개발자라면 반드시 알아야 할 언어. 서버 작성 프로그램으로도 점차 영역을 넓히는 중이다.
- JAVA : 엔터프라이즈 소프트웨어 환경에 잘 맞는 언어. 큰 규모의 소프트웨어 개발에 많이 사용된다. JAVA언어를 지원하는 수많은 커뮤니티에 의해 지속적으로 발전되어 훌륭한 구조와 설계 기법들이 잘 갖춰져 있다.
- Ruby : 빠른 개발에 널리 사용된다. 단순하고 세련된 웹 어플리케이션을 만들 수 있어 인기 있는 언어 중 하나.
생각해보기
1. 프론트엔드부터 서버 개발까지 한 가지 프로그래밍 언어를 사용해 개발한다면 어떤 언어를 사용하는 게 좋을까?
2. 다양한 라이브러리, 쉬운 개발, 읽기 쉽고 적은 코드를 장점으로 한다면 어떤 언어를 사용하는 게 좋을까?
3. 프로그래밍 언어에게 좋은 커뮤니티가 있다는 건 어떤 장점을 가질까?
1 : 자바스크립트. 프론트엔드-백엔드를 통틀어 하나의 언어로 개발이 가능한 언어이기 때문에.
2 : 파이썬. 읽기 쉽고 적은 코드가 장점. 개발이 쉽다.
3 : 이용자가 꾸준하고 정보를 공유하고 소통할 수 있는 창구가 마련되어 있어 지속적인 발전과 사용이 가능.
엔터프라이즈 소프트웨어 환경 : 엔터프라이즈 소프트웨어는 개인 사용자가 아닌 기업 또는 정부에서 사용하는 소프트웨어다. 수많은 데이터 처리와 작업(Transaction)이 동시에 행해지는 거대한 규모의 환경이며, 엔터프라이즈 생산성 및 효율성 향상을 목표로 한다. | 엔터프라이즈 소프트웨어란 무엇인가요?