Tech Blog/Info(Linux,etc)

C언어와 Java, python 등의 차이점

EXPRESSIONS HAVE POWER 2021. 6. 18. 17:47

1. C언어

 

- C언어는 절차지향 언어이다.

- 시스템 프로그래밍이 가능하다.

- 이식성을 갖춘 프로그램을 만들 수 있다.

(프로그래밍계의 에스페란토어!)

- 작고 효율적이다. 

(C로 짜여진 코드는 속도가 빠르고 바이너리 크기가 적다.)

 

** 초보자들에게 어려울 수 있음. 

절차지향적이라 순차적인 처리가 중요함. 

디버깅이 어려워 학습자가 어려워함.

 

 

 

2. Java

- 썬마이크로 시스템즈에서 개발, 현재는 오라클에서 관리 중

- Java는 객체지향 언어이다.

- Java에서는 class 

- 자바 프로그램은 기계어가 아닌, 바이트 코드 파일(class)로 구성 된다. 바이트 코드 파일은 JVM이라는 자바 가상기계의 번역기가 필요하다. JVM 으로 다양한 운영체제에서 독립적으로 사용이 가능하다.

- 메모리 자동정리 

(자바는 메모리(RAM)를 자동관리 하므로, 개발자는 메모리를 관리하는 수고를 덜 수 있다.)

- 라이브러리 풍부 

 

3. Python 

- 가장 대중적인 언어

- 속도가 살짝 느림

- 데이터 사이언스 등 다양한 분야에서 사용된다.

- 메모리 자동정리 

- Python은 객체 지향 언어이다.

- 라이브러리 풍부 (pip install)

 

 

** 객체 지향 언어

** 절차 지향 언어

 

- c언어, 파스칼, 코볼 등