目录

  • 1 课程概况(Course Description)
    • 1.1 课程简介(Introduction)
    • 1.2 教师团队(Team)
    • 1.3 教学条件(Conditions)
    • 1.4 教学方法(Methods)
    • 1.5 教学内容(Contents)
    • 1.6 参考文献(References)
  • 2 课程资源(Course Materials)
    • 2.1 教学大纲(Syllabus)
    • 2.2 电子教材(Text Book)
    • 2.3 教学课件(Slides)
    • 2.4 编程练习(Programming Exercises)
    • 2.5 实验指导(Practice Manuals)
    • 2.6 复习题目(Review Questions)
    • 2.7 平时测验(Quizzes)
    • 2.8 考试样卷(Sample Tests)
  • 3 教学视频(Videos)
    • 3.1 Preface
    • 3.2 Chapter 1 Introduction to Computers, Programs and Java
      • 3.2.1 Chapter 1-1 Basics of Java
      • 3.2.2 Chapter 1-2 Antonamy of Java Program
      • 3.2.3 Chapter 1-3 Programming Errors
    • 3.3 Chapter 2 Elementary Programming
      • 3.3.1 Chapter 2-1 An Elementary Programming Example
      • 3.3.2 Chapter 2-2 Variables
      • 3.3.3 Chapter 2-3 Numerical Data Types and Operators
      • 3.3.4 Chapter 2-4 Number Literals
      • 3.3.5 Chapter 2-5 Arithmetic Expressions
      • 3.3.6 Chapter 2-6 Type Conversion
      • 3.3.7 Chapter 2-7 Case Studies
      • 3.3.8 Chapter 2-8 Common Errors and Pitfalls
    • 3.4 Chapter 3 Selections
      • 3.4.1 Chapter 3-1 Relational Operators and Boolean Type
      • 3.4.2 Chapter 3-2 If Statements
      • 3.4.3 Chapter 3-3 Examples for If Statements
      • 3.4.4 Chapter 3-4 Logical Operators
      • 3.4.5 Chapter 3-5 switch Statements
      • 3.4.6 Chapter 3-6 Conditional Expressions
      • 3.4.7 Chapter 3-7 Operator Precedence and Associativity
    • 3.5 Chapter 4 Mathematical Functions, Characters, and Strings
      • 3.5.1 Chapter 4-1 Mathematical Methods
      • 3.5.2 Chapter 4-2 Characters
      • 3.5.3 Chapter 4-3 Strings
      • 3.5.4 Chapter 4-4 Case Studies
    • 3.6 Chapter 5 Loops
      • 3.6.1 Chapter 5-1 Introduction
      • 3.6.2 Chapter 5-2 while and do-while Loops
      • 3.6.3 Chapter 5-3 for Loops
      • 3.6.4 Chapter 5-4 Nested Loops
      • 3.6.5 Chapter 5-5 Case Studies
      • 3.6.6 Chapter 5-6 Using break and continue
    • 3.7 Chapter 6 Methods
      • 3.7.1 Chapter 6-1 Introduction
      • 3.7.2 Chapter 6-2 Defining and Calling Methods
      • 3.7.3 Chapter 6-3 Call Stacks
      • 3.7.4 Chapter 6-4 void Method Example
      • 3.7.5 Chapter 6-5 Passing Arguments by Values
      • 3.7.6 Chapter 6-6 Modularizing Code
      • 3.7.7 Chapter 6-7 Overloadinig Methods
      • 3.7.8 Chapter 6-8 Scope of Variables
      • 3.7.9 Chapter 6-9 Case Study
      • 3.7.10 Chapter 6-10 Method Abstraction
    • 3.8 Chapter 7 Single-Dimensional Arrays
      • 3.8.1 Chapter 7-1 Introduction
      • 3.8.2 Chapter 7-2 Declaring and Creating Arrays
      • 3.8.3 Chapter 7-3 Processing Arrays
      • 3.8.4 Chapter 7-4 Passing Arrays to Methods
      • 3.8.5 Chapter 7-5 Returning an Array from a Method
      • 3.8.6 Chapter 7-6 Searching Arrays
      • 3.8.7 Chapter 7-7 Sorting  Arrays
      • 3.8.8 Chapter 7-8 Command-Line Arguments
    • 3.9 Chapter 8 Multidimensional Arrays
教学内容(Contents)

Teaching Contents


The course has 48 sessions, including 32 sessions for theory and 16 sessions for practice.

1. Contents and Requirements for Practice (32 Sessions )

(1) Knowledge areas covered in the course

Knowledge Areas

Hours in Lecturers (32)

Hours in Practices(16)

Software Development Fundamentals (SDF)

26

12

Programming Languages (PL)

3.5

2

Algorithm and Complexity (AL)

2

2

Social Issues and Professional Practice (SP)

0. 5

0


(2) Body of knowledge covered in lectures

KA

Knowledge Unit

Topics Covered

Hours

Reference in Textbook

SP

History

History of computers, programming
languages, Internet, Web

0.5

Chapter 1

PL

Language Translation

Interpretation vs. compiling

0.5

Chapter 1

PL

Basic Type Systems

Primitive types, casting

3

Chapters 2-4

SDF

Fundamental Programming
Concepts

Syntax and semantics, variables,
expressions, assignments,
selections, loops, methods

10

Chapter 1-6

SDF

Development Methods

Stepwise development using
methods

4

Chapter 6

SDF

Fundamental Data Structures

Arrays

4

Chapter 7-8

SDF

Algorithms and Design

Design strategies for solving
problems using algorithms

8

Chapter 1-8

AL

Fundamental Data Structures
and Algorithms

Linear search, binary search,
selection sort

2

Chapter 7

2. Projects covered in practices

NO.

Project Name

Project Contents

KA

Hours

Reference in Textbook

1

Java Programming
Environment

²  Write a small program using two different Java development
environments. One is to use a text
editor and the command line Java
compiler and interpreter. The other
environment is to use an IDE called
ECLIPSE.

PL

SDF

2

Chapter 1

2

Elementary Programming

²  Write a program to calculate
future investment value.

PL

SDF

2

Chapter 2

3

Selection Statements

²  Write a program to compute tax
using selection statements.

²  Write a program to check whether a point is within a given rectangle
using selection statements.

²  Write a program to determine
whether a fraction is a proper
fraction, improper fraction or mixed
fraction using selection statements.

PL

SDF

2

Chapter 3

4

Mathematical Functions,
Characters, and Strings

²  Write a program that reads a
letter and displays its corresponding digit based on the letter/number
mapping found on the telephone.

PL

SDF

2

Chapter 4

5

Loops Statements

²  Write a program that lets the
user enter the loan amount and
loan period in number of years and
displays the monthly and total
payments for each interest rate
starting from 5% to 8%, with an
increment of 1/8.

²  Write a program that reads
integers, finds the largest of them,
and counts its occurrences.

SDF

2

Chapter 5

6

Methods

²  Write a method that computes
future investment value at a given
interest rate for a specified number of years.

²  Write a program that prompts the user to enter a credit card number as a long integer. Display whether the
number is valid or invalid based on
given rules.

²  Design a class, and write a client program that tests all methods in
the class.

SDF

2

Chapter 6

7

Single-Dimensional
Arrays

²  Write a program to solve the
Locker Puzzle problem using arrays.

SDF

AL

2

Chapter 7

8

Multidimensional Arrays

²  Write a program that returns the
location of the largest element in a
two-dimensional array.

²  Write a program that tests
whether a two-dimensional list has
four consecutive numbers of the
same value, either horizontally,
vertically, or diagonally.

SDF

2

Chapter 8