ITFN 1302        Foundations of Programming, Java

Spring 2004 (CRN 21578)

 

Instructor:
Vernard Martin

e-mail: vernard@cc.gatech.edu

Phone: TBA

Office: T109C

Office hours: TR 3:00-400pm 

 

Instructional Assistant:
Brent Wenson
e-mail: csu10127@mail.claytonstate.net   

Office: T109D
Office hours: TBA

 

 

 

Note: this syllabus may change during the semester

Also note there is a new 3 strike policy in place for classes

Course Description (3-0-3)

 

An introductory programming course using Java, the course contains a "practicum" and a "best practices" didactic. The practicum focuses on the hands-on business of writing code, knowledge of basic control structures and language syntax. The best practices didactic focuses on the craft of software engineering, good programming practices, performance and portability issues, and advanced syntax and data structures. 

 

Course Outcomes

Students are expected to obtain a developing level of mastery of programming logic and algorithmic principles.  Students will demonstrate an emerging level of knowledge of Java syntax, object-oriented programming, and procedural and data abstraction.  Student should show potential to perform independently on programming assignments.  Students will also be aware of basic principles of good design, documentation and programming terminology.

 

Objectives

Students coming out of this class will have an understanding  of

  1. the basics of programming logic

  2. data types (including dynamic data types) and data abstraction

  3. procedural abstraction

  4. object-oriented programming (including inheritance and polymorphism)

  5. object-oriented design

  6. GUI development and basic graphical components

  7. and basic database programming concepts.

ITP Choice

All students at CCSU are required to state that they have on-demand access to a notebook computer that meets the recommended hardware/software specifications that have been established by Clayton State faculty.  Academic penalties may be incurred for not meeting this requirement.  Refer to the ITP Choice website for specifications and FAQs: http://itpchoice.clayton.edu/

Prerequisites

 

The student should be familiar with one of the following operating systems: Win95/98/2000 or WinNT. The student should also be comfortable with  basic file manipulation (copying and deleting files, as well as creating and removing directories). The student should also be very comfortable with concepts such as web research and email.  These concepts will not be taught in this class and can be acquired in Notebook101, which is taught free at the HUB.

 

ITFN 1101; Math (see the DUCK for more info)

 

Meeting Times

 

Lecture: THURSDAY ONLY  7:30PM-10:15PM   T100 (Hybrid Online) 
Lab: On your own time

 

Final: Wednesday, May 5th, 8:30-10:30PM (T-100)

Required Textbooks

 

Java, How to Program (4th Edition) by Deitel and Deitel, ISBN: 0130341517

Assessment

 

You will have numerous opportunities to practice and demonstrate mastery of the materials covered in these courses.  It is up to you to keep current on all readings and assignments (including in-class announcements).

 

Note the following things:

·        Tests are not multiple choice.  You will be expected to write/trace code.  This should not be very difficult if you understood/did your homework

·        Labs are to be completed on your own and on time. Questions about lab topics are usually on the test.

·        Programs will be independent, unless otherwise stated.  This means all work that you receive a grade for will not be shared with others in any way, including looking at other students code.

·        Tests make up a majority of your grade; the final represents 35% of your grade to help students who have struggled during the semester,  while not hurting students who already understand the material. 

 

 

If you fall behind, you will most assuredly fail this course!

 

Grading will be based upon the following scale:

 

            A         >= 90%

            B         80% - 90%

            C         70% - 80%

            D         60% - 70%

            F          < 60%

 

Assignment             Portion of Grade

Final*                          35%

Tests (3)                     45% (15% each)

Programs                   20%

 

*See Missing Tests below

Random, in-class pop quizzes may be given if it appears that you are not keeping up with the material and aren’t doing your part.  These will be counted in borderline cases (akin to extra credit).

 

Programs that don’t compile/run at all or halt/crash will receive no credit. You can assure that you get a grade by commenting out sections that do not work. The programming assignments will be graded on a progressive scale, so it’s almost always possible to get most credit if you follow good programming practices, building your solution piecewise and testing each piece.  If you have a program that doesn’t compile, comment out those sections that don’t compile and turn it in.

 

Please be advised that no credit will be given for late assignments.  If you have a problem that arises during the course of the semester, please contact me as soon as possible.  It's good advice to turn your assignments in a day early from schoolNot being able to connect from home is not an excuse.

 

Withdrawal

Students who stop attending class without doing the necessary withdrawal paperwork will receive an automatic grade of ‘F’.  Students who withdraw after midterm will receive an automatic grade of ‘WF’.  Withdrawal policy and procedures are published in the Academic Catalog and in the Schedule of Classes each semester.

 

 

Missing Tests

Students are able to miss one test (excluding the final) for whatever reason. Note that missing additional tests results in an automatic 0, no matter what the excuse.  The final will replace your lowest test grade, provided it is higher than other tests.  So if your alarm didn't go off, then there's no problem.  Any excuse after that will not be accepted, no matter what. Realize that missing a test is NOT in your best interest.  If you have 3 strong test grades going into the final, there is less pressure to do well.  If you have a 0 for one of your tests, then the final effectively weighs 50% of your overall grade.

Words of Wisdom (TAKE THIS PART SERIOUSLY!)

 

Class attendance is not required, except for the first week of the course.  I don't take roll because this isn't kindergarten.  However, this course throws a lot of responsibility at you (labs, programs, lectures, tests…) and you need to keep track of when they are assigned, and when they are due.

 

Start assignments early.  This way, you can ask questions and clarify things that are confusing.  Often, I’ll make assignments intentionally “open” so that you can come up with creative solutions, but this also means it’s often easy to misread what I’m looking for in the correct solution.  Better to ask and learn than to get a low grade! Also, make sure you turn in SOMETHING - even if you think it's incorrect. It's better to get a low grade than no grade.

 

Assignments can be completed through several different means. It is suggested that you complete the assignments on your own, such that you understand concepts and could reproduce similar programs.  We understand the temptation to cheat and that this does occur, you can see the programs are worth exactly 20% of your overall grade.  Simply stated: if you fail the tests, you fail the class.  

 

Your grade in this course is determined completely on performance, not on effort.  

 

 

Individuals with disabilities who need to request accommodations should contact the Disability Services Coordinator, Student Center 214, 770-961-3719, disabilityservices@mail.clayton.edu.