1) C언어 - 컴파일러 언어 - low level - 절차 지향 언어 - 자원 관리(임베디드 시스템, 메모리 설계 등)에 사용됨 - 직접 메모리 관리를 해주어야 함 - 정적 언어 2) Java - 컴파일러 언어 - high level - 객체 지향 언어 - 보안에 강함 - 메모리 관리는 Gabage Collector이 직접 담당 - 정적 언어 3) JavaScript - 인터프리터 언어 - 객체 지향 언어 - 보안에 취약함 - 동적 언어 * 인터프리터 언어 : 소스 코드를 한 줄씩 읽어들여 실행 * 컴파일러 언어 : 컴파일러를 통해 전체 소스코드를 한 번에 기계어로 변환 * 정적언어 : 변수 선언 시 자료형을 지정해줘야 함 * 동적언어 : 변수 선언 시 자료형 지정이 필요치 않음