Chapter1 : 자바 소개 1.1 자바(JAVA) 언어의 역사 1.2 프로그래밍 언어 : 자바 1.3 플랫폼 : 자바

Slides:



Advertisements
Similar presentations
자바프로그래밍 2014 년 가을학기 강원대학교 컴퓨터학부 담당교수 : 정충교 1. 강사진 담당교수 : 정충교 – 연구실 : 101 동 503 호 – 전화 : – 이메일 : 조교 : 2.
Advertisements

제 1 장 자바 소개 Power Java. 프로그램이란 ? 그림 1-1. 프로그램은 작업 지시서와 같다.
2014 Advanced Programming Practice(1), 제 1 장 자바 소개 1.
프로그램이란 프로그램 생성 과정 프로젝트 생성 프로그램 실행 컴퓨터를 사용하는 이유는 무엇인가 ? – 주어진 문제를 쉽고, 빠르게 해결하기 위해서 사용한다. 컴퓨터를 사용한다는 것은 ? – 컴퓨터에 설치 혹은 저장된 프로그램을 사용하는 것이다. 문제를 해결하기 위한.
프로그래밍언어론 TA 윤들녁. 소개 윤들녁 연락처 : 공대 7 호관 4 층 401 호 데이터베이스 연구실 실습 후 날짜 _ 학번.zip 으로.
KUMHO SOFTWARE DEVELOPMENT 자바 개발 환경 2.2 자바 통합환경 2.3 자바 응용 프로그램과 애플릿 프로그램 2.4 자바 응용 프로그램 2.5 자바 애플릿 프로그램 2. 자바 환경과 자바 프로그램.
.Net History. Visual Studio.Net 2002 /.Net Framework 1.0 제품의 버전 / 특징 2002 년 - Visual Studio.Net 2002 /.Net Framework 1.0 첫 통합 개발 환경 - C# 언어 등장 (C# 1.0)
Chap01 자바의 개요와 실행환경. 책의 구성 Chapter 01 자바의 개요와 실행환경 Chapter 02 객체지향 개념 Chapter 03 자바 기본 구조 Chapter 04 클래스 Chapter 05 상속 Chapter 06 인터페이스 Chapter 07 예외.
Chap01 자바소개 이한출판사. Chap01 자바소개 책의 구성 Part 01 자바의 개요 Chapter 01 자바 소개 Chapter 02 자바 환경과 자바 프로그램 Part 02 객체지향과 자바언어의 기본 구조 Chapter 03 객체지향 개념 Chapter 04.
컴퓨터와 인터넷.
이 름: 정홍도 (과장) 팀 명: 개발사업팀 일 자:
Java IT응용시스템공학과 김형진 교수 1장. 컴퓨터와 프로그램 그리고 자바 public class SumTest {
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
자바 언어의 이해 Understanding of Java Programming
명품 JAVA Essential.
Power Java 제3장 이클립스 사용하기.
최윤정 Java 프로그래밍 클래스 상속 최윤정
1장. 자바 시작하기.
제1장 기초 사항 융합기술공학과 김형진 교수.
자바 개요.
1장. 자바 개요.
1장. 이것이 C 언어다.. 1장. 이것이 C 언어다. 프로그래밍 언어 1-1 C 언어의 개론적 이야기 한글, 엑셀, 게임 등의 프로그램을 만들 때 사용하는 언어 ‘컴퓨터 프로그래머’라는 사람들이 제작 C 언어(C++ 포함)를 가장 많이 사용함.
Power Java 제2장 자바 개발 도구.
New 알기 쉽게 해설한 Java.
1장 C#의 배경.
1장 자바 개발환경 구축하기.
8.1 인터페이스 개요와 인터페이스 정의 8.2 인터페이스의 사용 8.3 인터페이스의 상속 8.4 인터페이스 참조
자바 입문.
JSP Programming with a Workbook
네트워킹 CHAPTER 13 Section 1 네트워킹의 개요와 java.net 패키지 Section 2 인터넷 주소와 URL
Java 기초 (Java JDK 설치 및 환경설정)
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
1. C++ 시작하기.
Chapter 03 : 서블릿 ( Servlet ) 개요. chapter 03 : 서블릿 ( Servlet ) 개요.
제 01 장 인터넷 프로그래밍 개요 학기 인터넷비즈니스과 강 환수 교수.
1. MIDP란? 2. 하드웨어 사양 3. MIDlet 4. MIDlet Suite
2장 JSP 개발 환경 설정 이장에서 배울 내용 : JSP 페이지를 작성하기 위한 개발환경을 설정하고, 웹 어플리케이션 개발을 위해 반드시 이해하여야 할 웹 어플리케이션 폴더 구조에 대해 학습한다. 또한 요청된 JSP 페이지가 어떠한 처리과정을 거쳐 응답이 이루어지는가에.
Wireless Java Programming
객체 지향 프로그래밍.
Method & library.
Chap 6.Assembler 유건우.
자바응용.
2장. JSP 프로그래밍을 위한 환경구성 제2장.
UNIX Unbounded A Beginning Approach
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
PHP 개요 및 설치 Yang-Sae Moon Department of Computer Science
제목소개 1. 안드로이드소개 2. 패킷캡쳐를 위한 환경 소개 3. ndk 소개 4. lipcap 5. 6.도식화 그림
김 정 석 Web Programming 김 정 석
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
제1장 Unix란 무엇인가?.
Tiny OS와 NesC Tiny OS Part1. Won Mi Sun – 17 지능제어 연구실.
04. DBMS 개요 명지대학교 ICT 융합대학 김정호.
Part 4 클래스 라이브러리 Chapter 10 : 다중 스레드 Chapter 11 : 패키지와 주요 클래스
1주 실습강의 Introduction 인공지능연구실.
자바 5.0 프로그래밍.
Power Java 제11장 상속.
모바일 자바 프로그래밍 J2ME 개발 살펴보기 Ps lab 오민경.
Part 1 개요 Chapter 1 : 컴퓨터와 프로그램 그리고 자바 Chapter 2 : 자바의 환경
자바로 만든 채팅 프로그램 임경진 조주경 지도교수님 : 이광세 교수님.
암호학 응용 Applied cryptography
Introduction to JSP & Servlet
Chapter 01 자바의 개요 자바는 최초 전자기기의 내장형 소프트웨어를 위해 개발되었으나, 최근 엔터프라이즈 응용에도 폭 넓게 활용됨 자바의 특징과 실행방법, 개발 환경 및 도구에 대해 소개.
발표자 : 이지연 Programming Systems Lab.
2장. 솔라리스10 설치. 2장. 솔라리스10 설치 Solaris 1. 솔라리스10 설치 전 시스템 정보 확인 하드웨어 / 소프트웨어 준비 사항 설치 과정 이해 웹사이트 활용 VMware 다운로드 Solaris10 SPARC.
프로그래밍 언어 학습을 위한 가상실습환경 창원대학교 이수현.
.Net FrameWork for Web2.0 한석수
1장 C 언어의 개요 C 언어의 역사와 기원 C 언어의 특징 프로그램 과정 C 프로그램 구조 C 프로그램 예제.
자바 프로그래밍 입문 : 객체지향적 사고법 chapter 01. 자바 언어의 소개.
1장. C Language Synopsis.
JAVA 프로그래밍 16장 JNLP.
Presentation transcript:

Chapter1 : 자바 소개 1.1 자바(JAVA) 언어의 역사 1.2 프로그래밍 언어 : 자바 1.3 플랫폼 : 자바 1.4 자바의 장점 1.5 자바와 WEB

1.1 자바 언어의 역사 1991년 1994년 1995년 1996년 2005년 현재 Java5.0 사용. SUN사의 James Gosling에 의해 가전제품에 이용하기 위해 개발이 시작(Green Project). 초기에 개발된 언어를 Oak이라고 함 1994년 World Wide Web 등장 Oak에서 Java로 명칭변경 Java, Hot Java project 시작 1995년 Hot Java, Java, Java context, source code가 Web에 공개 플랫폼 : Sun SPARC Solaris, Windows NT, Windows95, Linux Java beta1 발표(Sun Microsystems) Netscape 지원결정 Java beta2 발표 1996년 Java1.0 발표 Netscape2.0 Java 지원 2005년 현재 Java5.0 사용.

1.2 프로그래밍 언어 : 자바 A simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-performance, multithreaded and dynamic language

자바언어의 특징 단순(simple) 객체지향(Object-Oriented) 자바는 C++ 언어를 기반으로 탄생하였지만, C나 C++에서 프로그래머에게 많은 혼란을 주는 요소들을 제거 자바는 C++의 preprocessor, 포인터, 다중상속, 구조체, 전역변수, goto문, 연산자 중복 등의 기능을 제외하여 언어의 복잡성을 제거 자동적인 메모리 수집(garbage collection) 기능을 제공 객체지향(Object-Oriented) 자바는 객체지향 언어이다. 자바 프로그램의 모든 요소들은 객체로 표현된다. 객체지향은 소프트웨어의 재사용과 정보의 캡슐화 같은 많은 장점을 제공한다. 객체지향은 우리의 실세계와 유사한 프로그램 방식이다.

자바언어의 특징 (계속) 분산(Distributed) 환경에 적합 자바는 인터넷 또는 네트웍을 통하여 효율적으로 수행될 수 있도록 설계되었다. http, ftp, tcp/ip 프로토콜 등과 연관된 라이브러리를 제공한다. 또한 자바는 다른 컴퓨터에 있는 원격 객체들을 호출할 수 있는 RMI 기능을 제공한다.

자바언어의 특징 (계속) 인터프리터(Interpreted)에 의해 실행 자바 소스는 자바 가상 기계에서 실행될 수 있는 바이트 코드로 번역되며, 번역된 바이트 코드는 바이트 코드 해석기가 있는 어떠한 기종의 컴퓨터 환경에서도 실행될 수 있다. (Write Once, Run Anywhere) 인터프리터 Java program MyProgram.class 010000101110 MyProgram.java 컴파일러 My Program

자바언어의 특징 (계속) 클라이언트(자바가상기계) 서버 자바는 네트웍을 통하여 자바 가상 기계가 설치된 어떤 컴퓨터에서도 해 석 기 실행결과 번 역 기 바이트 코드 *.class 소스코드 *.java 인터넷 자바는 네트웍을 통하여 자바 가상 기계가 설치된 어떤 컴퓨터에서도 실행 가능 해 석 기 실행결과

자바언어의 특징 (계속) 견고(Robust)하다 자바는 한번 작성되어 다양한 컴퓨터에서 실행되어야 하므로 높은 신뢰성이 요구된다. 자바는 높은 신뢰성을 유지하기 위해 다음과 특징을 가진다. No Pointer Automatic Garbage Collection Strict Type Checking Runtime Error Processing

자바언어의 특징 (계속) 안전(Secure)하다 개발환경 실행환경 JVM 자바는 분산 환경에서 실행될 수 있도록 개발환경과 실행환경이 분리되어 있다. JVM은 무결성에 대한 필수적인 검사를 수행한다. 개발환경 실행환경 자바 클래스 라이브러리 자바 소스코드 *.java 클래스 로더 바이트 코드 검증기 실행 시 서버로부터 네트웍을 통해 전달 자바 컴파일러 바이트 코드 *.class 자바 인터프리터 JVM 실행결과

자바언어의 특징 (계속) 구조에 중립(Architecture neutral)적이고 이식성(Portable)이 높다 자바는 자바 가상기계에서 실행되는 바이트 코드를 사용함으로써 특정 컴퓨터에 종속되지 않는다. 자바는 한번 작성되면 JVM이 설치된 모든 종류의 컴퓨터에서 실행할 수 있다. 자바는 언어의 문법 뿐만 아니라 시스템 종속적인 부분까지도(int는 항상 32비트 등) 시스템 구조 중립적으로 설계되었다. 구조 중립적으로 설계된 자바는 높은 이식성을 제공한다.

자바언어의 특징(계속) 자바 프로그램 컴파일러 바이트 코드 Sun Ultra Solaris Mac 시스템 PC 호환 개발환경 인터프리터 실행환경 인터프리터 인터프리터 Sun Ultra Solaris Mac 시스템 PC 호환 System Windows NT

자바언어의 특징 (계속) 높은 성능(High-performance) 멀티스레드(Multithread) 동적(Dynamic) 바이트 코드는 인터프리터에 의해 효율적으로 수행될 수 있도록 설계되었다. 실행의 효율성을 제공하기 위해 JIT 컴파일러 제공(웹 검색기에서 제공) 자바 번역기는 바이트 코드 생성시 자동 레지스터 할당과 최적화를 수행하여 효율적인 바이트 코드를 생성한다 멀티스레드(Multithread) 동시에 수행하여야 하는 작업들을 스레드 기술할 수 있다 자바는 스레드의 편리한 사용을 위한 라이브러리를 제공 동적(Dynamic) 자바는 변화하는 환경에 적응되도록 설계된 언어로서, 기존의 프로그램에 영향을 주지 않고 라이브러리에 새로운 메소드나 속성들을 추가할 수 있다. 자바는 라이브러리와의 연결을 실행시간에 수행한다.

1.3 플랫폼 : 자바 플랫폼 : 프로그램이 실행되는 하드웨어와 소프트웨어 환경 기존의 컴퓨터에 자바 플랫폼을 구축하기 위해서는 자바 소프트웨어(J2SDK)만 설치하면 된다. 자바 프로그램 자바 API 자바 가상 기계 하드웨어 플랫폼 자바 플랫폼

플랫폼 : 자바(계속) 자바 가상 기계(Java Virtual Machine) 자바 바이트 코드를 기계어로 사용하는 컴퓨터 자바 가상 기계의 구성 형태 독립형(Standalone) 컴퓨터에서 단독으로 실행되는 자바 응용 프로그램과 자바 가상 기계(java.exe) 자바 지원 웹 검색기(Java-Compatible Web Browser) 내에서 실행되는 자바 애플릿 프로그램과 자바 가상 기계(Web Browser에 포함). 자바 가능 서버(Java-Enabled Server)에서 실행되는 자바 서블릿(Servlet) 또는 JSP 프로그램과 자바 가상 기계(Tomcat, JRun, Resin, JSWDK 등에 내장되어 제공되는 자바 가상 기계)

플랫폼 : 자바(계속) J2SE 플랫폼 J2EE 플랫폼 J2ME 플랫폼 자바 언어를 이용하여 응용프로그램, 애플릿 프로그램, 컴포넌트 등을 개발하고 실행할 수 있는 환경을 제공 J2EE 플랫폼 J2SE를 확장하여 구성한 자바 서버측 기술로서, 다중 구조(Multi-tier)의 응용 프로그램을 개발하고 실행할 수 있는 환경을 제공 J2ME 플랫폼 핸드폰이나 PDA 등 소형의 내장(Embeded) 기기에서 실행될 수 있는 자바 플랫폼

플랫폼 : 자바(계속) 자바 API(Application Programming Interface) JDK에서 제공되는 거대한 패키지 자바 개발자는 자바 API에 미리 정의된 소프트웨어 패키지를 이용하여 자바 프로그램을 작성

자바 환경 자바는 플랫폼이면서 프로그래밍 언어이다 API and Libraries Language VM JDK(Java Developer’s Kit) API and Libraries Workshop Standard Extensions Core APIs Solstice Workshop JDBC(Java Database Connectivity) JavaOS Language Java RMI (Java Remote Method Invocation) VM Java IDL(Java Interface Definition Language) HotJava

1.4 자바의 장점 빨리 배울 수 있다 적은 코드로 프로그램을 작성 할 수 있다 좋은 품질의 프로그램을 작성할 수 있다 프로그램 개발을 빨리 할 수 있다 플랫폼에 독립적인 프로그램을 작성할 수 있다 분산 소프트웨어를 쉽게 작성할 수 있다

1.5 자바와 Web 애플릿(Applet) 프로그램 클라이언트의 Web Browser에서 실행되는 프로그램 클라이언트 서버 인터넷 클라이언트 HTML(애플릿포함) 요청 서버 Browser에서 애플릿 실행 애플릿 다운로드 HTML 애플릿