Java Programming

Instructor: Phil Tayco
Class Hours: Tuesdays, Lecture 6:00pm – 8:25pm and Lab 8:35pm-9:55pm, Room T205
Website: http://randomlyphilled.org/
Email:

Recommended Text:

·  Java: How to Program 9th Edition or better, Deitel and Deitel

Class Overview
This course teaches the fundamentals and techniques of programming using the Java programming language. Topics covered include (and are not limited to) Java fundamentals, programming fundamentals (sequence, selection and repetition), Object oriented programming (OOP), Arrays and files. Modern programming and debugging techniques will be stressed throughout the course.

Goals and Objectives
At the end of this course, you should be able to able to do/know the following:

·  Understand the Java programming environment

·  Understand the fundamentals of program design

·  Identify the basic components of Object Oriented Programming

·  Identify fundamental and advanced data structures including data types, arrays and classes

·  Develop stand alone Java applications

·  Learn and apply the basics of the Software Development Lifecycle (SDLC)

·  Understand programming and debugging techniques

Class Format
Lectures will be where we spend class time discussing concepts, working through examples, designing and coding solutions to problems. The lecture formally takes place from 6-8:25pm, but will often involve time to write code like lab time. Similarly the formal lab time is from 8:35pm to 9:55pm. This is where you would work on programming problems as well as spend some time doing discussion depending on how the course is going that day.

We will be using Java to implement our solutions in the lab. You are free to use any Java editor to do your lab assignments, but your goal should always be to make sure your programs work with the computers in the lab or on a laptop that you wish to use to demo your programming solutions. You must be able to demonstrate all programming assignments physically in the classroom.

Grading
Grading percentages are as follows:

·  Weekly exercises – 75%

·  Final Exam – 25%

We may be using the lab to work on programming exercises based on the week’s topics of discussion. Each exercise requires you to work on completing an in-lab programming problem. The exercises are designed for you to complete the problem during the lab time and are generally going to be programming exercises from the book or a variation of them. We will have 10 lab exercises and you will show completion by way of demo in the lab. If you are unable to complete the lab, you must demonstrate your solution the following week. No late demos will be allowed. If you miss a class, you can check the class web site for details on the lab exercise as they are posted at the end of class each week.

A final exam will be on the last day of class or may be a project due on the last day where you will have about 2-3 weeks of time to complete. The final is designed to test your programming skills on all concepts we have covered throughout the class.

Class time is highly interactive as you will see in the weeks to come. For participation, all I ask is that you enjoy yourself, think and get involved. Don't be shy. You don't have to be Einstein every time you speak, just throw in your thoughts, even if it is as simple a question as, "I don't understand."

Office Hours and Miscellaneous
Office hours are 1 hour before class at 5pm by request only. Location is to be determined and will start (and most likely be) in this room. Extra time is by appointment which I am happy to do. However, I am limited in time as I am also a full-time employee. Please let me know in advance if you want to meet outside of office hours and we will find ways to make it work.