Programming II
Up Computing Inro to  Program Programming I Programming II Operating Systems Databases Prof  Practice

Home
Up

 

Georgia Gwinnett College

The School of Science and Technology

Advanced Programming

ITEC 3150-01

 Fall 2008

 

Instructor:

 Dr. Anatoly Kurkovsky

Classes: Mondays, Wednesdays 2:00-3:15 pm at C 1135

Office Availability: Mutually agreed time between professor and student by appointment at C-2229

Telephone:              678 407 5732

Personal web site:    http://facultyweb.ggc.usg.edu/akurkovsky/

E-mail:                    akurkovsky@ggc.usg.edu

 Catalog Course Description:

Prerequisite: ITEC 2120.

More advanced programming concepts, principles, and skills.

 Course Goals: 

 Upon a successful completion of this course the students will:

bullet1. Learn and explore how to implement various sorting and searching techniques with arrays including sequential and bubble approach
bullet2. Learn about private, protected, and public members of classes and explore how classes are implemented
bullet3. Understand procedures and techniques of data manipulation within classes by using constructors, destructors, accessor and mutator functions
bullet4. Learn about the encapsulation principle and understand how it is implemented within classes to combine data and operations in a single unit
bullet5. Learn about the inheritance principle and understand how to implement it by using classes to create a derived class from a base class
bullet6. Explore public, protected, and private types of inheritance and learn about composition
bullet7. Learn about the pointer data type and pointer variables, understand the address of operator and the dereferencing operator techniques
bullet8. Learn about the polymorphism principle and understand how to implement it within classes by using operator overloading techniques
bullet9. Understand how to construct function templates and class templates
bullet10. Prepare, test, and execute programs within the used programming environment and the course scope

Textbook and references:

 Required textbook:

bulletC++ Programming: From Problem Analysis to Program Design by D.S. Malik. Fourth Edition (or Third Edition. 2007). Course technology. 2009. ISBN 13: 978-1-4239-0209-6

 Optional textbooks:

bulletLab Manual: C++ Programming: From Problem Analysis to Program Design by Judy Scholl. 2007. ISBN 13: 978-1-4188-3700-6

 Grading policy:

 Your performance in this course will be measured by three written tests (60%), several assignments (20%), and your class participation (20%). Questions on the tests may include the following:

bulletmultiple choice answer selection,
bullettrue-false answer selection.

 The types of assignments may include:

bulletsmall in-class student programming projects,
bullettake-home programming assignments.

You will receive a grade of 0 for assignments submitted after the deadline. When you submit your assignment: include your class, name, assignment number and appropriate file names.

 Evaluation of your class participation will include:

bulletattendance,
bulletunderstanding of the course material,
bulletresponsibility to answer the professor’s questions.

 The final grade will be derived from your performance on the tests, assignments and class participation as follows:

bulletA: 90-100
bulletB: 80-89
bulletC: 70-79
bulletD: 60-69
bulletF: below 60

 Tentative Schedule:

(These dates could be changed depending upon the pace of the course.)

#

Start

Ch.

Lecture Topic

Student Projects & Labs

Assign.

Test

1.

Aug 20

 

Overview of the course goals. Introduction to the Advanced Programming course

 

 

 

2.

Aug 25

10

Application of arrays for sorting and searching

Lab

 

 

3.

Sep 01

10

Application of arrays for sorting and searching

Lab

Assign. 1

 

4.

Sep 08

12

Classes and data abstraction. Private, protected, and public members of classes. The encapsulation principle

Lab

 

 

5.

Sep 15

12

Classes and data abstraction. Data manipulation within classes by using constructors, destructors, accessor and mutator functions

Project 1 “Candy Machine”

 

 

6.

Sep 22

13

Inheritance and composition

Lab

Assign. 2

 

7.

Sep 29

13

Inheritance and composition. Inheritance principle

Lab

 

 

8.

Oct 06

13

Inheritance and composition. How to create a derived class from a base class

Project 2 “Grade Report”

 

Test 1

9.

Oct 13

 

Midterm. Public, protected, and private types of inheritance

Lab

 

 

10.

Oct 20

14

Pointers, Reference and Dereference Operators

Lab

 

 

11.

Oct 27

14

Pointers, Reference and Dereference Operators. Pointer data type and pointer variables

Lab

 

 

12.

Nov 03

14

Pointers, Reference and Dereference Operators. The address of operator and the dereferencing operator techniques

Lab

Assign. 3

 

13.

Nov 10

14

Pointers, Reference and Dereference Operators. The address of operator and the dereferencing operator techniques

Project 3 “Clock Type”

 

Test 2

14.

Nov 17

15

Overloading Techniques and Templates. The polymorphism principle

Lab

Assign. 4

 

15.

Nov 24

 

Thanksgiving Holiday November 26-30.

Lab

 

 

16.

Dec 01

15

Overloading Techniques and Templates. How to construct function templates and class templates

Lab

 

 

 

Dec 08

 

Dec 8 is the last Day of Classes before Final Exams

 

 

 

 

Dec 10

 

Final Examinations

 

 

Test 3

 

Student Policy Statement:

 Students are expected to abide by all policies in the catalog of Georgia Gwinnett College and School of Science and Technology as well as all policies posted on the official web site of Georgia Gwinnett College.

 College Policies:

 Regent’s policy statement

 The University System of Georgia requires that all students enrolled in undergraduate degree programs in University System institutions (including Georgia Gwinnett College) successfully complete all parts of a competency examination in reading and English composition.  This competency examination is commonly called "the Regents' Test", and it is free of charge.  A student has two attempts to pass this test before accumulating 45 hours of collegiate credit.  Please sign up for the Regents' Test when you enroll in English 1102.  Do this in time to have two attempts before accumulating 45 credit hours.

 Americans with disabilities act statement

 If you are a student who is disabled as defined under the Americans with Disabilities Act and require assistance or support services, please seek assistance through the Center for Disability Services.  A CDS Counselor will coordinate those services.

 Equal opportunity statement

No person shall, on the grounds of race, color, sex, religion, creed, national origin, age or disability, be excluded from employment or participation in, be denied the benefits of, or otherwise be subjected to discrimination under any program or activity conducted by Georgia Gwinnett College.

 Affirmative action statement

Georgia Gwinnett College adheres to affirmative action policies designed to promote diversity and equal opportunity for all faculty and students.

 Academic respect

 The college exists to foster educational excellence.  To this end, a classroom atmosphere that supports learning must be maintained.  Students are expected to be active, attentive participants in the class.  Students are also expected to abide by class policies and procedures and to treat faculty and other students in a professional, respectful manner.  Students are expected to be familiar with the student conduct code published in the Student Handbook.

 Academic integrity

 All portions of any test, project or final exam submitted by you for a grade must be your own work.  Cheating includes any attempt to defraud, deceive or mislead the instructor in arriving at an honest grade assessment.  Plagiarism is a form of cheating that involves presenting as one's own, ideas or work of another.  Violation of the Academic Integrity Policy will result in a grade of "0" for that test, project or exam.  The second offense will result in assignment of a grade of "F" for the course and a formal charge of Academic Dishonesty will be lodged with the Vice President for Academic and Student Affairs.  Policies have been established by Georgia Gwinnett College to insure due process in charges of cheating or plagiarism. A copy of these procedures can be found in the GGC Student Handbook.

 School of Science and Technology Policies:

 Absence/Make-up Policy

 You are expected to attend each class meeting.  Attendance may be taken by various methods that could include clicker or written quizzes in the first 5 minutes of class, or sign in sheets. This information will be taken into account at the end of the semester when grades are calculated, if you are on the borderline.

 Special arrangements to take a regular exam early must be made in advance and in writing, if a pressing obligation prevents you from taking an exam.

 Students must notify Professor THE DAY of the exam if an emergency arises and they miss the exam. Notification may be by email, text or phone message is acceptable. A makeup will be scheduled within two days of the original exam. Makeup exams may not be the same format as the regular exam. Other formats include essay or oral exams to a faculty panel. A valid written excuse for missing the regular exam is required. (Police report, ER forms, doctor's note, etc.)

 Instructor/Course Policies:

 Drop for non-attendance

 Students who never attend a class by the end of the first two weeks of the term will be reported for non-attendance. Students who do not drop a class during the schedule adjustment period and are reported for non-attendance will be automatically dropped from that course.

 Course Absence

You will not get a good grade in the course without an excellent attendance. If you miss a class, you are responsible for all lecture notes, slides, assignments, and other.  All students are allowed 3 absences from class in the semester with no penalty for crisis or non-crisis reasons. Students who miss four or five class sessions will be subject to a substantial grade deduction of 5 points.  After six absences, it is recommended that you drop the course.

Course changes

This course syllabus provides a general plan for the course. The professor reserves the right to make changes to the syllabus, including changes to assignments, projects, examinations, etc., in order to accommodate the needs of the class as a whole and fulfill the goals of the course.  

 Some common sense notices

bullet

Please do not be late for classes,

bullet

Please do not wear hats in the classroom,

bullet

Please turn off all cell phones, beepers, pagers, buzzers, and other noisy electronic devices during class time,

bullet

Please do not bring children, parents, friends, etc. into the class,

bullet

Please show common courtesy to your fellow classmates and professor.

 The relationship between the ITEC 3150 Course Outcome Goals and the GGC ITEC Program Outcomes

#

ITEC 3150 Course Outcome Goals

The GGC Information Technology Program Outcome Goals

Assessment Tools

1.

Learn and explore how to implement various sorting and searching techniques with arrays including sequential and bubble approach

4. Demonstrate a desire and ability to continuously refine their computing knowledge and skills and learn to use new tools and processes.

5. Demonstrate a working knowledge of multiple programming languages and system environments.

Class and laboratory discussion, quiz

2.

Learn about private, protected, and public members of classes and explore how classes are implemented

4. Demonstrate a desire and ability to continuously refine their computing knowledge and skills and learn to use new tools and processes.

5. Demonstrate a working knowledge of multiple programming languages and system environments.

Class and laboratory discussion, quiz

3.

Understand procedures and techniques of data manipulation within classes by using constructors, destructors, accessor and mutator functions

2. Work as individuals and as members of a collaborative team that solve IT problems.

4. Demonstrate a desire and ability to continuously refine their computing knowledge and skills and learn to use new tools and processes.

5. Demonstrate a working knowledge of multiple programming languages and system environments.

Class and laboratory discussion, quiz or written assignment

4.

Learn about the encapsulation principle and understand how it is implemented within classes to combine data and operations in a single unit

2. Work as individuals and as members of a collaborative team that solve IT problems.

4. Demonstrate a desire and ability to continuously refine their computing knowledge and skills and learn to use new tools and processes.

5. Demonstrate a working knowledge of multiple programming languages and system environments.

Class exam

5.

Learn about the inheritance principle and understand how to implement it by using classes to create a derived class from a base class

2. Work as individuals and as members of a collaborative team that solve IT problems.

4. Demonstrate a desire and ability to continuously refine their computing knowledge and skills and learn to use new tools and processes.

5. Demonstrate a working knowledge of multiple programming languages and system environments.

Laboratory discussion and written assignment, test

6.

Explore public, protected, and private types of inheritance and learn about composition

2. Work as individuals and as members of a collaborative team that solve IT problems.

4. Demonstrate a desire and ability to continuously refine their computing knowledge and skills and learn to use new tools and processes.

5. Demonstrate a working knowledge of multiple programming languages and system environments.

Laboratory discussion and written assignment, test

7.

Learn about the pointer data type and pointer variables, understand the address of operator and the dereferencing operator techniques

4. Demonstrate a desire and ability to continuously refine their computing knowledge and skills and learn to use new tools and processes.

5. Demonstrate a working knowledge of multiple programming languages and system environments.

Class exam

8.

Learn about the polymorphism principle and understand how to implement it within classes by using operator overloading techniques

4. Demonstrate a desire and ability to continuously refine their computing knowledge and skills and learn to use new tools and processes.

5. Demonstrate a working knowledge of multiple programming languages and system environments.

Laboratory discussion and written assignment, test

9.

Understand how to construct function templates and class templates

4. Demonstrate a desire and ability to continuously refine their computing knowledge and skills and learn to use new tools and processes.

5. Demonstrate a working knowledge of multiple programming languages and system environments.

Laboratory discussion and written assignment, test

10.

Prepare, test, and execute programs within the used programming environment and the course scope

4. Demonstrate a desire and ability to continuously refine their computing knowledge and skills and learn to use new tools and processes.

5. Demonstrate a working knowledge of multiple programming languages and system environments.

Class exam

  

 

horizontal rule

This Web site is © 2003 - 2020 by Anatoly Kurkovsky

Last updated: March 05, 2020