| 
View
 

ICS4C4U-01 F2019

Page history last edited by Jesse R Linseman 5 years, 2 months ago

ICS4U
Computer Science, Grade 12 University Preparation 

 Prerequisite Course(s): ICS3U

Course Outline

Shared Repository on GitHub

Textbook: A Guide to Programming in Java, 3rd Ed

 

This course enables students to further develop knowledge and skills in computer science. Students will use modular design principles to create complex and fully documented programs, according to industry standards. Student teams will manage a large software development project, from planning through to project review. Students will also analyse algorithms for effectiveness. They will investigate ethical issues in computing and further explore environmental issues, emerging technologies, areas of research in computer science, and careers in the field.

Link to Mr. Sweeney's Course Webpage

 

Unit 1: Review Fundamental Skills in Java, Introduce Processing and Intro to File Operations

Lesson
Topic
Assigned Work
Extra Resources
1
  1. Introduction to Course
  2. File Organization & History
  3. Processing Programming Environment
  4. Dr. Java Programming Environment   
  5. Have some Fun 
  1. Presentation - Intro to ICS3C/3U/4C/4U
  2. Read [Note - File Organization & History] and setup your file structure
  3. Install the Dr.Java IDE
  4. Place In.java in working folder with jar file  
  5. Read Note - Install Processing and install the Processing IDE
  6. Register for Edmodo and connect to course (Use your full real name please)
 
2
Review Java Concepts
  • input & output
  • variables & calculations
  • selection (if/else)
  • Switch Statements 
  • repetition (loops)
Review Exercises:

 

 

Repetition

Do the repetition exercises in a group of two:

[All Java Lessons]
[All Processing Lessons] - This is a work in progress
3
Java Input (revisited)
  • data streams
  • exceptions
  • try-catch blocks

 

Formatted Output

 

VT: - Using Scanner

4
Text Files: Input & Output
 
3 - Days Assignment: Working with Files

Submit Assignment to GitHub Here

 


Unit 2: Intro to Objects

5
Intro to Objects
(Data Structures)

VT: - Introduction to Classes & Objects

 

VT: Playlist of Programming in Java

6 Instance Methods  
7 Constructors VT 8.4: Constructor Arguments (Processing)
8 Encapsulation  
9 Comparing & Displaying  For Fun: Purple Rain - Processing 
10 Class Methods  
Apr. 25th Unit Test #1 - IPO Review, I/O Operations and Objects

 

 
 
Assignment:
Rectangle Class
Find Assignment & Submit to GitHub Here

 

 

VT - Frogger Intersection

 

 

Unit 3: Java Arrays

Day
Topic
Assigned Work
Extra Resources
M22
Java Arrays
See Exercises
 
Starfield Lesson Create an array of stars that fly out at you from the centre of the screen
 
Review: Working with Arrays
  1. Presentation - Working with Arrays
  2. Continue with Exercises - Arrays
 
Multi-dimensional Arrays
  1. Note: Multi-dimensional Arrays
 
Arrays of Objects
  1. Note Arrays of Objects
  Minesweeper Investigation 
  • Submit Exercises & Investigation to GitHub Here 
  • Create the minesweeper game using Processing - GitHub Here
  • Code the "Game of Life" 

 

 

Unit 4: Object Interactions (Inheritance and Polymorphism)

Day
Topic
Assigned Work
Extra Resources
 
Class Hierarchies  
     

 

 
Inheritance & Variables  
 

Challenge: Frogger (Inheritance)

and working with images

 

 

Mini Assignment:
Complete Puck class

and testPuck

 
 
Challenge: Space Invaders   

 

 

Unit 5: Recursion

Day
Topic
Assigned Work
Extra Resources
 
Intro to Recursion
  1. Note: Intro to Recursion
 Coding Train - Fractal Recursion 
 
Implementing Simple Recursive Algorithms
  1. Note: Implementing Simple Recursive Algorithms
 
 
 
 
 
 
Assignment - Recursion
 GitHub Link Here
 
 
File Operations with Objects 
 
Reading & Writing Objects to Files (Stack Overflow)
VT - Writing Objects to a File (~11 minutes)

VT # 2 - Writing Objects to a File (~ 20 minutes)

 

Unit 6: Searches & Sorts

Day
Topic
Assigned Work
Extra Resources
 
Quicksort
  1. Note: Quicksort
  1. Site: Quicksort - GeeksforGeeks 
  2. VT - Quicksort Visualization 
  3. VT#2 - Quicksort Demo 
 
Sequential Search
  1. Note: Sequential Search
 
 
Binary Search
  1. Note: Binary Search
 
 
Insertion Sort
  1. Note: Insertion Sort
 
 
Selection Sort
  1. Note: Selection Sort
 
 
Bubble Sort
  1. Note: Bubble Sort
 
 
Shell Sort
  1. Note: Shell Sort

GitHub Repository for Searches and Sorts 

16 - Sort Visualizations

Friday, Dec. 7

Unit Test #2 - Object Interactions,

Recursion,

Searches & Sorts

Multi-Dimensional Arrays

   

 

 

 

Summative: 

Day
Topic
Assigned Work
Extra Resources
Before Exam   Complete your Sololearn certificate and ALL exercises   
Dec. 10 Planning the Summative

GitHub Project - Repository Link Here

  • Task List - divide work per group member prior to start
  • Each person is required to include all structures
  • Project should detail parts that are in progress - Use cards.  

Gantt Chart - Tom's Planner

Pseudocode within gitHub - Done before end of next week

Mindomo - Summarize Completed Plan

  • Complete Hierarchy of Classes
  • Complete Project Overview
  • Before end Complete "How does my Project show..." 
  • Daily Notes must be used independently - DAILY!!!!!
  • Link to the GitHub 

 

Comments (0)

You don't have permission to comment on this page.