0% found this document useful (0 votes)
38 views

CS 1123

Uploaded by

justin.liu042
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
38 views

CS 1123

Uploaded by

justin.liu042
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Course Syllabus

Course Title: C++ and Object-Oriented Design Term and Year:

Course and Section Number: CS 1123 Time and Place:

Number of Credit Hours: 3

Instructor: Office Location/Hours:

Office Phone: Email:

Course Description:
This course covers the C++ programming language with emphasis placed on object-
oriented design. Students will: use pointers and arrays; use header files; overload
operators; use functions of the standard library; determine a plan for testing a piece of
software; organize a program to determine classes and objects; design a graphical user
interface using Qt GUI.

Learning Outcomes: Upon completion of this course, the student should be able to:

1. Use pointers, arrays, and header files


2. Overload operators
3. Use functions of the standard library
4. Determine a plan for testing a piece of software
5. Organize a program to determine classes and objects
6. Design a graphical user interface using Qt GUI

Prerequisites: CS 1113 Introduction to Object Oriented Programming with a grade of “C” or


above.

Required Text:
• Beginning C++ Programming: Modern C++ at Your Fingertips!, by Richard Grimes; Packt
Publishing, 2017; ISBN: 9781787124943. 9781787129283. (Permalink)

• The C++ Workshop : Learn to Write Clean, Maintainable Code in C++ and Advance Your
Career in Software Engineering, by Dale Green, Kurt Guntheroth, Shaun Ross Mitchell;
Packt Publishing, 2020; ISBN: 9781839216626. 9781838988364. (Permalink)

• C++ Programming (https://learn.saylor.org/course/view.php?id=65)

Other Materials: C++ IDE: Code Blocks (Install codeblocks-20.03mingw-setup.exe for Windows).
http://www.codeblocks.org/downloads/binaries/

Course Requirements:
2

This is an online course; therefore, students are expected to have basic computer skills and
sufficient experience with computer applications to use the Moodle course management/learning
system for accessing and submitting assignments. The instructor’s contact with you is your official
email on Moodle. It is up to you to ensure you receive any messages or announcements the
instructor sends to you. Moodle is a course management system used for online courses. Access to
Moodle teaching system - Moodle™ is MANDATORY. The system allows the instructor to post
materials, deliver tests and surveys, hold online discussions and many other course-related
functions. All currently enrolled students and teaching faculty have access to the Moodle system. To
become familiar with using Moodle, review the various resources available throughout this site and
other resource material at: Student Training Resources at https://trineonline.trine.edu/

Attendance/Participation: All students are expected to log in to their courses regularly throughout
the week to receive instruction, materials, and updates from the instructor. It is your responsibility to
check in and submit your assignments, complete your discussion board postings, and finish quizzes
and exams by the due dates.
If you do not participate in the course, you will be counted absent. Simply logging in is not enough;
you must submit/complete an assignment, post to a discussion board, or other similar assignment
tasks to avoid being counted absent. Instructors are required to submit attendance the Monday
following each week of class.
This attendance is reported to the Financial Aid Department and may result in the loss of any
financial aid refund you are expecting if you have not been participating in your courses. In addition,
you will be administratively dropped from the course if you are reported absent a total of
three weeks.

Grading/Evaluation:
A 1000-point grading scale is used for this course. The breakdown of point value for each
assignment is available on the Course Submission Schedule. Grading rubrics are posted in
Moodle. Late assignments will NOT be accepted for any reason.

Final grades are based on the following point scale:


900 –1000 = A
850 –899 = B+
800 – 849 = B
750 – 799 = C+
700 – 749 = C
650 – 699 = D+
600 – 649 = D
<599 = F

Assignment point totals:


Discussion Forums (7 worth 50 points each) = 350
Assignments (7 worth 50 points each) = 350
Final Exam = 200
Case Study Paper = 100

Final grades are based on the following percent scale:

90-100% A 75-79% C+ 60-64% D


85-89% B+ 70-74% C 59% and below F
80-84% B 65-69% D+

© 2024 Trine University


3

University Policies:
Access: Trine University Course Catalog for all university guidelines, academic policies, and
student standards of conduct.

Academic Misconduct:
The University prohibits all forms of academic misconduct. Academic misconduct
refers to, but is not limited to, the following activities:
• Copying another person’s work and claiming it as your own, or submitting the
same paper in two different courses without knowledge and consent of the
instructor (plagiarism);
• Using the work of a group of students when the assignment requires individual
work;
• Looking at or attempting to look at an examination before it is administered;
• Using materials during an examination that are not permitted;
• Allowing another student to take your examination for you;
• Intentionally impeding the academic work of others;
• Using any electronic device to transmit portions of questions or answers on an
examination to other students;
• Using any electronic device to improperly store information for an exam;
• Knowingly furnishing false information to the University;
• Assisting other students in any of the acts listed above.
• Moreover, a student is expected to submit his/her own work and to identify any
portion of work that has been borrowed from others in any form.

Failure to adhere to the policy above is considered academic misconduct. In


situations of Academic Misconduct, instructors have the authority to award a failing
grade on the assignment in question or a failing grade for the course. Upon approval
by the appropriate Dean, Academic Misconduct may also result in expulsion from the
University

Plagiarism:
You are expected to submit your own work and to identify any portion of work that has
been borrowed from others in any form. An ignorant act of plagiarism on final versions
and minor projects, such as attributing or citing inadequately, will be considered a
failure to master an essential course skill and will result in an F for that assignment. A
deliberate act of plagiarism, such as having someone else do your work, or submitting
someone else’s work as your own (e.g., from the Internet, other student’s files, etc.,
including assignments and forum posts, will at least result in an F for that assignment
and could result in an F for the course.

Artificial Intelligence (AI) is prohibited: All work submitted by students in this course
must be generated by the student. Students may not have another person or entity
contribute to an assignment for them, which includes using AI. Students may not
incorporate any part of an AI-generated response in an assignment, use AI to formulate
arguments, use AI to generate ideas for an assignment, or submit work to an AI
platform for improvement. Using an AI tool to generate content may qualify as
academic misconduct in this course.

© 2024 Trine University


4

OR

Artificial Intelligence (AI) is allowed: Students may use AI tools on instructor-


identified assignments in this course. To adhere to our scholarly values, students must
cite any AI-generated material that informed their work. Using an AI tool without proper
attribution may qualify as academic misconduct in this course. It is the responsibility of
the student to verify the accuracy, reliability, and ethical implications of AI-generated
content.

Other Policies:

Academic Misconduct:
The University prohibits all forms of academic misconduct. Academic misconduct refers to
dishonesty in examinations (cheating), presenting the ideas or the writing of someone else
as one’s own (plagiarism) or knowingly furnishing false information to the University by
forgery, alteration, or misuse of University documents, records, or identification. Academic
dishonesty includes, but is not limited to, the following examples: permitting another student
to plagiarize or cheat from one’s own work, submitting an academic exercise (written work,
printing, design, computer program) that has been prepared totally or in part by another,
acquiring improper knowledge of the contents of an exam, using unauthorized material
during an exam, submitting the same paper in two different courses without knowledge and
consent of professors, or submitting a forged grade change slip or computer tampering. The
faculty member has the authority to grant a failing grade in cases of academic misconduct as
well as referring the case to Student Life.

Plagiarism:
You are expected to submit your own work and to identify any portion of work that has been
borrowed from others in any form. An ignorant act of plagiarism on final versions and minor
projects, such as attributing or citing inadequately, will be considered a failure to master an
essential course skill and will result in an F for that assignment. A deliberate act of plagiarism,
such as having someone else do your work, or submitting someone else’s work as your own
(e.g., from the Internet, fraternity file, etc., including homework and in-class exercises), will at
least result in an F for that assignment and could result in an F for the course.

Electronic Devices:
Use of electronic devices including smart watches and cell phones is prohibited during
exams or quizzes unless directly allowed by the instructor.

Course Mapping:

Week One: Introduction (LO3-5)


Learning Activities and Materials Assessments

© 2024 Trine University


5

Read:
Starting with C++ Participate:
• Chapter 1 (LO3, LO4, LO5)
• Unit 1 (LO3, LO4, LO5) • Discussion board post (LO3, LO4,
• Unit 2 (LO3, LO4, LO5) LO5)
• Peer Responses (LO3, LO4, LO5)
Watch:
• C++ Tutorial for Beginners - Learn Assignments:
C++ in 1 Hour (LO3, LO4, LO5)
(1:22:55) • Assignment 1 (LO3, LO4, LO5)
• C++ Tutorial For Beginners | C++
Programming | C++ | C++ Basics |
C++ For Beginners | Simplilearn
(LO3, LO4, LO5) (26:29)

Week Two: Object Oriented Design (LO4,5)


Learning Activities and Materials Assessments
Read: Participate:
C++ Classes
• Chapter 6 (LO4, LO5) • Discussion board post (LO4,
• Unit 4 (LO4, LO5) LO5)
• Chapter 7 (LO4, LO5) • Peer Responses (LO4, LO5)
• Unit 5 (LO4, LO5) • Discussion board post (LO4,
LO5)
Watch: • Peer Responses (LO4, LO5)
• C++ Tutorial for Beginners - Learn •
C++ in 1 Hour (LO4, LO5)
(1:22:55) Assignments:
• Classes In C++ Explained | C++
Classes Tutorial | C++ • Assignment 2 (LO4, LO5)
Programming Tutorial | C++ Basics • Assignment 3 (LO4, LO5
|Simplilearn (LO4, LO5) (30:02)
• C++ Tutorial 10 : Object Oriented
Programming (LO4, LO5) (40.24)
Week Three: Pointers/Array (LO1,4,5)
Learning Activities and Materials Assessments

© 2024 Trine University


6

Read: Participate:
Memory, Arrays and Pointers
• Chapter 4 (LO1, LO4, LO5) • Discussion board post (LO1,
• Pointers in C (LO1, LO4, LO5) LO4, LO5)
• Peer Responses (LO1, LO4,
Watch: LO5)
• Pointers in C / C++ [Full Course]
(LO1, LO4, LO5) (3:47:22) Assignments:
• Relationship between Arrays and
Pointers in C++ with Example • Assignment 4 (LO1, LO4, LO5)
(LO1,LO4, LO5) (7:07)
Week Four: Operator Overloading (LO2,5)
Learning Activities and Materials Assessments
Read: Participate:
Operator Overloading
• Chapter 10 (LO2, LO5) • Discussion board post (LO2,
• C++ Operator Overloading (LO2, LO5)
LO5) • Peer Responses (LO2, LO5)

Watch: Assignments:
• Operator Overloading In C++ |
What Is Operator Overloading In • Assignment 5 (LO2, LO5)
C++? | C++ Programming |
Simplilearn (LO2, LO5) (18:37)
• C++ Tutorial 12 : Operator
Overloading & File I/O (LO2, LO5)
(28:29)
Week Five: Functions and STL (LO3,4)
Learning Activities and Materials Assessments
Read: Participate:
C++ Functions/STL
• Chapter 5 (LO3, LO4) • Discussion board post (LO3,
• Chapter 8 (LO3, LO4) LO4)
• Peer Responses (LO3, LO4)
Watch:
• C++ STL Tutorial | C++ STL Assignments:
Algorithm Tutorial | C++
Programming Tutorial For • Assignment 6 (LO3, LO4)
Beginners | Simplilearn (LO3, LO4)
(25:58)
• C++ Tutorial 13 : Advanced
Functions (LO3, LO4) (18:26)
Week Six: Overview (LOs)
Learning Activities and Materials Assessments

© 2024 Trine University


7

Read: Participate:
Exception Handling in C++
• Chapter 13 (LO4, LO5) • Discussion board post (LO4,
• Chapter 10 (LO4, LO5) LO5)
• Peer Responses (LO4, LO5)
C++ Programming using Qt
• C++ With Qt Programming Tutorial Assignments:
(LO4, LO6)
• Assignment 7 (LO4, LO5)
Watch: • Case Study on Qt Graphics (LO4,
• Exception Handling - C++ Tutorial LO6)
For Beginners #18 (LO4, LO5)
(7:27) Assessment:
• Exception Handling In C++ | What Final Exam (LO1, LO2, LO3, LO5
Is Exception Handling In C++ | LO4, LO6)
C++ Programming | Simplilearn
(LO4, LO5) (17:22)
• Qt Tutorials For Beginners 1 -
Introduction (LO4, LO6) (10:14)
• Qt Tutorial : C++ Notepad App (LO4,
LO6) (38:17)

References:

Banas, D. (2019). Qt tutorial: C++ notepad app [Video]. YouTube.

https://www.youtube.com/watch?v=I96uPDifZ1w

Banas, D. (2019). C++ tutorial 13: Advanced functions [Video]. YouTube.

https://www.youtube.com/watch?v=TGOXttOoI0U

Banas, D. (2019). C++ tutorial 12: Operator overloading and file I/O [Video]. YouTube.

https://www.youtube.com/watch?v=gc7Eqba1c5g

Banas, D. (2019). C++ tutorial 10: Object oriented programming [Video]. YouTube.

https://www.youtube.com/watch?v=ZOKLjJF54Xc

Dieterle, M. (2020). C++ with Qt programming tutorial. Alternative Computer

Programming.https://www.alternative-computer-programming.com/cplusplus-with-qt-

tutorial-index.html

freeCodeCamp.org (2020). Pointers in C/C++ [Video]. YouTube.

© 2024 Trine University


8

https://www.youtube.com/watch?v=zuegQmMdy8M

Green, D., Guntheroth, K., & Mitchell, S. (2020). The C++ workshop: Learn to write clean,

maintainable code in C++ and advance your career in software engineering. Packt

Publishing.

Grimes, R. (2017). Beginning C++ programming: Modern C++ at your fingertips! Packt

Publishing.

Hosey, P. (2010). Everything you need to know about pointers in C. Retrieved on January 3,

2023 from https://boredzo.org/pointers/

LearningLad (2014). Relationship between arrays and pointers in C++ with example [Video].

YouTube. https://www.youtube.com/watch?v=LcHTSDm82pY

NeuralNine (2020). Exception handling – C++ tutorial for beginners #18 [Video]. YouTube.

https://www.youtube.com/watch?v=5MI2N8yLdMI

ProgrammingKnowledge (2017). Qt tutorials for beginners 1 – Introduction [Video].

YouTube. https://www.youtube.com/watch?v=EkjaiDsiM-Q

Programming with Mosh (2022). C++ tutorial for beginners – Learning C++ in 1 hour [Video].

YouTube. https://www.youtube.com/watch?v=ZzaPdXTrSb8

Saylor (2023). C++ programming. CS107. Retrieved on January 3, 2023 from

https://learn.saylor.org/course/view.php?id=65&sectionid=14948

Simplilearn (2022). Exception handling in C++ [Video]. YouTube.

https://www.youtube.com/watch?v=7hcQQEHZPiQ

Simplilearn (2022). C++ STL tutorial [Video]. YouTube.

https://www.youtube.com/watch?v=m4au_rXy6rc

Simplilearn (2022). Operator overloading in C++ [Video]. YouTube.

https://www.youtube.com/watch?v=edfATDog-LQ

Simplilearn (2022). Classes in C++ explained [Video]. YouTube.

© 2024 Trine University


9

https://www.youtube.com/watch?v=vIcOhM_Vkc4

Simplilearn (2022). C++ tutorial for beginners [Video]. YouTube.

https://www.youtube.com/watch?v=McojvctVsUs

Wikibook (2022). Operator overloading. Retrieved on January 3, 2023 from

https://en.wikibooks.org/wiki/C%2B%2B_Programming/Operators/Operator_Overload

ing

© 2024 Trine University

You might also like