CS 1410 Object Oriented Programming Instructor Name Email | Website Office | Office Hours Course Description This is a Concurrent Enrollment Course, offering both high school credit through ______________ High School and college credit through Utah Valley University. Credit from this course is transferable to all colleges and universities. Contact the receiving institution for how the credits will be applied. Introduces the key concepts of object-oriented programming. Includes pointers and dynamic memory allocation, linked lists, inheritance and polymorphism, the development of graphical user interfaces, operator overloading, memory management, exceptions, templates and the standard template library, and an overview of object-oriented analysis and design. Prerequisites This class is available to all high school juniors and seniors in good academic standing. High school prerequisites apply. This course builds on the object oriented programming principles taught in CS 1400. A solid understanding of these concepts is assumed in this course. In CS 1410 students will increase their ability to do object oriented design, and implement object oriented programs in the C++ programming language. Topics The following is a list of the topics to be covered in the course, in the approximate order of their presentation. This sequence is subject to change. Object Oriented Analysis and Design Pointers Linked Lists Inheritance Polymorphism Recursion Graphical User Interfaces Operator Overloading Managing Memory Exceptions Templates The Standard Template Library Page 1 Learning Outcomes At the completion of this course, students should be able to do the following: 1. Analyze difficult computing problems and develop object oriented solutions to those problems. 2. Apply good object design and analysis methods to develop an object oriented design. 3. Using an integrated development environment and appropriate design documents, construct reasonably complex C++ programs that: o use pointers o use inheritance and polymorphism o use overloaded operators o use programmer written function templates o use programmer written class templates o use standard exception handling techniques o correctly manage memory o use recursion o use graphical user interfaces 4. Test and debug programs to assure their quality and usability. 5. Document programs for understandability and maintainability by providing in-line comments, standardized class and file headers, and elements of good programming style. Text Required UVU CS 1410, Problem Solving with C++, a Pearson Custom Book ISBN Number: 978-0-558-08134-8 This book will be provided by your school. It is also available in the UVU bookstore. Optional References - not required for this course A good UML reference Fowler, M. and Scott, K., "UML Distilled:, Addison-Wesley, ISBN 0-201-32563-2 Procedures This is an "Active Learning" course. Class time will be devoted to group discussions of key issues, clearing up questions from previous class session, and reviewing solutions to in-class exercises and programming assignments. Your examinations will concentrate on the concepts and terms as covered in the lesson material and your ability to model solutions to problems using an object-oriented programming language. There will be in class quizzes, exams, and programming projects to test your comprehension of the material. 2 Commentary I believe in active participation by students in their educational process. This puts the primary responsibility for learning where it belongs -- on your shoulders. Come prepared to get involved in classroom discussions. Together we can have a lot of fun reaching the course outcomes. Communication In the fast-paced world of technology, the only thing that is constant is change. In such a world, the ability to communicate quickly and efficiently is critical. To keep you abreast of changes in the world of computer science and changes in the course content and assignments, we will use the course website, email, the CS 1400 forum, and Blackboard. Assessment Participation ~ Assignments ~ Grading Philosophy Assignments Programming projects and labs are provided to integrate and reinforce concepts covered in this course. You should plan on spending anywhere from 4-6 hours per assignment. It's usually best to complete each project shortly after finishing the lesson. Once completed, submit your project documentation, executable file, and source code by using Blackboard. Each program you submit will be run to see if meets the project specifications. A substantial part of your grade will depend on whether your code executes according to the project specification. A checklist is provided for each assignment to help you make sure that your program meets the specification. We will be using Visual C# Express in the CS labs as the standard for testing code. If you are the least bit uncertain whether your code will run in this environment, be sure to test it in the labs. The other part of each project's grade is based on coding style, simplicity and conformance to the Style guidelines provided. Before submitting your project, zip all your source code and an executable into a single zip archive. Name the file with your initials and assignment number. For example, if I were submitting programming project 1, I would create a zip file named proj01rkd.zip Once you have zipped together your project files, upload your files using Blackboard. Make sure you send all the files asked for in the specification. Exams & Quizzes Two midterm exams will be given. The Final Exam will be administered in class on the day indicated in the calendar. Page 3 Grade Sheets Every project and lab has an associated grade sheet. There are links to these grade sheets on the project and lab pages. Before you turn in a project or lab, please look at its grade sheet to make sure that your program meets all of the requirements for that project or lab. Evaluation of your achievement of the course objectives will be based on the following: labs, programming projects, and exams. Grading Scale A = 100-93 B - = 82-80 D+ = 69-67 A - = 92-90 C+ = 79-77 D = 66-63 B+ = 89-87 C = 76-73 D - = 62-60 B = 86-83 C - = 72-70 F = 59-0 Grades and Credit You will receive the same grade for your high school course as you receive for your college course. Your grade for this class will become part of your permanent college transcript and will affect your GPA. A low grade in this course can affect college acceptance and scholarship eligibility. University Policies Academic Integrity Utah Valley University expects all students to maintain integrity and high standards of individual honesty in academic work, to obey the law, and to show respect for others. Students of this class are expected to support an environment of academic integrity, have the right to such an environment, and should avoid all aspects of academic dishonesty. Examples of academic dishonesty include plagiarizing, faking of data, sharing information during an exam, discussing an exam with another student who has not taken the exam, consulting reference material during an exam, submitting a written assignment which was authored by someone other than you, and/or cheating in any form. Violators of this policy will be subject to disciplinary action. Cheating will not be tolerated. It will result in a FAILING grade for the course. In keeping with UVU policy, evidence of academic dishonesty may result in a failing grade in the course and disciplinary review by the college. Additional information on this topic is published in the student handbook and is available on the UVU website. 4 Students with Disabilities If you have any disability, which may impair your ability to successfully, complete this course, please contact the Accessibility Services office, 863-8747, BU 146. Academic accommodations are granted for all students who have qualified documented disabilities. All services are coordinated with the Accessibility Services office. Dropping the Class _________ is the last day to drop the course without it showing on your transcript. _________ is the last day to withdraw from the class. If you drop the high school class, you must also withdraw from the UVU class to avoid receiving an E or UW (unofficial withdrawal). Page 5