Presentation is loading. Please wait.

Presentation is loading. Please wait.

제 1 장 기초 사항 어서와 Java 는 처음이지 ! IT 응용시스템공학과 김형진 교수.

Similar presentations


Presentation on theme: "제 1 장 기초 사항 어서와 Java 는 처음이지 ! IT 응용시스템공학과 김형진 교수."— Presentation transcript:

1 제 1 장 기초 사항 어서와 Java 는 처음이지 ! IT 응용시스템공학과 김형진 교수

2 프로그램은 작업지시서와 같다.

3

4

5 1991 년에 Sun 에서는 제임스 고슬링 (James Gosling) 를 비롯한 Green 연구 팀에서는 가정용 전자 제품에 사용할 수 있는 작은 컴퓨터 언어를 설계 처음에 C++ 를 사용하여 운영 체제를 만들려고 시도하였는데 C++ 의 복잡도 로 인하여 실패 Green 프로젝트를 위한 더 나은 언어를 직접 만들게 되는데 이것이 바로 자 바. Green 프로젝트는 Time Warner 의 주문형 비디오 시스템을 개발하다가 Time Warner 가 경쟁사인 실리콘 그래픽스 사를 선택하는 바람에 결국 실패 1993 년, 그래픽 기반의 월드 와이드 웹 (world wide web) 이 발표되고 자바의 개발자들은 곧 이러한 웹 기반의 응용 프로그램에는 자바와 같은 기계 중립 적인 언어가 이상적이라는 것을 발견

6

7 람다식 (Lambda expressions) 작은 가상기계 (VM) 병렬 배열 정렬 (Parallel Array Sorting) 컬럭션을 위한 대용량 데이터 처리 Base64 엔코딩과 디코딩을 위한 표준 API 새로운 날짜, 시간 API(Date & Time API) 강화된 패스워드기반 암호화 (Password-Based-Encryption (PBE))

8

9 Write once, Run everywhere!

10

11 Write Once! Run Everywhere!

12 자바 컴파일러는 특정한 컴퓨터가 아닌 가상적인 기계 (virtual machine) 를 위한 코드를 생성한다.

13 public class Hello { public static void main(String[] args) { System.out.println("Hello"); } 자바 프로그램 바이트 코드 Compiled from "Hello.java" public class Hello extends java.lang.Object{ public Hello(); Code: 0:aload_0 1:invokespecial#1; //Method java/lang/Object." ":()V 4:return public static void main(java.lang.String[]); Code: 0:getstatic#2; //Field java/lang/System.out:Ljava/io/PrintStream; 3:ldc#3; //String Hello World! 5:invokevirtual#4; //Method java/io/PrintStream.println:(Ljava/lang/String;)V 8:return }

14 자바 가상 기계 Windows 7 Intel CPU 자바 가상 기계 리눅스 AMD CPU 자바 바이트 코드 *.class

15 바이트 코드 자바 가상 기계 특정한 컴퓨터가 아닌 중간적인 코드를 생성하고 이것을 해석하여 실행하는 구조로 되어 있기 때문이다.

16 바이트 코드와 자바 가상 기계 C 언어는 절차적 언어, 자바는 객체 지향 언어 여러 작업을 동시에 실행하는 것

17 Java SE(Standard Edition) Java EE(Enterprise Edition) Java ME(Micro Edition)

18

19 Java SE 는 데스크탑과 서버에서 자바 애플리케이션을 개발하고 실 행할 수 있게 해주며 임베디드 환경 (embedded environment) 과 실시 간 환경 (real-Time environments) 도 지원한다.

20

21 Java EE 는 기업용 애플리케이션을 개발하는 데 필요한 여러 가지 도 구 및 라이브러리들을 모아 놓은 것 응용 서버, 웹서버, J2EE API, 엔터프라이즈 자바 빈즈 (JavaBeans) 지원, 자바 서블릿 API 와 JSP 등을 포함

22 Java ME 는 핸드폰, PDA, TV 셉톱박스, 프린터와 같은 모바일 기기나 다른 엠베디드 장치들에서 실행되는 애플리케이션을 위한 강인하고 유연한 환경을 제공

23 리치 - 인터넷 - 애플리케이션 (RIA: Rich Internet Application) 을 생성하 고 배포하기 위한 자바 클라이언트 플랫폼 RIA 은 서로 인터넷 상의 다양한 플랫폼에서도 동일한 외관으로 실행 된다. 자바 기술에 기반을 두고, JavaFX 플랫폼은 고성능의 하드웨어 가속 그래픽과 미디어 엔진 API 를 제공

24 자바 애플리케이션 (Java application)  독립적으로 실행될 수 있는 일반 응용 프로그램 자바 애플릿 (Java applet)  웹 브라우저 안에서 실행되는 작은 프로그램이다.

25 자바 서블릿 (Java servlet)  웹서버에서 동작하는 서버 모듈로서 클라이언트의 요구를 받아서 그에 대한 처리를 한 후에, 실행 결과를 HTML 문서 형태로 클라이언트 컴퓨터 로 전송

26 HTML 안에 자바 코드를 넣으면 웹페이지를 사용자와 상호작용하도 록 만들 수 있다. JSP 는 서버에서 실행되고 결과를 사용자에게 보여 준다.

27 안드로이드 애플리케이션은 자바로 작성 안드로이드 개발자들은 자바의 SE 버전 중에서 AWT 와 스윙 (swing) 을 제외한 거의 모든 패키지를 사용 효율성때문에 자체적인 달빅 가상 머신을 구현하였다.

28  애플릿과 서블릿을 비교하여 보자.  JSP 에 대하여 웹을 통하여 조사하여 보자. 애플릿 : 서버에서 다운로드되어서 웹 페이지 안에서 실행 서블릿 : 웹 서버 안에서 사용자의 요청을 처리 JavaServer Pages (JSP) 는 서버 측의 자바 기술로서 클라이언트 컴퓨터의 요청에 따라서 동적으로, HTML, XML 등이 포함된 웹 페이지를 생성한다.

29 명칭 : JDK (Java Development Kit) 설명 : 자바 개발 도구 다운로드 위치 : java.sun.com 비용 : 무료

30 JRE(Java Runtime Environment)  JRE 는 자바 프로그램을 실행하기 위한 라이브러리, 자바 가상 기계, 기타 컴포넌트들을 제공한다. JDK(Java Development Kit)  JDK 는 JRE 에 추가로 자바 프로그램을 개발하는데 필요한 컴파일러, 디 버거와 같은 명령어행 개발 도구를 추가한 것이다. JDK = JRE + 컴파일러 + 디버거 + …

31

32

33

34 JDK 의 기본 설치 폴더는 c:\Program Files\Java

35

36

37  자바 프로그램을 개발하는 데 개발 도구를 ______________ 라고 한다.  JDK 와 JRE 의 차이점은 무엇인가 ? JDK JRE 는 자바 프로그램을 실행만 시킬 수 있는 환경이고 JDK 는 개 발도 할 수 있는 환경이다.

38

39 소스 파일의 생성  에디터를 사용  소스 파일은.java 확장자  메모장, 이클립스 (www.eclipse.org), 넷빈 (www.netbeans.org) 사용 www.netbeans.org 컴파일  컴파일러는 자바 소스 코드를 바이트 코드로 변환  바이트 코드는 확장자가.class 로 끝나는 파일에 저장 클래스 적재  바이트 코드 파일을 메모리로 적재  네트워크를 통하여 적재될 수도 있다.

40 바이트 코드 검증  바이트 코드들이 이상이 없으며 자바의 보안 규칙을 위배하지 않는지를 검사 실행  자바 가상 기계가 바이트 코드를 실행  가장 빈번하게 실행되는 부분 (HotSpot) 에서는 JIT 컴파일러가 바이트 코 드를 실제 컴퓨터의 기계어로 직접 변환하여 빠르게 실행

41 어디에서나 컴파일러를 실행할 수 있도록 경로 (path) 설정하기 제어판의 환경 변수 path 를 변경한다.

42 윈도우 보조 프로그램의 메모장 사용 파일의 확장자는.java 로 한다.

43 컴파일 C:\java\examples>javac Hello.java C:\java\examples> C:\java\examples>dir... 2009-06-05 오후 04:06 454 Hello.class 2009-06-05 오후 02:53 144 Hello.java 2 개 파일 598 바이트

44 C:\java\examples>java Hello 안녕하세요. 자바 프로그래머 여러분 ! C:\java\examples> java 명령어가 바로 “ 자 바 가상 기계 ” 를 구현한 것입니다.

45

46 1. 컴파일하는 명령어 버전 이름은 __________ 이다. 2. Hello.java 를 컴파일하면 ________ 파일이 생성된다. 3. 자바 가상 기계는 ____________ 프로그램으로 구현한다. javac Hello.class java

47 자바 API 문서  자바 라이브러리에 대하여 설명하는 문서 자바 튜토리얼  자바 언어에 대한 강좌

48

49

50 demo 디렉토리의 서브 디렉토리 applets\Animator 폴더로 이동하라. 명령 프롬프트에서 다음과 같은 명령어를 실행한다. C> appletviewer example1.html

51 demo 디렉토리의 서브 디렉토리 jfc\java2D 로 이동하라. 명령 프롬프 트에서 다음과 같은 명령어를 실행한다. C> appletviewer Java2Demo.html

52 Eclipse  다중 언어 소프트웨어 개발 도구로서 IDE 와 plug-in 으로 구성IDEplug-in  자바로 작성되었다.  자바 애플리케이션을 개발하는데 사용할수도 있다.  C, C++, COBOL, Python, Perl, PHP 도 지원 CC++COBOLPythonPerlPHP  free and open source software. free and open source software NetBeans  자바를 위한 cross-platform open source IDE  문법 하이라이팅 기능, 코드 완결 기능  비주얼 디자인 도구 포함  free and open source software. free and open source software

53 www.eclipse.org

54

55

56 작업 공간을 물어본다 -> 자신이 사용하는 디렉토리로 변경

57

58

59

60

61

62

63 소스를 입력하는 과정에서 다음과 같이 System 으로 하여야 할 것을 system 으로 잘못 입력하였다고 가정.

64

65 해결 방법을 제시

66 앞에서 작성한 hello 프로젝트를 USB 에 저장하려면 hello 프로젝트를 선택한 상태에서 [File] -> [Export] 메뉴를 선택한다.

67 [File] -> [Import] 메뉴를 선택한다

68 다음 프로그램을 이클립스를 이용하여 컴파일, 실행하여 보자. public class Hello2 { public static void main(String args[]) { System.out.println(" 안녕하세요 ?");// ① System.out.println(" 자바를 처음 공부합니다."); System.out.println(" 자바는 재미있나요 ?"); }

69

70


Download ppt "제 1 장 기초 사항 어서와 Java 는 처음이지 ! IT 응용시스템공학과 김형진 교수."

Similar presentations


Ads by Google