Chapter 01 introduction
This presentation is the property of its rightful owner.
Sponsored Links
1 / 18

Chapter 01 Introduction PowerPoint PPT Presentation

  • Uploaded on
  • Presentation posted in: General

Chapter 01 Introduction. Course Overview Some Programming ( 程式 ) Languages ( 語言 ) Installation ( 安裝 ) and Use ( 使用 ) of JDK Lectures / Handout Username: Jav@       Password: AQm65. Teaching ( 教學 ) Style ( 風格 ) in this Class ( 課程 ).

Download Presentation

Chapter 01 Introduction

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

Chapter 01 introduction

Chapter 01 Introduction

  • Course Overview

  • Some Programming (程式) Languages (語言)

  • Installation (安裝) and Use (使用) of JDK

  • Lectures / Handout

    • Username: Jav@      

    • Password: AQm65

Teaching style in this class

Teaching (教學) Style (風格) in this Class (課程)

  • Caveat: English (英文) is my secondary (次要的) language (語言).

    • Please raise your hand (舉手) ANYTIME if you have any concerns

  • Motivating examples implemented in Java and demo during the class

    • Bring your textbook or Codes in the computers

  • You practice some exercises during the class (if we have time) and at home

  • Web page: Due date and requirement of homework assignment

  • Learning (學習) Chinese (中文) along the way 



  • Core (核心) of book

    • Program clarity (清晰), using both structured (結構化) and object-oriented (物件導向) programming (程式設計)

  • Big book, cover half, good for future reference

  • Java

    • Powerful, object-oriented language

    • Fun to use for beginners, appropriate for experienced programmers

    • Language of choice for Internet (網際網路) and network (網路) communications (通訊)

Live code learning

Live-Code Learning

  • Textbook approach: Use the language to teach the language

  • Learning by examples is the key to rapid mastery

  • Practicing Java regularly is essential for success

  • This book is geared for novice programmers, so the authors stress clarity (清晰)

  • New concepts highlighted in the text and codes

    • Line numbers for the code, easier to refer to in the text

  • Download example programs


    • or Lectures / Handout

Programming tips

Programming Tips

  • Good Programming Practices

  • Common Programming Errors (錯誤)

  • Testing and Debugging Tips

  • Performance (性能) Tips

  • Portability Tips

  • Software (軟體) Engineering (工程) Observations

  • Look-and-Feel Observations

Two approaches to programming 1 2

Two Approaches to Programming 1/2

  • (1) Structured programming (結構化程式設計)

    • An approach to software development whereby a program is defined as a set of logical processes, which may not be carried out sequentially.

    • By taking the structured approach to programming, developers create software that is efficient in its execution.

    • Structured programming languages are based on functions (函數), subroutines, or procedures.

Two approaches to programming 2 2

Two Approaches to Programming 2/2

  • (2) Object-oriented programming (OOP) (物件導向程式設計)

    • Allows a programmer to think modularly because programs are assembled into components called objects.

    • Objects: Building blocks of OOP, are reusable, modular components. An object is a self-contained unit containing functions and attributes.

    • Hardware component

    • OOP builds on and enhances structured programming

Programming style

Programming Style

  • Object-Oriented Programming (chapters 3, 8, 9, 10)

    • Java classes (類別) and objects (物件)

    • Program design (設計)

  • Structured Programming (chapters 4, 5, 6)

    • Java class methods (方法)

    • Program implementation (實現)

    • Disciplined approach to writing programs

    • Clear, easy to test, debug (移去錯誤), and modify

C and c

C and C++

  • C: Developed between 1969 and 1973 by Dennis Ritchie at the Bell Laboratories

    • Evolved from BCPL and B

    • Most widely used language among professional software developers for commercial applications

  • Unix

    • 1969 by a group of AT&T employees at Bell Labs

    • First in assembly language, recoded in C in 1973

    • (Berkeley) BSD, (Sun’s) Solaris, Linux, Android

  • (object-oriented programming) C++ evolved from C

    • Developed by (Danish) B. Stroustrup in 1979 at Bell Labs

Chapter 01 introduction


  • Java evolved from C++, which evolved from C

  • Developed in 1991 for intelligent consumer electronic devices by James Gosling of Sun Microsystems

    • Market did not develop, in danger of being cancelled

  • Internet exploded in 1993, saved project

    • Used Java to create web pages with dynamic content

  • Java formally announced in 1995 by Sun

  • Now used to create web pages with interactive content, enhance web servers, applications for consumer devices (handheld devices, cell phones)...

  • Sun: Part of Oracle

Java products groups

Java Products Groups

  • This book is based on Java Standard (標準) Edition (版本) (Java SE) 6, Update 11

    • Develop and deploy Java applications on desktops and servers, as well as in today's demanding embedded environments.

  • Java Enterprise (企業) Edition (Java EE)

    • Develop large-scale, distributed networking applications and web-based applications.

  • Java Micro (微小的) Edition (Java ME)

    • Develop applications for small, memory-constrained devices, such as cell phones, pagers and PDAs.

1 10 java class libraries

1.10 Java Class Libraries

  • Java programs

    • Consist of pieces called classes (類別)

    • Classes contain methods (方法), which perform tasks

  • Class libraries

    • Java API (Applications Programming Interface)

    • Rich collection of predefined classes which you can use

    • Have better performance (性能)

    • Improve program portability

    • Download the Java API

What s on the cd rom

What’s on the CD-ROM?

  • What you are required to use:

    • Java SE Development Kit (JDK) 6 Update 11 (jdk-6u11-windows-i586-p.exe), available on CD-ROM (directory software\Sun) 或上網找最新版

    • html/software/install.htm: System Requirements, Running the JDK Installer, Troubleshooting (or Before You Begin in the book)

  • Other stuff (optional):

    • Java integrated development environment (IDE): NetBeans, Eclipse

    • MySQL

Setting the path environment variable

Setting (設定) the PATH (路徑) Environment Variable

  • 設定路徑:Use javac, java, … under any directory

    • Windows 2000/Vista/Win 7: 開始 > 設定 > 控制台> 系統> 進階> 環境變數> 系統變數 > Path 下加入 c:\Program Files\Java\jdk1.7.0_45\bin; (說明)

    • 其中的 jdk1.7.0_45 隨您的版本而定

Chapter 01 introduction

使用 Java 的步驟

  • 打開檔案總管,到達檔案所存放的位置, 按 Shift + 滑鼠右鍵, 選 『在此處開啟命令視窗』

  • File extension .java(a text file)

  • 檔案總管,工具/選項/檢視,隱藏或顯示副檔名

  • C:\> javac

    • 使用編譯器(compiler) javac 編譯,產生 GravityGame.class

  • C:\> java GravityGame

    • 執行 GravityGame.class

Typical java development environment 1 2

Typical Java Development Environment (1/2)

  • Development steps

    • (1) Edit (e.g., with Notepad or Emacs) with file extension .java(a text file)

      • 檔案總管 (file manager),工具 (tool) / 選項 (option) / 檢視,隱藏 (hide) OR 顯示 (show up) 副檔名

    • (2) Compile (with compiler (編譯器) javac)

      • Produce bytecodes (位元組碼), understood by Java interpreter, as a file *.class that will be interpreted during the execution phase

Typical java development environment 2 2

Typical Java Development Environment (2/2)

  • Run-time steps

    • (3) Load: Class loader (application or applet) takes the .class file and transfers it to memory

      • C:\> java Welcome

    • (4) Verify: Check that downloaded classes are valid and do not violate Java’s security restriction

    • (5) Execute (執行): Bytecodes are executed by the Java Virtual Machine (JVM)

      • Virtual machine: A software application that simulates a computer. Hides the underlying operating system and hardware from the programs that interact with it.

Professional conduct

Professional Conduct

  • 50-minute classes with 10-minute break

    • Please handle your personal matter during the breaks.

  • Please do NOT use keyboard or mouse while I am teaching.

    • Hear sound  my voice   sore throat 

    • Way of big-room learning: Some feel easy (review) while some feel difficult (catch up)

  • You are encouraged to discuss with your classmates during practice time.

    • But you need to write your own code. No plagiarism.

    • Please bring your class note and homework handout. And MIND.

  • Method of happy learning

    • Work hard during the class

    • More time to play during your free time

  • Login