Course Syllabus
Websites
Common site: http://www.cse.yorku.ca/course/1030
Section M: http://www.cse.yorku.ca/~anestis/AnestisToptsis/W13.1030M.html
Section Z: http://www.cse.yorku.ca/course/1030/Z
Instructors
|
Instructor |
Lectures |
Labs |
Office Hours |
Contact |
Section M |
Anestis Toptsis |
SLH B
MW 17:30-19:00 |
LAS 1006/1004/1002
W 19:00-20:30 |
|
LAS 3022
anestis [at] cse [dot] yorku [dot] ca |
Section Z |
Burton Ma |
CLH E
MWF 10:30-11:30 |
Lab 1
LAS 1006/1002
R 14:30-16:00
Lab 2
LAS 1006/1004/1002
W 14:30-16:00 |
T 13:30-16:30
or by appointment |
LAS 2046
burton [at] cse [dot] yorku [dot] ca |
Students must attend the labs for which they are registered (to avoid having
insufficient computers for students to write the tests).
Description
This course continues the separation of concern theme introduced in CSE1020.
While CSE1020 focuses on the client concern, this course focuses on the concern
of the implementer. Hence, rather than using an API (Application Programming
Interface) to build an application, the student is asked to implement a given
API. Topics include implementing classes (utilities/non-utilities, delegation
within the class definition, documentation and API generation, and implementing
contracts), aggregations (implementing aggregates versus compositions and
implementing collections), inheritance hierarchies (attribute visibility,
overriding methods, abstract classes versus interfaces, inner classes);
generics; building graphical user interfaces with an emphasis on the MVC
(Model-View-Controller) design pattern; recursion; searching and sorting
(including quick and merge sorts); linked lists; and stacks and queues.
The coverage also includes a few design patterns. Three lecture hours
and weekly laboratory sessions.
Lab tests and in-class tests are integral parts of the assessment process in this course.
Prerequisistes: CSE1020 or CSE1720
Course Credit Exclusion: ITEC2620.
Textbook
Required readings are assigned from the course notes written by
Franck van Breugel and Hamzeh Roumani. The course notes are
available here.
The recommended textbook is:
Absolute Java, 5th Edition
Walter J Savitch
Addison-Wesley, 2013
The textbook topics do not map exactly onto the topics covered in this
course, but it is a good reference for students looking for a different
presentation of the material, additional examples and exercise problems,
and coverage of topics not discussed in this course.
A copy is on reserve in Steacie Science and Engineering Library
(call number QA 76.73 J38 S265 2013).
Format
3 hours of lectures and 1.5 hours of labs per week.
The labs occur in the Prism teaching laboratories in the Lassonde building.
A typical lab will focus on implementing solutions to programming problems
with some or all of the work submitted at the end of the lab (and and remaining
work submitted at a later date that will be specified during the lab). The
lab problems will be made available at the start of the scheduled lab. The
different lab sections may not necessarily be working on the same problems
each week.
The Prism teaching labs use CentOS Linux as the operating system. The Eclipse
IDE is available for programming tasks, although students might choose to use
an alternate editor or IDE.
Evaluation
Labs (8 marked labs): |
10% |
Written midterm: |
20% |
Programming test 1: |
15% |
Programming test 2: |
15% |
Written exam: |
40% |
Due dates and test dates can be found on the Weekly Calendar.
Students may view their grades using the ePost
system. All grades distributed via ePost are unoffical and are subject to
review by the Department of Computer Science and Engineering.
A student's final grade will be expressed as a letter grade.
Click here
for further details on the University's grading schemes.
Labtests
Labtests are hands-on programming tests conducted in the Prism teaching labs
during the regularly scheduled lab. A labtest consists of one or more
programming tasks that must be submitted within the allotted time for the
lab. Labtests are conducted in a special test environment within the lab
where most network services have been disabled. Different lab sections can
expect to have different versions of the test. Labtests are marked by the
teaching assistants and contribute to the final grade as described above.
Midterm
The written midterm will take place during the regularly scheduled lecture
(however, the room may be changed). It will consist of a series of
comprehension questions (short answer, multiple choice, and code analysis
questions are all possible). It will not require you to write lengthy fragments
of code. The midterm test is closed book.
Exam
The written exam will take place during the scheduled examination period
at the end of term at a time and place determined by the Registrar.
It will consist of a series of
comprehension questions (short answer, multiple choice, and code analysis
questions are all possible). It will not require you to write lengthy fragments
of code. The exam is closed book.
Academic Honesty
Students are expected to understand and follow the guidelines for
academic honesty described in this document.
Counselling and Disability Services (CDS)
Students requiring accommodation for the written midterm or exam should
follow the normal procedure for accommodated alternative tests and exams.
For labtests, students registered with CDS should contact the instructor
to arrange for accommodated alternative labtests. Do not submit requests
for accommodated labtests through the Registrar's Office.
|