Temple University Home     CIS Home 

 
 

CIS 1068 Course Schedule

This is the planned schedule, but it may change.

Readings are listed on the day they are due. All reading assignments refer to the 6th edition of the text.

Week Lecture 1 (Monday) Lecture 2 (Wednesday) Lecture 3 (Friday) Lab (Tuesday or Thursday) Handouts & Resources
Week 1: Introduction to Computer Science

Your first Java program
Simple Input and Output (I/O)

Primitive data types

Typecasting

Reading: 1.1-1.3, 2.1-2.4
Variables and expressions

Simple String expressions

Optional Reading: 1.4, 2.5

Homework 1 due 6pm Friday
Homework Assignment 1: Greetings
Basic Unix Commands

Compiling and running
simple programs

primitive data types, expressions, and variables

String constants and concatenation

Course Syllabus

Your first Java program (ppt,pdf),
Interactive Programs (ppt,pdf),
Primitive data types (ppt,pdf)

Hello.java, Hello2.java, Variables.java
Week 2:
Labor Day if/else and boolean expressions

Reading: 3.1
boolean data type and expressions

Reading: 3.2

Homework 2 due 6pm Friday
Homework Assignment 2: Meltdown
booleans and if/else

Conditions (ppt,pdf)

Swap.java, Conditional.java, Conditional2.java

Practice Problems 1 (docx,pdf),
Practice Problems 2 (docx,pdf)
Week 3:
The "while" loop

chars

Reading: Chapter 4
Loop variations
(for and do/while)
Practice with loops

Homework 3 due 6pm Friday Homework Assignment 3: Grades
control structures: while, for, do/while

ASCII art with loops
The "for" loop (ppt,pdf),
Loop Variations (ppt,pdf),
More Loop Variations (ppt,pdf)

PracticeIfElse.java, Loop.java PrintStarLine.java, DrawFigure.java, DrawFigure2.java, CrapsGame.java

Practice Problems 3 (docx,pdf),
Practice Problems 4 (docx,pdf),
Practice Problems 5 (docx,pdf)
Week 4:
Array basics

Reading: 7.1
Arrays and loops

Multi-dimensional arrays

Midterm Review

Reading: 7.5

Homework 4 due 6pm Friday
Homework Assignment 4: Draw Me A Pretty Picture

Arrays

Midterm Review
Arrays (ppt,pdf),
2D Arrays (ppt,pdf),

Practice Problems 6 (docx,pdf),
Practice Problems 7 (docx,pdf)

AccumulateString.java, AccumulateWeatherInfo.java, AccumulateWeatherInfo2.java

Practice Problems 8 (Midterm Review) (docx,pdf),
Solutions to Practice Problems 8 (Midterm Review) (docx,pdf)

Source code for Midterm Review problem 1, Source code for Midterm Review problem 2, Source code for Midterm Review problem 3

Week 5:
Midterm 1 The String class

Reading: 2.2
Text processing

Homework 5 due 6pm Friday
Homework Assignment 5: ASCII Canvas

String type and methods

Text Processing (ppt,pdf)

Practice Problems 9 (docx,pdf)

Array2DExample.java,
StringMethodsExample.java,
Code to print out all char values
Week 6:
Using objects

More on using objects

Objects and Reference semantics

Reading: pages 321-327

Homework 6 due 6pm Friday
Homework Assignment 6: Web Master
Using objects

Geometric shape classes
Using Objects (ppt,pdf)
Practice Problems 10 (docx,pdf)
Solution to Practice Problems 10 (docx,pdf)

Week 7:
Files

Reading: 10.1-10.2
Files and loops

Files, directories, and scripts

Reading: 10.3-10.5
Files and I/O Exceptions

Reading: 9.1

Homework 7 due 6pm Friday
Homework Assignment 7: Pretty Shapes

Files, streams, and I/O exceptions Files (ppt,pdf)
Exceptions (ppt,pdf)

Reader.java, ReaderWriter.java

Practice Problems 11 (docx,pdf)
Solution to Practice Problems 11 (docx,pdf) Practice Problems 12 (docx,pdf)
Solution to Practice Problems 12 (docx,pdf) Practice Problems 13 (docx,pdf)
Solution to Practice Problems 13 (docx,pdf)

Cheat Sheet
Week 8:
Exceptions

Reading: 9.2, 9.3
Static methods and program decomposition

Reading: 6.2
Methods with parameters and returns

Homework 8 due 6pm Friday
Homework Assignment 8: Concordances

Static methods

parameters and returns with primitive data types
Program Decomposition (ppt,pdf)
Method Parameters and Returns (ppt,pdf)

ExceptionHandler.java,
Drawer.java,
DecomposeMe1.java,
Decomposed1.java,
DecomposeMe2.java,
Decomposed2.java

Practice Problems 14 (docx,pdf)
Solution to Practice Problems 14 (docx,pdf)
Week 9:
Array and object types for parameters and returns

Reading: pages 334-345
Linear search

Binary search

Slow sorting algorithms

Reading: 7.4

Homework 9 due 6pm Friday
Homework Assignment 9: Method Madness

Array methods and basic array algorithms Objects as parameters (ppt,pdf)
Arrays and methods (ppt,pdf)
Searching (ppt,pdf)
Bubble Sort (ppt,pdf)

MysteryPrimitive.java,
MysteryObject1.java,
MysteryObject2.java,
MysteryArray1.java,
MysteryArray2.java,
LinearSearch.java,
BinarySearch.java

Practice Problems 15 (docx,pdf)
Solution to Practice Problems 15 (docx,pdf)
Practice Problems 16 (docx,pdf)
Solution to Practice Problems 16 (docx,pdf)
Week 10:
MergeSort MergeSort, continued

Computational Complexity

Homework 10 due 6pm Friday
Homework Assignment 10: Image Processing
Efficient sorting techniques

Big-O

Sorting (ppt,pdf)
Computational Complexity (ppt,pdf)
Midterm Review (ppt,pdf)
Sample midterms are available

Practice Problems 17 (docx,pdf)
Solution to Practice Problems 17 (docx,pdf)
Sorter.java
Week 11:
Midterm 2 Defining classes:
instance variables and instance methods

Reading: 5.1

Defining classes:
Encapsulation
Accessors and Mutators

Reading: 5.2

Homework 11 due 6pm Friday
Homework Assignment 11: Sorting a Really Big File
Static vs. instance

encapsulation and access specifiers
Constructors, Instance Methods, and Fields (ppt,pdf)

StaticBankAccountUser.java
StaticBankAccount.java
StaticBankAccount_2.java
BankAccountUser.java
BankAccount.java

Practice Problems 18 (docx,pdf)
Solution to Practice Problems 18 (docx,pdf)
Week 12:
Defining classes:
"this"
constructors

Reading: 6.1
Defining classes:
overloading methods
testing

Reading: 6.3, 6.4

Packages

Practice programming with multiple classes

Reading: 6.5-6.7

Homework 12 due 6pm Friday
Homework Assignment 12: Class Madness
Designing and using classes

Encapsulation, OO Design (ppt,pdf)

FileCopierExceptComments.java
GuessingGame.java
BankAccountUser2.java
BankAccount2.java
Bug.java
BugClient.java

Practice Problems 19 (docx,pdf)
Solution to Practice Problems 19 (docx,pdf)
Week 13:
Object-oriented program design The software life-cycle

Design for Homework 13 due 6pm Wednesday
No Homework This Week

HAPPY THANKSGIVING
OOP Design Bug_1.java (sample design for Bug class)
Week 14:
Review: static vs. instance

Reading: 8.1, 8.2
Basics of Inheritance

Reading: 8.3

Inheritance and Polymorphism

Homework 13 due 6pm Friday
Homework Assignment 13: Connect N
super and extends Inheritance (ppt,pdf)
Polymorphism (ppt,pdf)

PrintWriterClient1.java
PrintWriterClient2.java
ProcessedLinePrintWriter.java
ProcessedLinePrintWriterClient.java
RandomClient1.java
DiceRollRandom.java
DiceRollRandomClient.java
DiceRollRandomOverride.java
DiceRollRandomOverrideClient.java
Week 15:
interface and abstract

Reading: 8.4

Course Evaluation forms

Practice with inheritance and interfaces Homework 14 due 6pm Friday Homework Assignment 14 interfaces, inheritance, polymorphism, and review for final Abstract classes and Interfaces (ppt,pdf)
OOP Review (ppt,pdf)

BadBank.java
Comparable.java
ComparableBankAccount.java
Bank.java

Practice Problems 20 (docx,pdf)
Solution to Practice Problems 20 (docx,pdf)
Week 16:
Final Exam
3:30-5:30pm, Wednesday, Dec. 14
Ritter Walk Auditorium