300x250
✍️ 기본 자료형 VS 사용자 정의 자료형 여기 문제가 하나 있다. "정수 한 개를 저장하기 위한 변수 a를 선언하세요." int a; "정수형 변수 a를 선언했으면 a가 가진 메모리 공간에 10을 할당하세요." a = 10; 또 문제가 주어졌다. "책 한 권을 저장하기 위한 변수를 선언하세요." Book book; // ??? Book이라는 자료형이 담고 있을 정보는 무수히 많다. 책의 제목, 가격, 출판사, 저자, 페이지 수 등 한 개의 기본 자료형으로는 책을 표현할 수 없다. 프로그래밍으로 책을 표현하기 위해선 책이 가지는 여러 정보를 담고 있을 한 묶음의 기억 공간이 필요하며 책이 가지는 속성(제목, 가격, 출판사...)이 무엇인가 고민하고 정의하는 것을 '설계'한다고 한다. 여기서 어떤 사물을 ..
✍️ 프로그래밍의 3대 요소 프로그래밍의 3대 요소를 이해하면 Java뿐만 아니라 어떤 언어를 배워도 쉽게 이해할 수 있다. 프로그래밍의 3대 요소 : 변수, 자료형(Data type), 할당(=) 머릿속으로 493+1982를 구해보자. 피연산자 493과 1982를 머릿속으로 기억하고 계산해서 덧셈의 결과인 2475를 머릿속 어딘가에 잘 저장할 것이다. 프로그램도 마찬가지다. 493과 1982를 어딘가에 저장하고 더하고 결괏값을 저장해둘 것이다. 여기서 말하는 어딘가가 바로 메인 메모리를 의미하고 더 구체적으로 493, 1982, 2475가 저장되는 공간을 변수라고 한다. 변수는 다른 말로 기억 공간이라고 해석할 수 있으며 변수를 만들기 위해선 두 가지 요소를 고려해야 한다. 첫 번째로 '크기'를 고려해..
✍️ 자바의 구동방식 자바 소스 코드(.java 파일)를 자바 컴파일러(javac)로 컴파일하면 결과물로 .class 확장자를 가진 파일이 생성된다. .class 파일은 바로 실행할 수 없는 JVM만이 이해할 수 있는 bytecode로 구성된 파일로 자바 소스 코드를 실행하기 위해선 JVM을 반드시 거쳐서 실행해야 한다. JVM을 사용하는 이유 자바 소스 코드를 실행하는 과정은 어느 정도 알겠는데 굳이 JVM을 사용하는 이유는 뭘까? 이를 이해하기 위해선 Java 이전의 프로그래밍언어인 C를 살펴볼 필요가 있다. C/C++ 등 자바 이전의 프로그래밍 언어로 작성된 프로그램은 컴파일 시 재배치 가능한 오브젝트 파일이 생성되는데 이는 컴퓨터가 이해할 수 있는 기계어로 구성되어 있다. 문제는 오브젝트 파일을 ..
✍️ Java 개발 환경 구축하기 자바 프로그램을 실행하기 위해선 자바 실행환경 JRE(Java Runtime Environment)만 있으면 되지만 자바 개발을 위해선 반드시 JDK가 필요하다. JRE는 JVM(Java Virtual Machine), Java 클래스 라이브러리 등이 포함되어 자바 프로그램이 실행될 환경을 제공한다. 일반적으로 개발 측면에서 자바를 설치한다는 것은 JDK를 설치한다는 의미이다. JDK는 Java Development Kit의 줄임말로, JDK는 JRE를 포함한 자바 컴파일러(javac)와 jdb, javadoc와 같은 도구가 포함되어 자바 프로그램을 개발할 환경을 제공한다. Java로 소프트웨어를 만들기 위해선 개발 환경이 구축돼야 한다. 개발 환경은 다른 말로 플랫폼이..