반응형
프로그래머가 아니더라도 IT가 세상을 잠식하고 있는 현실에서 프로그래밍 언어에 대한 기본적인 개요를 아래와 같이 정리해 봅니다. 수많은 언어들 중에 개발자들이 주로 쓰고 있는 프로그래밍 언어들을 상식 수준에서 어떤 차이가 있는지 정도로만 알아보자.
1. 프로그래밍 언어 : C로 시작하는 언어들
1) C
- C는 1969~1973년 사이에 데니스 리치가 벨 연구소에서 개발한 언어입니다. 오래된 프로그래밍 언어지만 아직도 사용되고 있으며 요즘 쓰이는 주요 프로그래밍 언어 다수가 C에 뿌리를 두고 있습니다.
- C를 익히고 나면 C++, C#, 자바, 자바스크립트 등 많은 언어를 더 쉽게 배울 수 있습니다.
- C는 개발자가 컴퓨터 메모리에 접근해서 저수준 영역까지 조작할 수 있게 해주는 저수준(low level) 언어입니다.
- 수많은 운영 체제, 저수준 하드웨어, 임베디드 시스템, 게임에서도 사용되는 언어입니다.
2) C++
- 벨 연구소의 비야네 스트롭스트룹(Bjarne Stroustrup)이 C 언어에서 시뮬라(Simula)의 객체 지향성, 클래스, 가상 함수 등과 같은 유용한 기능을 활용하려고 C를 확장한 데서 비롯되었습니다.
- 엄밀히 말해 C++는 C의 상위 집합이다. C 프로그램은 C++ 컴파일러로 컴파일해야 하기 때문입니다.
- 업데이트가 꾸준히 이뤄지고 있으며, 매우 복잡한 언어이기 때문에 초보자에게는 추천하지 않으며, 강력한 만큼 조심히 다뤄야 할 언어입니다.
3) C#
- C#은 원래 마이크로소프트가. NET 런타임 환경을 대표하는 언어로 만들었습니다.
- 초기 C#은 자바와 아주 많이 유사해서 자바의 복제판이라고 일컬어지던 때도 있었습니다.
- C#은 C++과 비슷하다고 할 수 있는 객체지향 언어, 훨씬 더 간단하다.
2. 파이썬
- 가독성을 중요하게 고려해서 만든 단순한 언어
- 1989년 반 로섬(Van Rossum)이 만들었다.
- 파이썬은 객체지향적으로도 절차 지향적으로도 함수형으로도 쓸 수 있다.
- 인터프리터 언어(Interpreted language)다. 컴파일하지 않는다는 의미
- C++, 자바, C#과 비교해보면 파이썬의 코드는 훨씬 간결하다.
- 구글에서 사용하는 주요 프로그래밍 언어 중 하나, 초보자가 배우기에도 좋은 언어다.
3. 루비
- 1993년경 일본에서 유키히로 '마츠' 마츠모토 (Yukihiro 'Mats' Matsumoto)가 만들었다.
- 객체지향적인 스크립트 언어를 만들겠다는 아이디어에서 탄생한 언어로 초창기에는 관심을 받지 못하다가 최근에야 인기가 높아지기 시작
- 2003년 데이비드 하이네마이어 한슨(DHH)이 만든 Ruby on Rails, RoR는 루비의 성공에 큰 기폭제 역할
- 초보용 프로그래밍 언어
4. 자바스크립트
- 1995년 브렌던 아이크(Brendan Eich)가 단 10일 만에 개발한 언어.
- 자바스크립트는 C#, 자바, C++와 비슷해 보이지만 매우 다르게 작동.
- 애초에 단순한 웹용 스크립트 언어였지만 이제는 웹을 넘어서 광범위하게 쓰이는 기본 언어로 자리잡음.
- 인기의 주된 이유는 편의성과 보편성. [인터프리터 언어이기 때문에 컴파일하지 않아도 된다. 브라우저 안에서 실행될 뿐 아니라 명령 한 번만으로 작동된다.
- 웹 개발자라면 자바스크립트에 대한 기본적인 지식은 필수!
5. PHP
- 원래 1994년 라스무스 러도프(Rasmus Lerdorf)가 만들었고 2014년까지 명문화된 명세 하나 없이 진화함.
- 처음에는 간단한 웹 페이지를 동적으로 만들 수 있는 도구 모음에 불과했다.
- 오늘날 웹의 많은 부분을 구성하는 언어다. 페이스북도 처음에는 PHP로 작성됨.
- 블로그 소프트웨어 워드프레스 WordPress도 PHP로 만든다
6. 오브젝티브-C
- 1980년대 초 Brad Cox, Tom Love가 만들었다
- C에 스몰토크(SmallTalk)의 객체지향 기능을 더하겠다는 생각이 시발점. 그 후 거의 없어질 뻔한 오브젝티브-C를 애플이 사용.
- 이 언어를 쓰는 건 맥 개발자뿐이었다가 애플이 아이폰과 iOS를 소개하면서 수백만 명의 새로운 개발자가 이 언어를 쓰기 시작
- 배우기 어렵고 아주 간단한 것을 하는 데도 장황한 코드를 써야 한다.
- 요즘 iOS 개발자는 오브젝티브-C 보다 약간 더 친절한 스위프트를 쓸 수 있다.
7. 스위프트 Swift
- 애플이 선택한 새로운 iOS용 대표 언어
- iOS, OS X 개발에 쓰이는 애플의 코코아(Cocoa), 코코아 터치(Cocoa Touch) 프레임워크용으로 만들어졌다.
- 스위프트는 오브젝티브-C를 동적이고 유연하게 하는 인기 있는 기능 대부분을 지원하는 동시에 훨씬 더 단순하고 간결하다.
8. Go
- 구글이 최근에 만든 프로그래밍 언어
- 2007년 로버트 그리스머, 롭 파이크, 켄 톰프슨이 만들었다. C와 매우 비슷하며 추가 기능이 있고 훨씬 단순하다.
- Go에는 C와 달리 garbage collection 기능이 있어서 메모리를 관리하지 않아도 된다.
- 동시성 프로그래밍 (concurrent programming) 기능도 있어서 성능이 크게 좋아졌다
- 원래 시스템 프로그래밍 언어로 만들어진 언어이지만 나중에는 웹을 비롯한 다른 영역까지 퍼져나갔다.
9. 얼랭 Erlang
- 동시 및 분산 처리를 위해 설계된 기능적인 프로그래밍 언어
- 코드 핫 스와핑hot swapping을 지원하므로 애플리케이션을 멈추지 않고 코드를 변경할 수 있다.
- 얼랭은 오늘날 가장 안정적인 프로그래밍 언어이자 프로그래밍 환경으로 여겨진다.
반응형
'정보' 카테고리의 다른 글
SICA(시카) 중미통합체제 8개 회원국 소개 (0) | 2021.06.24 |
---|---|
김정숙 여사가 스페인 왕비에게 선물한 점자시계 닷워치 (0) | 2021.06.17 |
애덤 스미스의 국부론 - 보이지 않는 손 (0) | 2021.04.25 |
비트코인의 탄생 (0) | 2021.04.22 |
진로 심리 검사 (0) | 2021.04.22 |
댓글