ITEC 2150 Schedule Fall 2016

Section Links

Back to Main Course Page

Semester, by Week

Week 1 Introduction, Review, Objects

Announcements

  • AJUG
    • Monthly Meetings
    • Devnexus February 20-22, Student Registration closes in Jan
  • Atlanta Android Meetup – August 23rd
  • DROP/ADD deadline August 21st
  • Course commitment 12-16 hrs/week !!
  • About bbCollab
  • D2L Course homepage is King!
    • Secondarily, the course page on wordpress
    • Third, GGC’s wiki.
  • Slides posted for chapters 1-9, for reference (See OneDrive folder, Week 1)
  • List of chapters covered, by text version
  • OneDrive for Business
    • need to authenticate
  • Note date/times for final exams are posted
  • Java Named Top Programming Language of 2015 – Article on Slashdot

Readings and Assignments

Topics

  • Syllabus
  • Course schedule
  • D2L layout
  • Coding standards review
  • Introductions
  • Teaching philosophy
    • Principle of least astonishment (description on wikipedia)
    • MIT’s Minsky — “learn something … many ways”
    • You can observe a lot by watching. … Yogi Berra
    • If you come to a fork in the road, take it. … Yogi Berra
  • Review
    • don’t forget to pseudo-code
    • don’t forget to frame the problem
    • don’t forget ‘incremental development’
  • OO Basics
    • methods and attributes
    • UML notation
    • Processing — Bouncing ball walkthrough
    • Basics, OO
    • modifying the sample
    • Processing’s samples
    • event driven programming
  • Chapter 10 (PPT – on your own)

Week 2 Thinking in Objects

Announcements

  • Consider subscribing to Help!/I have a question … discussion
  • Update on MyProgrammingLab (MPL)
  • Accessing lynda.com remotely
  • Tutoring (check class home page for details)
  • Assignment 3
  • Assignment 4
    • Download / play prior to class Aug 26

Readings and Assignments

  • Chapter 10
    • Skip Sections 10.9 (Stack of Integers), 10.10 (GuessDate), 10.14 (BigInteger, BigDecimal)
  • Chapter 10 VideoNotes (optional)
    • Key Concept 1: The Loan Class (Section 10.5)
    • Key Concept 2: The BMI Class (Section 10.6)
    • Key Concept 4: Thinking in Objects (Sections 10.2-10.4)
    • Key Concept 3: The StackOfInteger Class (Section 10.9)
  • Formal UML Specs (worth skimming, focus on class diagrams)

Topics

  • Assignment 2 Recap
  • How many classes in java?
    • Stackoverflow link
    • Oracle’s Stuart Marks link
  • Timeline for java releases link
  • Exploit ‘HelloWorld’
    • write yourself a standalone test case
  • Elegant Code (or not!) example
  • Chapter 10 Walkthroughs
    • thinking in objects
    • abstraction and encapsulation
    • associations, aggregations and compositions
    • Strings: immutability, interned, replaceFirst(), replaceAll(), match(), split()
    • http://regexpal.com
    • StringBuilder, StringBuffer

Week 3 Inheritance and Polymorphism 1 of 2

Announcements

  • Grades and attendance not up to date
  • MPL check
  • If you struggle with MPL, check out the student tutorial under ‘Help’
  • Surveys — thanks!
  • Lab hours / tutoring hours
  • No class next Monday

Readings and Assignments

  • Chapter 11 (9th and 10th editions)
  • Chapter 11 VideoNotes (optional)
    • Key Concept 1: Geometric Class Hierarchy (Figure 11.1)
    • Key Concept 2: Polymorphism and Dynamic Binding Demo (Listing 11.6)
    • Key Concept 3: The ArrayList Class (Section 11.11)
    • EOC Homework Problem: The MyStack Class (Exercise 11.4, on your own)
  • Assignment 5 – Regex
  • Assignment 6 – Chapter 11 MPLs

Topics

  • UML / Rogue recap
  • Several discussions here, note different styles of class diagrams
  • A decent implementation zipped file (about 8k lines of code, about 25 classes)
  • ObjectAid Eclipse plugin (demo/illustrate, installation instructions at objectaid.com)
  • Formal UML Specs
  • UML diagrams
  • Chapter 10 (continued)
  • String methods, split(), match(), interned Strings, immutable, regex
  • Associations/Aggregations/Compositions
  • Coupling/cohesion
    • freezing / paralysis example
  • Chapter 11 (ppt, Week3 folder)

Week 4 Inheritance and Polymorphism 2 of 2

Announcements

  • Grades and attendance are caught up
    • updated Mon 12 Sep – attendance caought up but not assignments
  • confirm grades/ overall grade visible
  • Guidelines for assignments, tests and quizzes
    • please dont submit .java~, .class files
    • Assignment 2 was review exercise
    • Be sure that your code compiles and runs!
  • Comment about grades, to date
  • Quiz Monday
  • Please follow submission guidelines regarding pde, java, archive files

Readings and Assignments

  • Nice example of eclipse debugger walkthrough, including variables watches video (optional, about 16 mins.)
  • Assignment 7 – UML/HexagonaRing/Find Bug

Topics

  • Inheritance and polymorphism — examples and  the caveats
  • Circles, Rectangles, Shape and Ring

Week 5 Exception Handling and Text I/O

Announcements

  • Attendance is up to date
  • Grading is almost up to date (sans Assignment 7)
  • Assignment Completed in Class Friday
  • Test next Monday (9/26 in class coding),  takehome portion distrib Fri (9/23)

Readings and Assignments

  • Chapter 12
  • Assignment 8 -Grizzly Rogue

Topics

  • CH 10 – 11 Recap
  • Chapter 12 – Exceptions and File IO

Week 6 Abstract Classes and Interfaces 1 of 2

Announcements

  • Exam 1
    • Concept Available Friday
      • USUAL LATE POLICY DOES NOT APPLY
    • In Class Coding Monday
    • Leap in DM Lab Coming

Readings and Assignments

  • Chapter 13
  • Assignment 9 – tbd

Topics

  • Exceptions – continued
    • checked / unchecked
  • File IO
  • Web IO
  • Gists for class examples — Tuesday 21 Feb

Week 7 Abstract Classes and Interfaces 2 of 2

Announcements

  • grades and attendance caught up, except Yahoo Finance
    • pattern going forward
    • balance of assignments and exam (concept and coding)
    • note discrepancies today
  • midterms submitted Monday 3 Oct
    • get in touch with concerns

Readings and Assignments

  • Chapter 13 (for Weds)
  • Assignment 12 – tbd

Topics

  • Exam 1 recap
  • Abstraction
  • Interfaces
  • Nouns/verbs/adjectives
  • The Comparable interface

Week 8 Recursion 1 of 2

Announcements

Readings and Assignments

  • Chapter 18

Topics

  • Abstraction and Interfaces — complete
  • Recursion
  • Counting letters
    • iterative v. recursive
    • role play

Week 9 Recursion 2 of 2

Announcements

  • Grading is not up to date
  • Exam 2 Week 12 +/-

Readings and Assignments

  • Chapter 18
  • Chapter 19 (for next week)
  • Assignment 13 (fractal circles — in class)
  • Assignment 14 (Ch 18 MPLs)

Topics

  • Recursion
  • Multiple Recursion
  • Fractals
  • Recursion v. Iteration
  • ‘Helper’ Methods
  • Walk Through Palindrome Example
  • Towers of Hanoi
  • Tail Recursion
  • CLI (time permitting)
  • Selection Sort, Binary Recursion (time permitting)

Week 10 Generics

Announcements

  • Exam 2 Nov 1st, Tentatively
  • A rational discussion about wildcards, bounds, extends and super here

Readings and Assignments

  • Chapter 19
  • Assignment TBD

Topics

  • Recursion Wrap Up
  • CLI Walkthrough
  •  Generics
    • History
    • Motivation
    • What’s Permitted (polymorphism-wise)
    • What’s Not Permitted (Using inheritance with parametric types)
    • Building a Parameterized Class (GGCStack example walkthrough, aka the Pez dispenser)
    • Generics and Methods
    • Wildcards
    • Type Erasure and its implications

Week 11 Lists, Stacks, Queues and Priority Queues

Announcements

  • Exam 2 Coding (In Class) – Weds Nov 2nd
  • Exam 2 Concept TBD
  • bbCollab walkthrough
  •  Grades / attendance up to date
  • ITEC 4400

Readings and Assignments

  • Chapter 20

Topics

  • Lists
  • Stacks
  • Queues
  • Priority Queues
  • Exam 2 Review
    • questions on prior assisgnments (subtler features could appear : removing “”, DecimalFormat, etc.

Week 12 Sorting

Announcements

  • Grades/attendance not caught up
  • Take home exam posted
    • do not collaborate
    • use an IDE when you can
    • 2 hour limit, 22 questions
  • bbCollab recap

Readings and Assignments

  • Chapter 23 – Searching/Sorting

Topics

  • exam 2 recap
  • Collections (conclude)
  • Insertion Sort
  • Bubble Sort
  • Time Complexity (aka Big O)

Week 13 Sorting 2 of 2

Announcements

  • Grading and Attendance Up to date
  • Last week’s coding examples posted to OneDrive Week 13 folder
  • Report to DM Lab H-1210

Readings and Assignments

  • Chapter 23
  • Assignment 17 – Comparison of Sorting Algorithms
  • Assignment 18
    • Android App Development Essential Training (required)
      • Introduction, Chapters 1-4
    • Android Studio Essential Training (optional)
      • Introduction, Chapters 1-4

Topics

  • MultipleBouncingBalls recap
    • LinkedList question
    • What about IndexOutOfBounds/NoSuchElement exceptions
    • Solution in Week 13 folder
  • Exam 2 Recap
    • Coding Solution posted
    • Concept Will Be Graded
  • Visual Comparison
  • Merge Sort
  • Benchmark overview
  • Benchmark warmup (Insertion/Merge v. 10000/20000/50000)
    • & recap
  • Quick Sort
    • in the sorting-algorithms.com comparison
    • Romanian Dancers
    • Time Complexity
    • The algorithm (ppt)
    • The code
  • What does Java Use? Stackoverflow Article
  • Note: we not covering bucket, radix or heap sort
  • Not covering external sort (use for large data sets )
  • Binary Search
  • Continue work on Assignment 17, as time permits
  • The 7 most vexing problems in programming
  • Assignment 17 recap
  • Android Studio Intro

Week 14/15 Special Topics and Wrap Up

Announcements

  • Grades / Attendance Up to date
    • except BI substitution and sorting assignment AND
  • Attended Business Intelligence Overview?
  • Final
    • Concept (Take Home) Portion Due:
    • Coding  (In Class) Monday December 5th
  • Back in Class B-1200 Friday

Readings and Assignments

  • Assignment 19 – Android Palidrapp
  • Assignment 20 – Muse

Topics

  • Android Development
  • Garbage Collection
  • Survey

Week 16 Final Exams

  • Section 01 Monday, Dec 5, 8am B1200
  • Section 05 Monday, Dec 5, 11am, B1200

Important GGC Dates

See GGC’s Academic Calendar