CSCD 210
Programming Principles I
Course Syllabus
Spring 2010


Instructor:

Tom Capaul

Office:

303 Computer & Engineering Building

Office Hours:

MWF 10-10:50, TR 12-12:50, other times by appointment (please email confirmation)

Email:

tcapaul@mail.ewu.edu - This is the preferred means for sending messages  ALTERNATE EMAIL: tcapaul.ewu@gmail.com

Phone:

359-7092 (24-hour voice-mail)



Textbooks:

 Building Java Programs by Reges and Stepp, ISBN 13: 978-0-321-38283-2

Materials required:

Blackboard Account, java compiler, text editor (JGrasp will be used by instructor), email account

 


NOTE: This course assumes prior programming experience. If you don't have prior programming experience you must take CSCD 110


COURSE GOALS:

PRIMARY:

To provide students with an in depth look at problem solving, algorithm development, and testing and debugging in an object oriented programming environment.  You will build on basic programming fundamentals such as data representation, arithmetic, logic, decisions, repetition, basic input and output, and class design.

SECONDARY:

Help you build a *solid* work ethic to ensure success in this degree program as well as in industry.


REQUIREMENTS:

  • You must have basic math proficiency (MATH 104 or concurrent enrollment in MATH 105) and computer literacy clearance to be enrolled in this class.  Basic ability in algebra and geometry is assumed on assignments.  In addition, it is assumed you are comfortable with getting around on a computer (copying files, starting programs, sending email, etc.).  These types of things are NOT discussed in this class.  
  • Come to class prepared.  This means read the chapter which is being discussed in class and review notes regularly.  Also, it is IMPERATIVE that you begin work on assignments as soon as possible.  This will give you sufficient time to resolve errors, seek help (from the instructor and from tutors), and properly test your solutions.  For success in this class, and all others in Computer Science, you *MUST* start assignments as soon as possible or you will not complete them satisfactorily.  You need to concentrate on building a solid work ethic if you expect to succeed in this degree.
  • You must have a good work ethic and enjoy solving problems.  These items are fundamental to success in this class and this field.

TENTATIVE TOPIC SCHEDULE:

NOTE: Make sure you read the appropriate chapter sections in the book before we begin covering the topic in class.  Lectures are based on you having read over the material that is being covered.

Week

Ch.

Topic

1

1

Intro to Java: why Java, strings, console output, identifiers and keywords, static methods, errors

2

2

Primitive Data and Loops: primitive types, expressions, arithmetic, casting, for loop, class constants

3

3

Parameters and Objects: parameters to methods, overloading methods, return values from methods, types of Objects, reference semantics, console input

4

4

Conditional Execution: more loops, if/else statements, object equality, char type, printf, exceptions

5

5

Program Logic and Indefinite Loops: while loop, boolean type, dealing with user errors, do/while loop, assertions

6

6

File Processing: Files and file objects, using Scanner for input files, paths and directories, PrintStream for output files

7

7

Arrays: creation, initialization, traversal, searching, (supplemental) sorting, arrays of Objects,

8, 9, 10 8 Classes: classes and objects, fields, methods, constructors, encapsulation, instance methods (toString, equals), this

 

FINAL EXAM

 

9am section: Thursday, June 10, 8am-11am

11am section: Wednesday, June 9, 10am-1pm

(NOTE: exam is written to take no more than two hours, but I give you three so you don't feel rushed and can give it your best effort)


GRADING:

Grading Area

Number

Percentage of Class Grade

Assignments

7-8

40

Quizzes

3

10

Exams

2

20

Final Exam

1

30

Numerical percentage is calculated based on the following scale.

Assignments

40%

total points earned on all assignments / total assignment points * .40

Quizzes

10%

total points earned on all quizzes/ total quiz points * .10

Exams

20%

total points earned on all tests / total test points  * .20

Final

30%

total points earned on the final / 200 * .30

After summing the percentages, the conversion to grade point system is as follows

95 - 100%

4.0

62 - 94%

subtract 0.1 grade point for each percentage point less than 95

60 - 62%

0.7

0 - 59%

0.0

Some specific conversions:  95/4.0, 90/3.5, 85/3.0, 80/2.5, 75/2.0, 70/1.5, 65/1.0

The instructor retains the right to increase grades above this formula.

*** YOU MUST TURN IN ALL ASSIGNMENTS TO PASS THE CLASS (1.9 is the maximum grade you will earn if all assignments are not submitted in working order) ***

*** YOU MUST EARN A 2.5 OR GREATER TO MOVE ON TO CSCD 211 ***


GENERAL POLICIES:

  • ADA.  Americans with Disabilities Act:  If there is any student in this class who has special needs for accommodation, please feel free to discuss the matter with the instructor. Students requiring accommodations need to contact Disability Support Services (DSS) at (509) 359-6871. The DSS Office is located in PUB 215D.
  • Exams and Quizzes. No makeup exams/quizzes will be given without prior arrangements having been made or in the case of a DOCUMENTED emergency after the fact.  Exam dates will always be given at least a week before they occur, and review sessions will occur preceding each exam/quiz. 

    NOTE on preparation for exams and quizzes: Exams and quizzes will based on (1) in class lecture, (2) self-check problems at the end of each chapter, and (3) recent programming assignments -- so make sure you prepare accordingly.
     
  • Homework. Homework assignments will be in the form of programming projects and possibly written assignments.  Assignments are due BY THE REQUIRED TIME on the due date.  Thereafter they will lose 20% per school day that they are late, as determined by the date stamp entered via the Blackboard System.   Assignments that are turned in more then a week late will not receive credit, but will count as turned in provided they work to specifications.  Any programs submitted must at least compile for any consideration for partial credit.
  • Professional Behavior
    • You are expected to act in accordance with the department's Code of Professional Conduct for Students.  This means cheating will not be tolerated. If you ever receive aid on an assignment, be sure you document where the aid came from.  Students who copy another's program/work may be subject to severe disciplinary action, which may include a course grade of 0.0 and a written statement in his/her permanent record. 
       
    • Cell phone ringers off in class, please.  If you need to have yours on, please inform me prior to class.  Do not answer cell phones in class without prior approval: if you do you will be asked to leave for the day.
       
    • Respect your classmates and your instructor and do not talk in class when the instructor or someone else is speaking.
  • Incompletes.  Incompletes are subject to this restriction: "PASSING work/progress must be demonstrated (you must have a 2.0 or greater) through three weeks prior to the end of the term." Incompletes must be requested prior to finals week. Incompletes will not be granted without mitigating circumstances. (Dissatisfaction with your grade is NOT a mitigating circumstance!)
  • Lectures. Attendance is not graded, but it is expected you will be in class daily.  If you choose not to come to class then please do not use office hours as a substitute for attending lectures.  Those that attend regularly and participate in class discussion will be rewarded accordingly when final grades are calculated!  Classroom activities will complement, not necessarily duplicate, the text.  Furthermore, you are accountable for material covered in class, so you miss class at your own risk!  If you must miss class, email the instructor so she or he knows what is going on.
  • PreparationYou are expected to read material from the chapter in the book that is being discussed in class AHEAD of time (see above for a list of topics and chapters).  Examples given in class and by the authors should be confirmed by the student at home to guarantee complete understanding of the subject.