Language(python, C/C++, Java)

2021. 5. 29. 10:56딥러닝 & 머신러닝

python

가독성이 높고 쉬운 문법 덕택에 다른 프로그래밍 언어보다 빠른 습득이 가능하다는 특징이 있다. 

 

스크립트 언어(script language)

컴파일 과정 없이 interpreter(해석기)가 소스 코드를 한 줄씩 읽고 곧바로 실행하는 스크립트 언어이다. 

(컴파일 언어는 인간이 작성한 코드를 기계어로 번역해 실행하는 것으로 실행 및 수정에 비교적 많은 시간을 소요하지만, 한 번 기계어로 번역되면 빠른 실행 속도를 보여준다.

 

동적 타이핑(dynamic typing)

변수의 자료형을 지정하지 않고 단순히 선언만해도 값을 지정할 수 있다. 

 

독립적인 플랫폼(Platform-independent)

Linux, Unix, Windows, Mac 등 대부분의 운영체제(Operating System, OS)에서 모두 동작한다. 

 

<장점>

1. 간결하고 쉬운 문법 

2. 빠른 개발 속도 : 간결한 문법으로 다른 프로그래밍 언어에 비해 개발 속도가 빠르다.

3. 높은 확장성 및 이식성 : 대표적인 글루(Glue)언어(=접착제 언어)에 해당한다. 다른 언어나 라이브러리에 쉽게 접근해 연동할 수 있다.

4. 활발한 생태계 : 수많은 표준 라이브러리를 제공한다. 다른 개발자가 배포한 패키지를 pip 명령어를 통해 간단하게 설치할 수 있다.

 

<단점>

1. 속도가 느리다. (인터프리터 언어와 관련)

2. 런타임 에러가 많다.

 


C/C++

https://post.naver.com/viewer/postView.nhn?volumeNo=22418167&memberNo=25379965

C언어에서 기능을 하나 더한 것이 C++이다. 그 기능이 class다. class를 이용하여 객체를 표현할 수 있다. 그래서 C++은 최초의 객제지향형언어다. 

 

C와 C++의 차이점은 아래 블로그에 상세히 나와있다.

https://codingcoding.tistory.com/287

 

C언어와 C++ 차이점 비교 (객체지향과 하향식)

C언어와 C++ 차이점 비교 (객체지향과 하향식) C++은 C++이란 이름에서 나타나듯, C의 Superset입니다. 그래서 C는 C++의 코드를 실행할 수 없습니다. 1. C는 절차적 프로그래밍(Procedural), C++은 다중 패러

codingcoding.tistory.com


Java

다른 언어와 환경보다 상당히 많은 장점이 있어 거의 모든 프로그래밍 테스크에 적합하다.

 

<장점>

1. 배우기 쉽다.

2. 자동 메모리 관리(Garbage Collecor)

자동으로 메모리 관리를 해주기 때문에 프로그래머는 따로 메모리를 관리 하지 않아도 된다. 

3. 운영체제에 독립적이다.

4. 객체지향언어

객체 지향 프로그래밍(Object-Oriented Programming, OOP)은 컴퓨터 프로그래밍의 패러다임의 하나이다.

5. 다중 쓰레드를 제공

하나의 프로그램이 동시에 하나 이상의 처리를 수행하는 것을 의미한다.

 

<단점>

1. 속도가 느리다.(interpreter 언어)

2. 불편한 예외처리

다른 언어와는 달리 프로그래머 검사가 필요한 예외가 등장한다면 무조건 프로그래머가 선언을 해줘야 한다. 그렇지 않으면 컴파일조차 거부한다. 

 

 

 

 

참고한 링크 : 

https://library.gabia.com/contents/9256/

 

가비아 라이브러리

IT 콘텐츠 허브

library.gabia.com

 

https://jjangsungwon.tistory.com/85

 

Python의 장점과 단점

Python은 최근 들어서 많은 사람들이 사용하고 있는 대표적인 언어 중 하나이다. 위 그림은 2020년도 12월 프로그래밍 언어들의 인기 순위인데 Python은 3위에 랭크되어 있으며 성장률이 가장 높다. Py

jjangsungwon.tistory.com

https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=jinpyo0311&logNo=220471091904 

 

Java란?(자바의 장점,단점)

JAVA란? -자바 언어는 객체지향프로그래밍 언어로서 1991년 제임스 고슬링을 포함한 썬 마이크로시스템...

blog.naver.com

 

-공부하면서 다른 언어도 계속 추가할 예정-