ICOM 4015 – Advanced Programming (Spring 2016)

Advanced programming techniques applied to the solution of engineering problems; extensive use of subprograms, logical and specifications statements. Principles of multiprogramming, multiprocessing, and real-time systems.

General Information

  • Course Information Sheet A.K.A. Prontuario (PDF)

Lecture Tu & Th (5:00 – 6:15) @ Stefani 113

  • Lecture 0 – Introduction

  • Lecture 9 – Interfaces and Polymorphism (Slides en PDF)

  • Guest Lecture – Graphical User Interfaces (by Anshal Joshi) (Slides en PPT)
  • Lecture 10 – Input/Output and Exception Handling (Slides en PPT)

  • Lecture 12 – Recursion, Expression Evaluation (Slides en PPT)


      • Mock Exam 1: February 22, 2016. During lab session.
      • Exam 1: February 29, 2016. During lab session.
      • Exam 2: April 4, 2016. During lab session.
      • Exam 3: May 2nd, 2016. During lab session.
      • Final Exam: TBA


      • Lab Set 1. Introduction to Eclipse, Editing and Executing programs in Java (PDF)
      • Lab Set 2. Using the Debugger and Working with Strings (PDF)
      • Lab Set 3. Introduction to Java Graphics (PDF)
      • Lab Set 4. Random Numbers, Methods and Animation (PDF)
      • Lab Set 5. Image Transitions using Iteration (PDF,Source)
      • Lab Set 6. Arrays and Mouse Adapters (PDF, Source)
      • Lab Set 7. Interfaces (PDF, Source)
      • Lab Set 8. Exception Handling (DOC, Source)
      • Lab Set 9. Files (DOC, Source)
      • Lab Set 10. Graphical User Interfaces (GUIs) (PDF, Source)

Programming Assignments

Software Development Tools

      • Using Git and GitHub from Eclipse:
        • Pushing Initial Code Base (Video)
        • Pulling Initial Code Base (Video)
        • Pushing your changes to GitHub (Video)
        • Fetching your partner changes from GitHub (Video)
      • Eclipse IDE
      • Eclipse Visual Editor Plugin (download, README)
      • Exadel IDE

Supplementary Readings

RFC 1855: Netiquette Guidelines. ABSTRACT: This document provides a minimum set of guidelines for Network Etiquette (Netiquette) which organizations may take and adapt for their own use. As such, it is deliberately written in a bulleted format to make adaptation easier and to make any particular item easy (or easier) to find. It also functions as a minimum set of guidelines for individuals, both users and administrators. This memo is the product of the Responsible Use of the Network (RUN) Working Group of the IETF.

Course Evaluation

Evaluación del curso por los estudiantes (PDF)

Si descubres algún enlace útil para la clase avísame para colocarlo aquí.