Overview of programming languages: procedural and functional languages. Exposure to functional languages. Analysis of solution strategies to variable binding and function calls. Problem solving paradigms and linguistic issues.
CSCI 2300: Object Oriented Software Design
At the conclusion of this course, students should be able to:
Lecture notes will be posted on the course schedule page. These are provided as a resource, but are NOT a substitute for attending lecture. In particular, something will break at least once this semester! Please make arrangements with a fellow student if you do have to miss class.
Additional articles or online references will be provided throughout the semeseter; please reference the schedule throughout the semester for such additions.
Email contact with the course instructor is a necessity in this class.. I will check email several times throughout the work day, and will also check email once per evening to answer questions and resolve issues. Email contact over the weekend may be more sporadic, although I will be sure to check at least once.
We will use a git system this year to submit many of the homeworks. Details on how to sign up and use the system will be posted on the announcement page and discussed in class.
Computers will be an integral part of this course, both inside and outside of class. However, out of courtesy to both the instructor and other students, please do not use the lab computers for non-class related activity. In particular, you do not need to be using a computer unless an exercise or in class activity requiring them is in progress.
You are unlikely to need cell phones during the course of lecture. Please ensure that your cell phone is set to vibrate or silent during lecture, and excuse yourself from class if you need to answer it.
There will be a series of written homeworks, essay assignments in the class, and programming assignments which (in total) will compromise 45% of your final score. Essays will be over papers assigned in class.
A total of 5% of your final grade is reserved for in class exercises and quizzes, at the instructor's discretion.
There will be a midterm worth 20% of your total grade, and a final exam worth 30% of your total grade. The midterm will be the week before spring break (unless we have any major schedule changes).
Letter grades will be based on each students overall percentage of awarded points according to the following formula.
Homeworks will generally be due at 11:59pm via email. Late submissions will generally not be accepted unless arrangements have been made ahead of time. Please contact me as early as possible with any potential issues, since I am much more likely to grant an extension if you come to be ahead of time! In general, I try to be flexible if students have good reason, but I do reserve the right to not accept late submissions if solutions have already been released or if a student is abusing this flexibility.
I am happy to regrade any assignments, programs, quizzes or exam problems which you think were unfair or incorrect. Please bring me the original assignment, plus a written explanation of your question or complaint, within two weeks of the time the paper in question is graded and returned to you.
In the context of this course, I encourage students to discuss general course material, which includes studying for exams, sharing notes if a student must miss class, and working on any practice problems which are assigned. We will also have occasional programming assignments that will be completed in pairs. However, unless clearly stated otherwise in the assignment description, any work which will be submitted for a grade must be completed by individuals. In addition, the only acceptable sources of information are the course textbook, the instructor, official university tutors, or other sources which are explicitly mentioned in an assignment. Students may not use other sources, including (but not limited to) websites other than the official course website or those explicitly listed in course materials, textbooks other than those officially listed below, or students (either past or present).
Students who violate academic integrity policies will be reported to the department. First time offenses on homework will result in a minimum of a failing grade on the assignment in question, with egregious or repeated offenses resulting in failure in the course. In addition, students may be referred to the College of Arts and Sciences for further disciplinary action.
The following is a statement of minimum standards for student academic integrity at Saint Louis University; I expect full compliance with the policies described.
Academic integrity is honest, truthful and responsible conduct in all academic endeavors. The mission of Saint Louis University is "the pursuit of truth for the greater glory of God and for the service of humanity." Accordingly, all acts of falsehood demean and compromise the corporate endeavors of teaching, research, health care, and community service via which SLU embodies its mission. The University strives to prepare students for lives of personal and professional integrity, and therefore regards all breaches of academic integrity as matters of serious concern. The governing University-level Academic Integrity Policy was adopted in Spring 2015, and can be accessed on the Provost's Office website at: https://www.slu.edu/provost/policies/academic-and-course/policy_academic-integrity_6-26-2015.pdf. Additionally, each SLU College, School, and Center has adopted its own academic integrity policies, available on their respective websites. All SLU students are expected to know and abide by these policies, which detail definitions of violations, processes for reporting violations, sanctions, and appeals. Please direct questions about any facet of academic integrity to your faculty, the chair of the department of your academic program, or the Dean/Director of the College, School or Center in which your program is housed.For any student raising children, I understand that minor illnesses and unforeseen disruptions in childcare often put parents in the position of having to chose between missing class to stay home with a child and leaving him or her with someone you or the child does not feel comfortable with. While this is not meant to be a long-term childcare solution, occasionally bringing a child to class in order to cover gaps in care is perfectly acceptable.
All exclusively breastfeeding babies are welcome in class as often as is necessary to support the breastfeeding relationship. Because not all women can pump sufficient milk, and not all babies will take a bottle reliably, I never want students to feel like they have to choose between feeding their baby and continuing their education. You and your nursing baby are welcome in class anytime.
I ask that all students work with me to create a welcoming environment that is respectful of all forms of diversity, including diversity in parenting status. In all cases where babies and children come to class, I ask that you sit close to the door so that if your little one needs special attention and is disrupting learning for other students, you may step outside until their need has been met. Non-parents in the class, please reserve seats near the door for your parenting classmates. (Policy adapted from Dr. Melissa Cheyney)
The CS department employs tutors during regular lab hours almost every day. Please see the department's tutoring information page for a list of hours and further details.
Student Success Center: In recognition that people learn in a variety of ways and that learning is influenced by multiple factors (e.g., prior experience, study skills, learning disability), resources to support student success are available on campus. The Student Success Center assists students with academic-related services and is located in the Busch Student Center (Suite, 331). Students can visit https://www.slu.edu/life-at-slu/student-success-center/ to learn more about tutoring services, university writing services, disability services, and academic coaching.
University Writing Services: Students are encouraged to take advantage of University Writing Services in the Student Success Center; getting feedback benefits writers at all skill levels. Trained writing consultants can help with writing projects, multimedia projects, and oral presentations. University Writing Services offers one-on-one consultations that address everything from brainstorming and developing ideas to crafting strong sentences and documenting sources. For more information, visit https://www.slu.edu/life-at-slu/student-success-center/ or call the Student Success Center at 314-977-3484.
Saint Louis University and its faculty are committed to supporting our students and seeking an environment that is free of bias, discrimination, and harassment. If you have encountered any form of sexual misconduct (e.g. sexual assault, sexual harassment, stalking, domestic or dating violence), we encourage you to report this to the University. If you speak with a faculty member about an incident of misconduct, that faculty member must notify SLU’s Title IX coordinator, Anna R. Kratky (DuBourg Hall, room 36;akratky@slu.edu; 314-977-3886) and share the basic facts of your experience with her. The Title IX coordinator will then be available to assist you in understanding all of your options and in connecting you with all possible resources on and off campus.
If you wish to speak with a confidential source, you may contact the counselors at the University Counseling Center at 314-977-TALK. To view SLU’s sexual misconduct policy and for resources, please visit the following web addresses: www.slu.edu/here4you and https://www.slu.edu/general-counsel.
Students with a documented disability who wish to request academic accommodations must contact Disability Services to discuss accommodation requests and eligibility requirements. Once successfully registered, the student also must notify the course instructor that they wish to access accommodations in the course.
Please contact Disability Services, located within the Student Success Center, at Disability_services@slu.edu or 314.977.3484 to schedule an appointment. Confidentiality will be observed in all inquiries. Once approved, information about the student’s eligibility for academic accommodations will be shared with course instructors via email from Disability Services and viewed within Banner via the instructor’s course roster.
Note: Students who do not have a documented disability but who think they may have one are encouraged to contact to Disability Services.