CodeOnWeb
Hanyang ERICA
Log in

Java 소개

Lee Woosuk 2018/09/03, 18:58

CSE2016 프로그램 설계 방법론

실습 목표

  1. 자바 프로그래밍 환경 구축
  2. 간단한 자바 프로그램 구조 이해

자바 소개

  • 1991년 초 미국 Sun Microsystems사의 James Gosling 에 의해 개발
  • 가전 제품의 셋톱 박스에 사용할 목적으로 개발됨.
  • 자바로 개발된 프로그램은 컴퓨터 기종과 운영체제에 상관없이 동일하게 실행될 수 있음.
  • 1995년 5월 일반에 처음으로 공개. 안드로이드 스마트폰 앱부터 광범위한 응용 서버 프로그램들이 대부분 자바로 개발됨.

자바 프로그램 구조

자바 프로그램은 클래스들의 모음이다. 즉, 자바 프로그램은 하나 이상의 클래스들로 이루어진다. 클래스는 머리부 (header)와 몸체(body)로 이루어진다. 간단한 자바 프로그램의 구조는 다음과 같다.

위에서 첫 줄은 클래스가 하는 일을 기술하는 주석문(comment)이다. 주석문은 프로그램이 수행하는 작업에 영향을 미치지 않고 우리들이 프로그램을 이해하기 쉽게 하기 위해 포함된다.
주석문은 프로그램 내에 추가적으로 설명이 필요한 곳마다 넣을 수 있다. 위에서 // 로 시작되는 것은 모두 주석문이다. 두 번째 줄은 클래스의 머리부이다. SimpleProgram은 정의된 클래스의 이름으로서 프로그래머가 정한다.
특정 클래스의 이름은 임의로 정할 수 있으나 그 클래스가 수행하는 일을 잘 나타내는 이름으로 정하는 것이 좋다.

클래스의 몸체는 하나 이상의 메소드로 구성된다. 메소드는 이름을 가지며 명령문들의 모음이다. 메소드도 머리부와 몸체로 구성된다.

모든 자바 응용 프로그램은 main 메소드를 포함한다. 이 메소드는 응용 프로그램의 실행이 시작되는 곳이다. 다음은 main 메소드를 가지는 SimpleProgram 이라는 클래스의 구조이다.

위에서 메소드 머리부 앞에 메소드가 하는 일을 요약하는 주석문이 있다. main 메소드의 머리부에 대한 설명은 나중으로 미룬다.

다음 프로그램은 "안녕하세요"라는 문자열을 모니터에 출력한다. 이 프로그램은 Hello 라는 클래스만으로 구성되어 있다.

위 클래스는 main 메소드만을 포함한다. main 메소드는 "안녕하세요" 를 표준 출력장치에 출력하는 명령문만 포함한다.
이에 대한 자세한 설명은 다음 강의에서 한다.

주석문

프로그램은 개발된 후 보통 여러 해 동안 사용되고 그 기간동안 여러번 수정되는 경우가 많다. 시간이 지나면서 원 작성자조차 프로그램의 자세한 내용을 기억 못할 수 있다. 여러 개발자들이 협업하는 프로젝트가 아니고 단독 진행하는 프로젝트라고 하더라도, 주석문을 쓰는 습관을 들이는 것이 좋다.

주석문은 프로그램, 클래스 혹은 메소드의 목적과 쉽지 않은 처리 과정들을 설명하기 위해 포함되고 프로그램 작동에 영향을 끼치지 않는다. 주석문은 다음과 같은 세 가지 형태를 취할 수 있다.

// 한 줄내로 제한되는 주석문

/*
여러 줄에 걸쳐 계속되는 주석문
*/

/** javadoc 이라는 소프트웨어 도구에 의해
자동 생성된 주석문
*/

식별자

식별자(identifier)는 프로그래머가 프로그램의 구성요소인 클래스, 메소드, 변수 등을 나타내기 위해 사용하는 이름이다. 위 프로그램에서 class, Hello, public, static, void, main, String, args, System, out, println 등이다. 이 중 class, public, static, void 등은 예약어들(keywords)로서 정의된 의미와 다르게 사용될 수 없다. 그러나
예약어들을 제외한 나머지 단어들은 개발자가 임의로 정할 수 있고, 신중하게 정해야 한다. 식별자 이름은 의도를 잘 나타내고 가독성이 좋아야 한다. 따라서, x, p1, o 같은 의미없는 이름은 피해야 한다. 또한, 식별자 이름에서 대문자와 소문자는 구별된다. Hello 와 hello는 서로 다른 식별자 이름이다.

프로그램 개발

작성된 프로그램은 컴퓨터가 이해할 수 있는 기계어(macine language)로 변환되어야 한다. 이 변환을 수행하는 두 가지 소프트웨어는 컴파일러 (compiler)와 해석기(interpreter)이다. 컴파일러는 한 프로그래밍 언어로 작성된 원시 프로그램(source code)를 기계어로 된 목적 프로그램(object code)로 바꾼다.

해석기는 원시 프로그램을 중간언어인 바이트코드(byte code)로 바꿔준다. 바이트 코드는 어떤 특정 중앙처리장치(CPU)를 위한 기계어가 아닌 자바 가상 컴퓨터 (Java Virtual Machine, JVM)을 위한 중간 언어이다. 특정 컴퓨터에서 자바 해석기가 바이트코드를 한 문씩 읽고 실행한다. 자바 프로그램은 자바 가상 컴퓨터를 지원하는 모든 컴퓨터에 의해 실행될 수 있다.

문법

한글 문법이 있는것처럼 각 프로그래밍 언어는 고유한 문법(syntax)를 가진다. 프로그래밍 언어의 문법은 언어의 요소들이 문(statement)를 만들기 위해 어떻게 결합될 수 있는지 명확하게 기술한다. 이 문법은 프로그램을 작성하기 위해 반드시 따라야 한다.
자바 해석기는 프로그램을 번역하기에 앞서 모든 문법의 준수 여부를 검사한다. 한 프로그램이 문법을 따르지 않으면 컴파일러는 오류(Error)메세지를 만들어 낸다. 오류가 있는 프로그램은 실행될 수 없다. 예를들어 다음 프로그램은 실행될 수 없다.

이는 중괄호가 맞지 않기 때문이다.

자바 개발 환경 구축

자바 프로그램을 개발하기 위해서는 오라클에서 제공하는 JDK 또는 통합 개발환경 (Integrated Development Environment 혹은 IDE)을 설치하여 사용하면 된다. JDK는 명령어 방식의 사용자 인터페이스를 제공하여 사용하기가 다소 불편한 점이 있다.
IDE는 자바 원시 프로그램을 편집하고 번역하고 디버깅을 같이 할 수 있는 통합 개발 환경이다. 무료로 사용할 수 있는 통합 개발 환경은 jEdit, BlueJ, DrJava, jGRASP) 이클립스 (Eclipse) 등이 있다. jEdit, BlueJ, DrJava와
jGRASP은 초보자를 위한 IDE이다. 자바 프로그램을 개발하기 위해 현재 가장 널리 사용되는 IDE는 이클립스이다. 이클립스는 수 많은 개발자들에 의해 오픈 소스 프로젝트로 개발되어 누구나 무료로 사용할 수 있다.

JDK 설치

이클립스를 사용하기 위해서는 먼저 오라클에서 제공하는 JDK를 설치해야 한다. 현재 JDK 버전은 1.8.0까지 나와 있다. PC 사용자가 이 버전을 설치하기 위해서는

  1. 주소 에서 JDK Download 버튼을 클릭한다.

  2. file와 같이 Accept license agreement 를 클릭하고, 자신의 운영체제에 맞는 파일을 다운로드 후 실행시킨다.

  3. (윈도우의 경우) 파일 실행 후 "다음"을 계속 눌러서 기본 설정 사항으로 설치를 완료한다.

이클립스 설치

  1. 이클립스 홈페이지 에서 다운로드 버튼을 클릭한다 (그림 참조file)

  2. 다운로드 받은 설치파일을 실행하고 그림과 같이 최상단 버튼을 클릭 file

  3. 설치하고 file

  4. 실행한다 file

  5. 앞으로 생성할 프로젝트들의 하드드라이브 상 위치를 설정한다. file

  6. 메뉴 - 파일 - 새로만들기 - 자바 프로젝트를 클릭한다.

  7. 그림과 같이 프로젝트 이름을 설정하고 다음 버튼을 누른다. file

  8. 그림과 같이 설정한다. module-info.java 를 포함하지 않도록 주의한다. file

  9. Hello 프로젝트 - src 폴더 오른쪽 클릭 - 새로 만들기 - Class 클릭
    file
  10. 그림과 같이 설정한다. 메인메소드를 포함한다.
    file
  11. Hello world! 문자열을 출력하는 명령어를 다음과 같이 입력하고 저장 후 그림과 같이 실행 버튼을 클릭한다. 문자열이 제대로 출력되는 것을 확인한다. file
6942 reads

Author

No discussion

Please log in to leave a comment

16.5.11618.20190612.allo
Report · Terms of Service · Privacy Policy
Lablup Inc. · Teheran-ro 145, Gangnam-gu, Seoul, Republic of Korea · 대표: 신정규 · 사업자번호: 864-88-00080 · +82 70-8200-2587

Decline Confirm

Close
Favorite Bookmark Discussion

Please copy the following address