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)
** 객체 지향 언어
- 시뮬라 67(영어: Simula 67): 최초의 객체 지향 언어로 알려져 있음)
- 스몰토크
- 비주얼 베이직 닷넷
- 오브젝티브-C
- C++
- C#
- 자바
- 객체지향 파스칼
- 델파이
- 파이썬
- 펄
- 루비
- 액션스크립트
- ASP
- 스위프트
** 절차 지향 언어
- c언어, 파스칼, 코볼 등