Introduction to Computer Science II (CSC 242)
Section 502, Winter 2022
Overview
This course is the second of a two-course sequence introducing
Computer Science skills of problem solving, algorithm development
and programming using Python. In particular, the concept of a class
and object oriented programming will be motivated and introduced.
The algorithm development technique of recursion will also be
introduced. We will apply these skills in several application areas
of Computer Science: Graphical User Interface (GUI) development,
database development, and Internet and distributed computing. We
will end a course with a brief introcution of the the Java
programming language.
Preconditions
You must have taken CSC241 or an equivalent course that introduces
problem solving techniques and programming in Python. I will assume
that:
- you know how to create, debug, compile and run Python, and
you use a reasonable programming style (i.e. your code is easy
to read and concise);
- you know Python's basic control structures and types;
- you can solve basic algorithmic problems.
Postconditions
After the successful completion of this course:
- you will strengthen your Python programming skills;
- You will understand the role of namespaces to support code
encapsulation and abstraction;
- you will know how to design classes and understand the
fundamental principles of object-oriented programming;
- you will be able to design basic graphical user interfaces;
- you will be able to apply recursion as a problem solving and
programming technique;
- you will be able to write simple Internet client programs;
- you will have a basic understanding of database development.
Course Calendar
[subject to change]
Week 1
|
1/4-6
|
Managing software development complexity
|
Week 2
|
1/11-13
|
Defining classes
|
Week 3
|
1/18-20
|
Object-oriented programming
|
Week 4
|
1/25-27
|
OOP case study: GUI development
|
Week 5
|
2/1-3
|
On-campus midterm
exam on 2/3
|
Week 6
|
2/8-10
|
Intro to recursion |
Week 7
|
2/15-17
|
Recursion, searching, sorting
|
Week 8
|
2/22-24
|
Recursion case study: web search
|
Week 9
|
3/1-3
|
Database development
|
Week 10
|
3/8-10
|
Intro to Java, Java vs. Python
|
Week 11
|
3/15
|
On-campus final exam (11:30-1:30pm)
|
Instructors
Please send me an email if you need an appointment at another time.
Class Hours
SECTION 501
|
Lectures
|
TuTh
|
11:50am-1:20pm |
Room 512 in 14 E Jackson (via
Zoom for the first two weeks) |
|
Lab
|
Mo
|
11:50am-1:20pm
|
Room 512 in 14 E
Jackson (via Zoom for the first
two weeks) |
Texts
- Required
- Introduction to Computing Using Python: An Application
Development Focus, Second Edition, Ljubomir Perkovic, John Wiley
& Sons, 2015.
- Note: The E-Book version of the textbook has everything you
will need for this and the followup course (CSC 242). The
Paperback version is missing the Case Studies Appendix; The Case
Studies Appendix can be purchased in E-Book form separately
through https://store.vitalsource.com/search?q=9781119185390.
Course web page
This syllabus, as well as the class lecture notes, homework
assignments, D2L links, and other links can be found on the course
web page at
https://reed.cs.depaul.edu/lperkovic/courses/csc242. Please
check this site and the discussion forum regularly.
Grading
The course grade will be apportioned as follows:
homework (including labs)
|
40% |
midterm exam |
25% |
final exam |
35% |
There will be a total of 8 homework assignments, but only your best
6 count toward the final grade, so you may miss two homework
assignments with no penalty. All
homework must be submitted by the deadline and no later. Any
homework not handed in by the deadline will receive 0 points,
without any exceptions.
To do well in this course, you should attend the class and the
labs regularly, participate in the discussion, read the chapters
in the book each week as indicated in the homework assignment,
start working on the homework early, and talk to me promptly if
you have any problems. The answers to the homework and exam
questions should be written in a way that is rigorous, clear, and
concise.
Policies
Lateness and
Absence
No late homework or lab will be accepted. If you don't hand in a
homework/lab in time, you will receive 0 points for the
homework/lab. Midterm and final exams makeups must be arranged at
least one week in advance, barring extreme situations.
Deadlines for adds, drops,
and withdraws
See the deadlines here.
Changes to
Syllabus
This syllabus is subject to change as necessary during the quarter.
If a change occurs, it will be thoroughly addressed during class,
posted under Announcements in COLWeb and sent via email.
Online Course Evaluations
Evaluations are a way for students to provide valuable feedback
regarding their instructor and the course. Detailed feedback will
enable the instructor to continuously tailor teaching methods and
course content to meet the learning goals of the course and the
academic needs of the students. They are a requirement of the course
and are key to continue to provide you with the highest quality of
teaching. The evaluations are anonymous; the instructor and
administration do not track who entered what responses. A program is
used to check if the student completed the evaluations, but the
evaluation is completely separate from the student’s identity. Since
100% participation is our goal, students are sent periodic reminders
over three weeks. Students do not receive reminders once they
complete the evaluation. Students complete the evaluation online
in CampusConnect.
Academic Integrity and Plagiarism
This course will be subject to the university's academic integrity
policy. More information can be found at http://academicintegrity.depaul.edu/.
If you have any questions be sure to consult with your professor.
Academic Policies
All students are required to manage their class schedules each term
in accordance with the deadlines for enrolling and withdrawing as
indicated in the University Academic Calendar.
Information on enrollment, withdrawal, grading and incompletes can
be found at http://www.cdm.depaul.edu/Current%20Students/Pages/PoliciesandProcedures.aspx.
Students with Disabilities
Students who feel they may need an accommodation based on the impact
of a disability should contact the instructor privately to discuss
their specific needs. All discussions will remain confidential. To
ensure that you receive the most appropriate accommodation based on
your needs, contact the instructor as early as possible in the
quarter (preferably within the first week of class), and make sure
that you have contacted the Center for Students with Disabilities
(CSD) at:
Lewis Center
1420, 25 East Jackson Blvd.
Phone number: (312)362-8002
Fax: (312)362-6544
TTY: (773)325.7296