CS1410: Object Oriented Programming
Fall 2018 Syllabus
Second course for students in Computer Science and Computer and Information Technologies programs, or having general interest in computer programming. This course will introduce students to software engineering practices, and instruct them in object oriented programming techniques. Students will be required to complete programming projects of increasing difficulty.
CS 1400 with a C- or better
Course fee: $25, used to assist in maintaining CIT infrastructure.
01 - MWF 8:00-8:50 am in Smith 117
Final exam schedule on Dec 10 7:00 am - 8:50 am
02 - MWF 9:00-9:50 am in Smith 116
Final exam schedule on Dec 12 9:00 am - 10:50 am
50 - T 5:15-7:45 am in Smith 117
Final exam schedule on Dec 11 5:00 pm - 6:50 pm
Instructor: Ren Quinn
Instructor: Curtis Larsen
The student will be able to:
understand the basic elements of a programming environment (libraries and modules, editors, interpreters and compilers, on-line help, etc.).
use fundamental programming constructs: control structures, functions, I/O (simple keyboard input and screen output and file input and output), classes and objects, and data collections.
design and implement programs from English descriptions.
understand and use the syntax of a high level programming language.
There are three texts for this course, available from the campus bookstore or online:
Python Programming: An Introduction to Computer Science, 2nd Edition by John Zelle, ISBN: 1590282418 (recommended)
These teach fundamental programming concepts as well as the Python programming language. No text is required, but having at least one of them is recommended.
You may use the computers in Smith 123. There will also be lab assistants in this lab. Not all assistants will be qualified to assist with this course.
Course Web Site
This course has a website with the schedule, assignment descriptions, and helps. The course also has grades and communication managed in the Canvas system. You are responsible for announcements, the schedule, and other resources posted on the website or Canvas.
Assignments and exams
Reading from one of the recommended text books or from online resources linked from the course website is strongly recommended. The student will find material beyond what we will discuss in lecture, which you are encouraged to study on your own. Feel free to bring questions from the reading to lectures or to office hours.
Programming drills will be required every week, usually due on Thursday evening. A drill set will usually include 10 or more problems. Access to the drills will be through Canvas.
Assignments will be graded for correct functionality and good style. For example, proper use of modularity in your programs is good style. Programs that do not run will receive no credit.
Assignments are due on the date listed in the schedule, and must be passed off to a lab assistant for the course. This means that you must find a time during the course assistant’s lab hours to pass it off before the end of the day it is due. Program source code must also be submitted to Canvas to receive credit.
Quizzes will be given according to the schedule given, usually one per week.
This course has one midterm exam and a comprehensive final exam. These exams will consist of questions similar to the quizzes and the drills.
Assignments, quizzes, tests, drills and class participation all contribute to your point total.
Drills are 15% of your grade, assignments are 15%, quizzes are 5%, participation is 3% the midterm is 25% and the final exam is 37%.
Letter grades are assigned based on the percentage of possible points attained, according to the following chart:
|Minimum Percentage||Letter Grade||Minimum Percentage||Letter Grade||Minimum Percentage||Letter Grade||Minimum Percentage||Letter Grade|
Limited collaboration with other students in the course is permitted. Students may seek help learning concepts and developing programming skills from whatever sources they have available, and are encouraged to do so. Collaboration on assignments, however, must be confined to course instructors, lab assistants, and other students in the course. Students are free to discuss strategies for solving programming assignments with each other, but this must not extend to the level of programming code. Each student must code his/her own solution to each assignment. See the section on cheating.
Cheating will not be tolerated, and will result in a failing grade for the students involved as well as possible disciplinary action from the university. Cheating includes, but is not limited to, turning in homework assignments that are not the student’s own work. It is okay to seek help from others and from reference materials, but only if you learn the material. As a general rule, if you cannot delete your assignment, start over, and re-create it successfully without further help, then your homework is not considered your own work.
You are encouraged to work in groups while studying for tests, discussing class lectures, discussing algorithms for homework solutions, and helping each other identify errors in your homework solutions. If you are unsure if collaboration is appropriate, contact the instructor. Also, note exactly what you did. If your actions are determined to be inappropriate, the response will be much more favorable if you are honest and complete in your disclosure.
Where collaboration is permitted, each student must still create and type in his/her own solution. Any kind of copying and pasting is not okay. If you need help understanding concepts, get it from the instructor or fellow classmates, but never copy another’s code or written work, either electronically or visually. The line between collaborating and cheating is generally one of language: talking about solutions in English or other natural languages is usually okay, while discussions that take place in programming languages are usually not okay. It is a good idea to wait at least 30 minutes after any discussion to start your independent write-up. This will help you commit what you have learned to long-term memory as well as help to avoid crossing the line to cheating.
Click on this link: https://academics.dixie.edu/syllabus for comprehensive information on the Semester Dates, the Final Exam Schedule, University resources such as the library, Disability Resource Center, IT Student Help Desk, Online Writing Lab, Testing Center, Tutoring Center, Wellness Center and Writing Center. In addition, please review DSU policies and statements with regards to Academic Integrity, Disruptive Behavior and Absences related to university functions.
If you are a student with a medical, psychological, or learning disability or think you might have a disability and would like accommodations, contact the Disability Resource Center (652-7516) in the North Plaza. The Disability Resource Center (http://dixie.edu/drcenter/) will determine eligibility of the student requesting special services and determine the appropriate accommodations related to their disability.
Last Updated 09/12/2018