C 2

[Java] 특징부터 C/C++ vs Java 실행 환경 차이 비교

Java 특징: WORA (Write Once Run Anywhere) 컴파일 : 고급 언어를 컴퓨터가 해석할 수 있는 기계어로 바꿔주는 과정 컴파일러: 컴파일 해주는 소프트웨어 C/C++ 등 자바 이전의 프로그래밍 언어들의 컴파일러는 기계어 코드로 변환할 때 프로그램이 실행될 대상의 컴퓨터의 CPU와 운영체제에 종속적인 코드로 변환한다. 위의 이유로 같은 코드를 다른 플랫폼(다른 CPU or OS)에서 실행하려면 아래 2가지 중 하나를 해야 함 다시 컴파일하기 플랫폼에 맞도록 코드를 수정 같은 리눅스인데 CPU가 다르면 다시 컴파일 or 코드 수정, 같은 CPU인데 리눅스의 것을 윈도우에서 실행하려고 해도 컴파일 or 코드 수정 필요 => 플랫폼 종속성(platform independence) 플랫폼 ..

Java 2024.04.03

[Java] 프로그래밍 언어의 진화 그리고 컴파일과 실행

프로그래밍 언어 프로그래밍 언어는 컴퓨터가 실행할 프로그램을 작성하는언어 컴퓨터의 CPU는 이진수(binary code)인 0과 1밖에 이해하지 못함 이진수 명령어들로 구성된 언어를 기계어(machine language)라고 함 기계어의 각명령을 ADD, SUB, MOVE 등 가급적 표현하기 쉬운 상징적인 니모닉 기호(mnemonic symbol)로 일대일 대응시킨 어셈블리어(assembly language)가 만들어짐 어셈블이어 역시 사람이 다루기 힘들고, 다양한 프로그램이나 자료를 효율적으로 표현하는데에 한계 => 사람이 이해하기 쉽고 복잡한 알고리즘, 프로그램 등 효율적 표현 위해 고급 언어 생겨남 고급 언어는 초기에 절차 지향 언어 형태를 거쳐 지금의 객체 지향 언어로 진화 C++, 자바, C#은..

Java 2024.04.03