1 / 37

프로그래밍 기 초

프로그래밍 기 초. 강원대학교 컴퓨터학부 2014 년 여름 담당교수 정충교. 강의 구조. 1 학기 – 프로그래밍 기초 2 학기 – 자바 프로그래밍. 교수. http://dmrl.kangwon.ac.kr 담당 교수 정충교 ckjeong@kangwon.ac.kr 연구실 101 동 503 호. 교재. 주교재 자바프로그래밍 기초부터 하나씩 Ralph Bravaco 등 지음 , 김응성 등 번역 도서출판 ITC, 2010 년 보조교재 Big Java, 제 2 판

sulwyn
Download Presentation

프로그래밍 기 초

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 프로그래밍 기초 강원대학교 컴퓨터학부 2014년 여름 담당교수 정충교 강원대학교

  2. 강의 구조 • 1학기 – 프로그래밍 기초 • 2학기 – 자바 프로그래밍 강원대학교

  3. 교수 • http://dmrl.kangwon.ac.kr • 담당 교수 • 정충교 • ckjeong@kangwon.ac.kr • 연구실 101동 503호 강원대학교

  4. 교재 • 주교재 • 자바프로그래밍 기초부터 하나씩 • Ralph Bravaco등 지음, 김응성 등 번역 • 도서출판 ITC, 2010년 • 보조교재 • Big Java, 제 2판 • Cay Horstmann저, 오세만 등 공역 • 생능출판사(번역서) • 아래 강좌 공통 교재 • 1학기 – 프로그래밍 기초 • 2학기 – 자바 프로그래밍 강원대학교

  5. 평가 • 중간: 25%, 기말: 35%, 쪽지시험과 과제: 30%, 출석: 10% • 절대평가를 실시함 (학교의 성적 부여 정책에 맞춰 점수 보정 가능) • 1/3 이상 결석하는 경우 F 강원대학교

  6. 평가 90-100 A+ 83-90 A0 75-83 B+ 67-75 B0 60-67 C+ 55-60 C0 50-55 D+ 40-50 D0 강원대학교

  7. 강의 목표 • 문제에 대한 논리적 해법을 구상하고 프로그램으로 구현하는 능력을 갖춘다. • 다양한 분야의 사례를 문제로 다룸으로써 컴퓨터 소프트웨어의 유용성을 이해하게 된다. • 복잡한 문제를 분석하여 작은 요소로 분해하고 각 요소를 추상화하는 능력을 기른다. • 프로그램의 기능, 입력, 전제조건, 출력을 단순하고 명확하게 설명하는 능력을 기른다. • 컴퓨터가 데이터를 표현하고 저장하는 방법을 이해한다. • 프로그램 개발에 필요한 기초적인 컴퓨터 명령어와 통합개발환경의 기초적 사용법을 알게 된다. • 데이터를 조작하는 각종 연산을 사용할 수 있게 된다. • 프로그램을 흐름을 제어하는 여러 가지 제어 문장을 사용할 수 있게 된다. • 배열을 이용하여 많은 데이터를 하나의 이름으로 조작하는 방법을 알게 된다. • 주어진 문제를 메소드로 작성할 수 있게 된다. • 메소드의 사용법(api)이 제공되면 프로그램 작성에 이 메소드를활용할 수 있게 된다. 강원대학교

  8. 자바 소개 강원대학교

  9. 강원대학교

  10. 강원대학교

  11. 강원대학교

  12. 프로그램 Sum=0 N=0 while (N<=50) N=N+1 Sum=Sum+N Print Sum 강원대학교

  13. 프로그램 컴파일 강원대학교

  14. 자바 프로그램 컴파일러 개발환경 바이트 코드 JVM 실행환경 JVM JVM 핸드폰 Macintosh 컴퓨터 Windows PC JVM: Java Virtual Machine, 자바가상기계 강원대학교

  15. 자바언어의 특징 • 인터프리터(Interpreter)에 의해 실행 • 자바 소스코드는 컴파일을 통해 바이트 코드로 번역됨 • 바이트 코드를 실행시키면 바이트 코드 해석기(interpreter)에 의해 기계어 코드가 만들어지면서 이 기계어 코드가 실행됨 Java program 인터프리터 컴파일 실행 컴파일러 기계어코드 컴퓨터하드웨어 바이트코드 강원대학교

  16. C 언어의 경우: 소스코드가 기계어로 바로 번역됨 • 프로그램을 실행할 컴퓨터(target machine)에 따라 컴파일러가 달라지고 다른 기계어코드가 생성됨 C program 컴파일 컴파일러 컴퓨터하드웨어 실행 기계어코드 강원대학교

  17. 자바언어의 특징 • 구조중립적(architecture neutral)이고 이식성(portable)이 높음 • 바이트코드 인터프리터를 중심으로 몇가지 부가기능을 갖춘 소프트웨어를 자바가상기계(JVM)라고 부름 • 자바프래그램은 한번 작성/컴파일되면JVM이 설치된 모든 종류의 컴퓨터에서 실행 가능 강원대학교

  18. 프로그램을 실행할 컴퓨터 기종과 무관한 바이트코드가 생성됨 클라이언트(JVM) 서버 해 석 기 실행결과 컴 파 일 러 바이트 코드 *.class 소스코드 *.java 인터넷 윈도PC 해 석 기 실행결과 자바 바이트코드는 자바 가상기계가 설치된 어떤 컴퓨터에서도 실행 가능하며 네트워크를 통해 쉽게 배포할 수 있다. 핸드폰 interpreter 강원대학교

  19. 자바 플랫폼 (Platform) • 플랫폼 : 하드웨어와 소프트웨어 환경 • 기존의 컴퓨터에 자바 플랫폼을 구축하기 위해서는 자바 소프트웨어(JRE)를 설치함 (JRE: Java Runtime Environment) 자바 프로그램 자바 API 자바 플랫폼 자바 가상 기계 (JVM) 하드웨어 플랫폼 강원대학교

  20. JDK (개발도구 + JRE) JDK: Java Development Kit JRE: Java Runtime Environment 강원대학교

  21. 자바 플랫폼 (Platform) • 자바 API (Application Programming Interface) • Java 플랫폼에서 제공되는 라이브러리와 그 사용법 • 자바 개발자는 자바 API에 미리 정의된 라이브러리를 이용하여 편리하게 자바 프로그램을 작성할 수 있음 • 라이브러리: 미리 작성해 놓은 프로그램들 (빈번하게 사용되는 기능들을 구현) 강원대학교

  22. 프로그램 작성, 컴파일, 실행 과정 • 임의의 텍스트 편집기로 프로그램을작성하여 파일로 저장 강원대학교

  23. 프로그램 예 1 – Hello.java Hello라는 이름의 클래스를 중괄호{}안의 내용과 같은 것으로 정의함 public class Hello { public static void main (String[] args) { System.out.print(“Hello!”); } } • 이 프로그램을 Hello.java 파일에 저장 (파일 이름이 대소문자까지 맞춰 정확해야 함) 강원대학교

  24. 프로그램 파일 • 파일 하나에는 하나의 public 클래스가 정의됨 • public 클래스 이름을 파일 이름과 같게 함 • (Hello 라는 클래스를 정의한 파일의 이름은 Hello.java)  대문자 소문자 구분! 강원대학교

  25. 프로그램 작성, 컴파일, 실행 과정 • 소스코드를 컴파일하여 바이트코드를 만듦 • javac Hello.java ( 파일 이름) Hello.class 파일이 생성됨 컴파일 할 때는 파일의 첨자(.java)를 반드시 붙여줌 Hello.class 파일 내에 바이트코드가 들어 있음 • 바이트 코드를 실행시킴 • java Hello ( 클래스 이름) • 실행시킬 때는 파일의 첨자를 붙이지 않고 클래스 이름만 지정해 줌 강원대학교

  26. 자바 개발 환경 • J2SE 자바 표준 개발 환경에 포함되어 있는도구 • 자바 번역기 : javac • 자바 해석기 : java • 자바 디버거 : jdb • 자바 문서 생성기 : javadoc • 자바 압축 도구 : jar • JDK는 GUI(Graphical User Interface) 형태의 개발환경을 제공하지 않음 강원대학교

  27. 강원대학교

  28. (IDE: Integrated Development Environment, 통합개발환경) 강원대학교

  29. 자바 통합개발환경 예 • Eclipse (http://www.eclipse.org) • NetBeans (http://www.netbeans.org/) • Java Studio Creator (http://developers.sun.com/prodtech/javatools/jscreator) • JBuilder (http://www.borland.com/jbuilder) • Viaual Cafe (http://www.visualcafe.com) • Visual Age for Java (http://www.ibm.com/java) 강원대학교

  30. Application을 실행시키면 • main 메소드가 실행됨 main 메소드 (method) • public static void main (String[] args) • { • // 문장들 • } 강원대학교

  31. 간단한 문법 요약 • 모든 문장은 세미콜론으로 끝남 x = x + 1; • 공백 문자가 많이 삽입되어도 문제 없음 x = 3; • 한 문장을 여러줄에 걸쳐 적어도 문제 없음 x = 3; • 대문자 소문자 구분 NotSame≠ notsame 강원대학교

  32. 간단한 문법 요약 • 한 줄짜리 주석은 두 개의 슬래시로 시작 // 주석입니다. • 여러 줄 주석 /* 주석 입니다. */ 강원대학교

  33. print과 println System.out.println(“Kangwon”); System.out.print(“kangwon”); System.out.print(“kangwon\n”); • println은 주어진 문자열을 출력한 다음 줄바꿈 (문자열 출력 후 ‘\n’을 추가로 출력) • print는 주어진 문자열만 출력 강원대학교

  34. Errors • Syntax errors • Detected by the compiler • Logic errors • Detected (hopefully) through testing System.ouch.print(". . .");System.out.print("Hello); System.out.print("Hell"); 강원대학교

  35. The Compilation Process 강원대학교

  36. The Edit—Compile—Loop Test 강원대학교

  37. 교재 1장 단답형 문제 (15쪽) • 2번, 3번, 5번, 6번, 11번 강원대학교

More Related