|
|
|
|
|
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)
|
Lab (Friday)
|
Handouts & Resources
|
|
Week 1:
|
MLK Day
|
Introduction to Computer Science
Simple Computer Architecture
Your first Java program
Simple Input and Output (I/O)
Primitive data types
|
Basic Unix Commands
Compiling and running
simple programs
primitive data types, expressions, and variables
String constants and concatenation
Homework 1 due 6pm Friday
Homework Assignment 1: Greetings
|
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:
|
Typecasting
Variables and expressions
Simple String expressions
Reading: 1.1-1.3, 2.1-2.4
Optional Reading: 1.4, 2.5
|
if/else
boolean data type and expressions
Reading: 3.1, 3.2
Homework 2 due 6pm Thursday
Homework Assignment 2: Meltdown
|
booleans and if/else
|
Conditions (ppt,pdf)
Swap.java,
Conditional.java,
Conditional2.java
Practice Problems: Variables and Expressions (docx,pdf),
Solution to Practice Problems: Variables and Expressions (docx,pdf),
Practice Problems: Conditions (docx,pdf),
Solution to Practice Problems: Conditions (docx,pdf),
Practice Problems 1 (docx,pdf),
Practice Problems 2 (docx,pdf)
|
Week 3:
|
The "while" loop
chars
Reading: Chapter 4
(Last day to drop a course)
|
Loop variations (for and do/while)
Homework 3 due 6pm Wednesday
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: Loops (docx,pdf),
Solution to Practice Problems: Loops (docx,pdf),
Practice Problems: Basic Design Strategies (docx,pdf),
Solution to Practice Problems: Basic Design Strategies (docx,pdf),
Practice Problems 3 (docx,pdf),
Practice Problems 4 (docx,pdf),
Practice Problems 5 (docx,pdf)
|
Week 4:
|
Array basics
Arrays and loops
Reading: 7.1
|
Multi-dimensional arrays
Midterm Review
Reading: 7.5
Homework 4 due 6pm Wednesday
Homework Assignment 4: Draw Me A Pretty Picture
|
Arrays
Midterm Review
|
Arrays (ppt,pdf),
2D Arrays (ppt,pdf),
Practice Problems: Array Basics (docx,pdf),
Solution to Practice Problems: Array Basics (docx,pdf),
Practice Problems: Array Problems (docx,pdf),
Solution to Practice Problems: Array Problems (docx,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
Text processing
Reading: 2.2
|
Lab Assignment: Array problems (Counts as Homework 5, but done during first hour of Lab)
String type and methods
|
Text Processing (ppt,pdf)
Practice Problems: String Problems (docx,pdf),
Solution to Practice Problems: String Problems (docx,pdf),
Practice Problems 9 (docx,pdf)
Array2DExample.java,
StringMethodsExample.java,
Code to print out all char values
|
Week 6:
|
Using objects
|
Objects and Reference semantics
Reading: pages 321-327
Homework 6 due 6pm Wednesday
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.5
|
Filed, directories, and scripts
Files and I/O Exceptions
Reading: 9.1
Homework 7 due 6pm Wednesday
Homework Assignment 7: Pretty Shapes
|
Files, streams, and I/O exceptions
Happy SPRING BREAK!
|
Files (ppt,pdf)
Exceptions (ppt,pdf)
Reader.java,
ReaderWriter.java
Practice Problems: File Reading and Writing (docx,pdf),
Solution to Practice Problems: File Reading and Writing (docx,pdf),
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 Wednesday
Homework 8: Barcodes
|
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: Exceptions (docx,pdf),
Solution to Practice Problems: Exceptions (docx,pdf),
Practice Problems: Methods (docx,pdf),
Solution to Practice Problems: Methods (docx,pdf),
Practice Problems 14 (docx,pdf)
Solution to Practice Problems 14 (docx,pdf)
|
Week 9:
|
Array and object types for parameters and returns
Linear search
Binary search
Reading: pages 334-345
(Tuesday is last day to withdraw)
|
Slow sorting algorithms
Reading: 7.4
Homework 9 due 6pm Wednesday
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: Methods 2 (docx,pdf),
Solution to Practice Problems: Methods 2 (docx,pdf),
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 Wednesday
Homework Assignment 10: Concordances
|
Efficient sorting techniques
Big-O
Midterm Review
|
Sorting (ppt,pdf)
Computational Complexity (ppt,pdf)
Midterm Review (ppt,pdf)
Sample midterms are available
Practice Problems: 2D Arrays (docx,pdf),
Solution to Practice Problems: 2D Arrays (docx,pdf),
Practice Problems: Search (docx,pdf),
Solution to Practice Problems: Search (docx,pdf),
Practice Problems: Sorting (docx,pdf),
Solution to Practice Problems: Sorting (docx,pdf),
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
Encapsulation
Accessors and Mutators
Reading: 5.1, 5.2
(No homework this week)
|
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
Packages
Reading: 6.3-6.7
Homework 11 due 6pm Wednesday
Homework Assignment 11: 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
|
Review: static vs. instance
Design for Homework 12 due 6pm Wednesday
|
OOP Design
|
Bug_1.java (sample design for Bug class)
|
Week 14:
|
Basics of Inheritance
Reading: 8.1, 8.2
|
Inheritance and Polymorphism
Reading: 8.3
Homework 12 due 6pm Wednesday
Homework Assignment 12: 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
|
Study Day (No Lecture)
Homework 13 due 6pm Wednesday
Homework Assignment 13
|
No Lab this week
|
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, Tuesday, May 8
Gladfelter Hall 013
|
|
|
|