-
IDEs, compilers, interfaces | CS50 Week 1Computer Science/CS 50 Harvard 2021. 11. 4. 20:43
Code to binary
#include <stdio.h> int main(void) { printf("hello, world\n"); }
위 코드를 컴퓨터에서 프로그램으로 돌리려면 어떻게해야할까? 다시 돌아가서 컴퓨터가 저것을 어떻게 알아들을 수 있을까? 우리는 먼저 저 모든 것들을 컴퓨터가 알아들을 수 있게 1과 0들로 만들어주어야한다. 이작업을 인간이 하기에는 너무 오래 걸리기때문에, 프로그래밍을 하는 의미가 없어진다. 그래서 개발자들은 IDE들을 쓴다.
IDE
IDE라는것은 integrated development environment의 줄임말인데, 코드를 쓰고, 번역하고, 돌릴 수 있게 해주는 툴이다. IntelliJ, Eclipse, Visual Studio등이 가장 유명한 IDE들이다. 자, 그렇다면 Visual Studio를 컴퓨터에 설치한 후, 아래와 같은 파일을 만들어보자. 설치는 Microsoft 페이지에서 받을 수 있다.
위와같이 hello world프로그램을 만들수 있다. 그렇다면, 이 코드를 machine code 또는 1 & 0으로 번역해줘야 컴퓨터가 실제로 이것을 "계산" 해서 "동작"할 수 있다. 이것은 어떻게 가능할까?
바로 compiler가 어떤 언어를 다른언어로 바꾸어주는 프로그램이다. 위에서 보인 hello.c 라는 소스코드를 컴퓨터가 알아들을 수 있는 machine code로 번역을 해주는것이다.
VS Code 인터페이스의 아래쪽을 보면, terminal이 있는데, 명령어들을 쓸 수 있는 공간이다.아래 터미널에서 아래와같이 make를 이용해서 컴파일을 해주고 hello.c 프로그램을 돌릴 수 있다.
> make hello cc hello.c -o hello > ls hello hello.c > ./hello hello, world
./hello 는 지금 현재 폴더에서(.) hello라는 프로그램을 돌리라는 명령어이다. 이 폴더에 가보면 make로 인해 생성된 hello라는 프로그램을 볼 수 있다.
Reference
'Computer Science > CS 50 Harvard' 카테고리의 다른 글
main, header files, commands | CS 50 Week 1 (0) 2021.11.06 Functions, arguments, return values, variables | CS50 Week 1 (0) 2021.11.05 C | Harvard CS50 Week 1 (0) 2021.11.04 Abstraction, Condition and More in Scratch | Harvard CS50 Week 0 (0) 2021.10.31 Scratch | Harvard CS50 Week 0 (0) 2021.10.30