FloridaInternational University
School of Computing and Information SciencesCOP2250 – Java Programming (U03, U04)
Fall 2012 Semester
Instructor:Walid AkacheOffice:ECS-312
Phone:305-348-3731
Instructor E-mail:
Office Hours: (M/W/F 1000-1200Noon)
Course Description
COP2250 - Programming in Java is the first of a two-course sequence in computer programming using the Java language This course teaches the basic programming techniques to problem solving in an Object Oriented fashion. It uses the Java language as the tool for programming.
This course is intended for majors in non-scientific areas, who must acquire basic programming skills to supplement their primary areas. It is especially appropriate for students in Information Technology and Management disciplines. The course is a three (3) credit course. It does not require any lab, but it requires writing programs.
The concepts covered in this course are:
- The identification of objects and their behavior
- Design and construction of classes
- Primitive data types
- Control structures
- Strings
- Arrays & ArrayLists
Goals
- To become knowledgeable in the fundamental concepts, methodologies, and techniques associated with Object Oriented Programming.
- To learn the fundamentals of Java Programming Language:
- Classes and Objects
- Fundamental data types
- Operators and operations on data.
- Control structures
- Be able to understand and apply the elementary data structure called array.
- To be able to design appropriate class(s) to solve problems.
- To be able to effectively apply the basic features of Java to problem solving.
Pre-requisite
This course requires no previous programming experience and no Mathematics other than arithmetic skills and some degree of high school algebra.
Academic Conduct
Florida International University is a community dedicated to generating and imparting knowledge through excellent teaching and research, the rigorous and respectful exchange of ideas, and community service. All students should respect the right of others to have an equitable opportunity to learn and honestly demonstrate the quality of their learning. Therefore, all students are expected to adhere to a standard of academic conduct, which demonstrates respect for themselves, their fellow students, and the educational mission of the University. All students are deemed by the University to understand that if they are found responsible for academic misconduct, they will be subject to the Academic Misconduct procedures and sanctions, as outlined in the Student Handbook.
Instructor
Instructor / Walid AkacheOffice / ECS 312
Phone / (305) 348 - 3731
E-mail /
Lecture Schedule
Sec / Day / Time / RoomU03 / T/R / 12:30PM – 1:45PM / ECS 143
U04 / T/R / 5:00PM – 6:15PM / ECS 143
Office Hours
Days / RoomM/W/F 1000-1200 Noon / ECS 312
Assessment
6 Programming Assignments / 40%Two tests / 30% (15% each)
Final Exam / 30%
Note: You MUST pass the final exam (60% or higher) in order to pass the course.
All exams are closed book, and no calculators or other aids will be permitted.
Some material presented in class will not be in the textbook. However, all material presented or assigned are testable material.
Grading Scheme
Final grade will be CURVED.
Curved Grade 93-100“A”
Curved Grade 89-92“A-”
Curved Grade 85-88“B+”
Curved Grade 81-84“B”
Curved Grade 79-80“B-”
Curved Grade 75-78“C+”
Curved Grade 70-74“C”
Curved Grade 65-69“D+”
Curved Grade 60-64“D”
Curved Grade 0-59“F”
Resources
Starting Out with Java: From Control Structures through Data Structures
Second Edition
Tony Gaddis & Godfrey Muganda
ISBN-10: 0-321-54586-9
ISBN-13: 978-0-321-54586-2
Publisher: Addison-Wesley
Copyright: 2012
Format: Paper; 1350 pp
Recommended:
Computer Science Applications Object Oriented programming
By: Joslyn Smith
ISBN: 978-1-60927-745-1
800.200.3908
JavaTutorial
Class Policy
- Programming assignments must be submitted on time; i.e. by the due date specified.
- Programming assignments will be accepted only on a Flash Drive.
- Programs must be free of syntax error in order to get full or partial credit.
- Make sure that all assignments that are submitted are the right ones.
- Late assignments will not be accepted, except on the grounds of valid medical reasons.
- Class attendance is not graded.
- Class participation is not graded.
- Unscheduled tests or exams will not be administered, except on the grounds of valid medical reasons.
- It is your responsibility to plan ahead so that there is no interruption in your study.
- Plagiarism will not be tolerated.
Syllabus
The following is a tentative class schedule. Slight deviation might arise due to the asking of questions and/or answer questions from students. Some class discussions consume time. This means that I might not be able to follow the schedule strictly. The topics will however, be discussed in the order that they are presented in the schedule.
Week 1 - Chapter 1 Introduction to Computers and Java
1.1 Introduction
1.2 Why Program?
1.3 Computer Systems: Hardware and Software
1.4 Programming Languages
1.5 What Is a Program Made of?
1.6 The Programming Process
1.7 Object-Oriented Programming
Week 2, 3- Chapter 2 Java Fundamentals
2.1 The Parts of a Java Program
2.2 The print and println Methods, and the Java API
2.3 Variables and Literals
2.4 Primitive Data Types
2.5 Arithmetic Operators
2.6 Combined Assignment Operators
2.7 Conversion between Primitive Data Types
2.8 Creating Named Constants with final
2.9 The String Class
2.10 Scope
2.11 Comments
2.12 Programming Style
2.13 Reading Keyboard Input
2.14 Dialog Boxes
2.15 Common Errors to Avoid
Week 4, 5 - Chapter 3 Decision Structures
3.1 The if Statement
3.2 The if-else Statement
3.3 The if-else-if Statement
3.4 Nested if Statements
3.5 Logical Operators
3.6 Comparing String Objects .
3.7 More about Variable Declaration and Scope
3.8 The Conditional Operator (Optional)
3.9 The switch Statement
3.10 Creating Objects with the DecimalFormat Class
3.11 The printf Method
3.12 Common Errors to Avoid
Weeks 6, 7 - Chapter 4 Loops and Files
4.1 The Increment and Decrement Operators
4.2 The while Loop
4.3 Using the while Loop for Input Validation
4.4 The do-while Loop
4.5 The for Loop
4.6 Running Totals and Sentinel Values
4.7 Nested Loops
4.8 The break and continue Statements (Optional)
4.9 Deciding Which Loop to Use
4.10 Introduction to File Input and Output
4.11 The Random Class
4.12 Common Errors to Avoid
Week 7 Test I
Week 8 - Chapter 5Methods
5.1 Introduction to Methods
5.2 Passing Arguments to a Method
5.3 More about Local Variables
5.4 Returning a Value from a Method
5.5 Problem Solving with Methods
5.6 Common Errors to Avoid
Review Questions and Exercises
Week 9 - Chapter 6 A First Look at Classes
6.1 Classes and Objects
6.2 Instance Fields and Methods
6.3 Constructors
6.4 Overloading Methods and Constructors
6.5 Scope of Instance Fields
6.6 Packages and import Statements
6.7 Focus on Object-Oriented Design: Finding the Classesand Their Responsibilities
6.8 Common Errors to Avoid
Week 10 - Test II
Week 11, 12, 13 - Chapter 8 Arrays and the ArrayList Class
8.1 Introduction to Arrays
8.2 Processing Array Elements
8.3 Passing Arrays As Arguments to Methods
8.4 Some Useful Array Algorithms and Operations
8.5 Returning Arrays from Methods
8.6 String Arrays
8.7 Arrays of Objects
8.8 The Sequential Search Algorithm
8.9 Two-Dimensional Arrays
8.10 Arrays with Three or More Dimensions
8.11 Command-Line Arguments and Variable-Length Argument Lists
8.12 The ArrayList Class
8.13 Common Errors to Avoid
Week 14 - Final Exam
Dates to Observe
Important Dates:9/3/2012 Labor Day Holiday
10/29/2012 Drop/Withdraw Date
11/12/2012 Veterans Day Holiday
11/24, 25/2012 Thanksgiving
11/30/2012 Classes End
Attendance is required