Description

The main goal of this course is to learn how to decompose problems and solve them with a program and do this in an effective manner that enables your future self and others to read, understand, and maintain your programs. Other goals include learning a second programming language (Java), learning decomposition and debugging strategies, and learning GUI event-driven programming (JavaFX).

Learning Objectives

* When provided a project specification, students will be able to decompose the solution into subproblems and iteratively develop the project using multiple interacting classes, class inheritance, hierarchical data structures, and/or event-driven programming.

* Given their own decomposition into subproblems, students will be able to use data structures provided in libraries (i.e., hash table, tree, and graph), common algorithm patterns (i.e., exhaustive search, divide and conquer, branch and bound, and heuristic), unit testing, and debugging to write a correct solution to each subproblem and integrate the subproblem solutions into a complete working project (currently using Java).</li>

* When provided example solution components and a rubric, students will be able to evaluate the decomposition, clarity, performance, and style of a program.

* Students will be able to compare and contrast programming in two programming languages (currently Python and Java).
Given usage examples and documentation, students will be able to provide graphical user input and output for programs (currently using JavaFX).

General Information

Lecture Location
Center for ESL, Room 102
Course Meeting Dates
January 10, 2018 through May 2, 2018
Lecture Days and Times
Mon, Wed, Fri: 1:00pm to 1:50pm
Section and Lab Times
Monday 2-3:50pm, Ali Gilliland, algilliland@email.arizona.edu
Monday 4-5:50pm, Devon Oberdan, devonoberdan@email.arizona.edu
Tuesday 8-9:50am, Jordan Siaha, jordansiaha@email.arizona.edu
Tuesday 10-11:50am, Kyle K. Block, blockie@email.arizona.edu
Tuesday 12-1:50pm, Maxwell Faridian, maxwellfaridian@email.arizona.edu
Tuesday 2-3:50pm, Theodore Sackos, theodorejsackos@email.arizona.edu
Tuesday 4-5:50pm, Hannah Parraga, hannahparraga@email.arizona.edu

Students are required to attend the first hour of section for which they have enrolled. The second hour of section will be a lab with staff from the course available for questions.
Tuesday January 16th there will be lab sessions during the normal section times for assistance setting up software for the class on your personal laptop. If you are enrolled in a Tuesday section, attend that section. If you are in one of the Monday sections, you can attend any section. These lab sessions on Tuesday January 16th are NOT required due to the preceeding Monday holiday.
TA Lab Hours in 930
Fridays 11am to 12:30pm
Instructor Office Hours in G-S 707
Wednesdays 4:30-5:30pm
Thursdays 1:45-2:45pm
TA Office Hour in 903
Thursdays 1-2pm

Announcements

Final exam grades and final course grades
5/08/18 6:45 PM

The final exam grades have been published in gradescope and pushed to D2L.  All of the final exam grades were bumped up 5 points due to some problems many people had difficulties with.  Extra credit has already been included into the final exam.

If you click on the calculator in D2L you should be able to see your final calculated grade.  I will be posting them in UAccess later tonight or tomorrow morning.

Nice job this semester everyone!

All but final exam grade posted
5/04/18 2:24 PM

All but the final exam grades have been posted in D2L.  Click on the calculator at the top of your view if you would like to see what your current grade is before taking the final exam.

Please double check all of your grades.  Now is the time to bring up any transcription errors you see.

Final Exam Study Guide
5/03/18 8:47 AM

https://docs.google.com/document/d/1UvT6xWfPBK6MojETj1DRROFvfGtg55TaY7g_r0QreWo/edit?usp=sharing

#pin
Iterative depth-first and breadth-first traversal
5/03/18 8:43 AM

Attached is the code for iterative depth-first and breadth-first traversal that we discussed in class on Monday April 30th.

Activity24Main.java

UGraph.java

43 Final Exam Review has been added to class homepage under Resources
5/02/18 10:41 AM

The teaching staff has posted a new class_meeting_notes_(lecture) resource.

Title: 43 Final Exam Review
https://docs.google.com/presentation/d/1IVt20rZ2zv1nXjd0kNG987mWp5_Ii57ZLBs500zP79g/edit?usp=sharing

Due date: May 2, 2018

You can view it on the course page: https://piazza.com/arizona/spring2018/csc210/resources

42 Maze, breadth and depth first traversal has been added to class homepage under Resources
4/29/18 9:18 PM

The teaching staff has posted a new class_meeting_notes_(lecture) resource.

Title: 42 Maze, breadth and depth first traversal
https://docs.google.com/presentation/d/1z0IzLQ4wGawp6aHXPCadN9CUXKcJKELdRsqdqiZHHr4/edit?usp=sharing

Due date: Apr 30, 2018

You can view it on the course page: https://piazza.com/arizona/spring2018/csc210/resources

TCE status update
4/29/18 1:00 PM

Hello everyone,

The TCE rate at this point is 70.07%.  Below is information on how some high TCE rates might help you.  I will send an updated TCE percentage late tonight or early tomorrow morning.

  1. >75% will drop lowest section grade

  2. >85% will also drop lowest PA grade

41 Generics and Maze Div&Conquer has been added to class homepage under Resources
4/27/18 10:30 AM

The teaching staff has posted a new class_meeting_notes_(lecture) resource.

Title: 41 Generics and Maze Div&Conquer
https://docs.google.com/presentation/d/1QsV2UxmS3MciM0BIYvX6cTGLgEsVjeIhe9bREztwOX4/edit?usp=sharing

Due date: Apr 27, 2018

You can view it on the course page: https://piazza.com/arizona/spring2018/csc210/resources

Staff Office Hours
NameOffice Hours
Alex Romero
When?
Where?
Theodore Sackos
When?
Where?
Maxwell Faridian
When?
Where?
Jordan L. Siaha
When?
Where?
Ali Gilliland
When?
Where?
Dr. Michelle Strout
When?
Where?
Devon Oberdan
When?
Where?
Kyle Block
When?
Where?

Class Meeting Notes (Lecture)

Class Meeting Notes (Lecture)
Class Date
Apr 25, 2018
Apr 23, 2018
Apr 18, 2018
Feb 26, 2018
Feb 23, 2018
Feb 21, 2018
Feb 7, 2018
Feb 2, 2018
Jan 22, 2018

Programming Assignments

Programming Assignments
Due Date
Apr 16, 2018
Apr 9, 2018
Mar 26, 2018
Mar 19, 2018
Feb 26, 2018
Feb 12, 2018
Jan 29, 2018
Jan 22, 2018

Peer Reviews

Tutorials

General Resources