Carleton University School of Computer Science
COMP 1406
Introduction to Computer Science II
2013 Winter
Preliminary course outline subject to change; last updated on Wed Dec 12 16:01:47 EST 2012
Class Schedule
| Classroom: |
Southam Hall (Theatre B) |
| Class Times: |
Tue. and Thu. 2:30pm-4:00pm |
| Course Website: |
http://people.scs.carleton.ca/~lanthier/teaching/COMP1406/ |
Instructor Information
| Instructor |
Office |
Telephone |
Email |
Office Hours |
| Dr Mark Lanthier |
5127 HP |
1-(613)-520-2600 x8305 |
lanthier scs.carleton.ca |
Tuesday and Thursday 1:15pm - 2:15pm and 4:10pm-5:00pm (from Jan 8th to Apr 10th) |
Teaching AssistantsT.A. assignments are not available at this time
Course DescriptionThis is a second course in programming. It covers more advanced object-oriented topics inheritance, encapsulation and polymorphism. You will also learn to define and use various data structures in JAVA. Developing graphical user interfaces that use event handling is also covered.
Topics CoveredHere is a list of the main topics covered:
- The Java programming language
- Defining object behavior
- Class hierarchies, inheritance, java interfaces and polymorphism
- Graphical User Interfaces
- The Model/View/Controller paradigm
- Menus and Dialog boxes
- Abstract Data Types (Lists, Queues, Deques, Stacks, Sets, Dictionaries)
- Recursion with objects
- Exception handling
- File I/O
- Network programming
Course ObjectivesThis course will teach you how to make complete applications in JAVA. It builds on what you have learned from COMP1405. By the end of the course you should have a solid background in programming, having covered all the fundamentals.
Textbook (s)There is no textbook assigned to this course. Instead, there is an in-depth set of course notes which are available from the CCSS (Carleton Computer Science Society) office which is at the back of room 4139HP.
Laboratory SoftwareYou will be programming using the
"
Java Development Kit (JDK)
SE 7u1" which is available from Oracle. This software is installed on all laboratory
computers
so if you work at school ... you do not have to do anything
tricky. If
you work at home, you will probably want to download this free software
on your
machine there. Go to the following website to download the
software:
- Go to http://java.sun.com/javase/downloads/index.jsp
- If you have a non-MacOS computer, click on the red >>Download
button underneath the JDK for the Java Platform, Standard Edition option (DO NOT download the JRE version ... make sure that it is the JDK version). If you have a Mac OS X computer, follow the instructions for the JDK 7 for Mac OS X Developer Preview option instead.
- Accept the license agreement by selecting the radio button.
- Select the link according to your operating system that you will be using.
- Save the file to
disk and then run the setup program to install.
You
will also need to download the documentation on that site as well by
following these steps:
- Go to http://java.sun.com/javase/downloads/index.jsp
- Scroll towards the bottom of the webpage until you see Java SE 7 Documentation then download it.
- Save the file to disk and then unzip the resulting jdk-7-fcs-bin-b147-apidocs-27_jun_2011.zip file.
(There are many ways to do this, depending on how your computer is set
up. Often you can simply double-click on the file to unzip
it. If this does not work, then one way (slow though) is to
right click on it, select open, wait, then drag the docs folder onto your
desktop). If during
unzipping you are asked if you want to replace any files, click A for all.
- Put (e.g., drag) the unzipped docs folder into the installed JAVA
folder (which should be at C:
Program Files
Java
jdk1.6.0_20)
. The docs folder
should then be listed there along with the already existing bin, db, include,
jre and lib folders.
The above software is simply the JAVA compiler and interpreter
(and other
tidbits). We will also be using an editor to
write/compile/run our JAVA code. The simplest editor is
called JCreator LE and it is freeware (yay!). This runs only on windows machines. If you have a MAC, you can use JGrasp instead (available from http://www.jgrasp.org). Below are instructions for installing JCreator.
Download it from http://www.jcreator.com/download.htm
and make sure to download the freeware version (the second one
on the page which at the time of this writing was JCreator LE v5.00 - for Windows 7,Vista and
XP), otherwise if you download the "Pro" shareware version,
it'll
time out after 30 days and then you have to pay for it. The
"Pro" version actually has more features and is a little nicer
though. You will be asked for your email address and will be sent the link to download the file. The resulting file is jcrea500_setup.exe which you should
run. Make sure to download and install the Java SDK and its documentation BEFORE you
install JCreator.
Follow the instructions to install the JCreator software.
The first time you run JCreator, it will attempt to configure some
settings. Just click Next,
Next, Next and Finish. A start page
will automatically open. You can close it if you would like.
EvaluationStudents will be evaluated in this course according to the following measures.
| Component |
Weight |
Due Date |
| Tutorials |
11% |
1 each week starting Monday, January 14th |
| Assignments |
40% |
10 at 4% each |
| In-Class Tests |
20% |
Feb.5 & Mar. 19 |
| Final Exam |
29% |
to be announced |
TutorialsThere will be mandatory tutorials in this course which will be counted towards your final grade. You will be assigned 1% of your final grade each time you attend and participate in the tutorial for the full 1.5 hours. While in the tutorial, you must work on the tutorial work provided. You may not work on your assignment in that lab while the tutorial is going on. Also, anyone who is not working on the tutorial must leave the room. Near the end of the tutorial, the TA will make a note of who is working on the tutorial and who is not. If the TA finds that you did not spend your time doing the tutorial work, then you will not get your grade, even if you are there for the full 1.5 hours. Also, you are not allowed to get a hold of the tutorial beforehand to work on it or complete it before your tutorial session. If you show up to the tutorial with it partially or completely done, you will not get your grade. So, to put it simply, come to the tutorial each week, do the work while you are there and then leave. You should plan to stay the full 1.5 hours each week. You MUST attend the tutorial that you are registered in. Tutorial take place in 4155HP. Tutorials will begin on Monday, January 14th (see course website for complete schedule).
In-class TestsIn class tests will be 40 minute closed-book and only cover material discussed since the previous in-class test. Each test must be handed back immediately when completed in order to be graded.
AssignmentsThere will be assignments in this course which will be available on the course web page. All assignments are counted towards the final grade. Assignments must be handed in before or on the due date and time. NO LATE ASSIGNMENTS WILL BE ACCEPTED. You will be using Carleton's CULearn system to submit your assignments and view your grades throughout the term. For more information about how to do this, please go to http://www5.carleton.ca/culearnsupport/students. Always keep a backup of your work, perhaps on a USB flash drive or by sending yourself an email with your assignment attached. That way you can access your code from anywhere. You should take the time to ensure that assignments are neat, legible and easy to understand. Any instructions required by the teaching assistants (for example any assumptions you made about the assignment) should be clearly indicated on a separate README.TXT file, included with the assignment. Remember, it is YOUR responsibility to demonstrate that you have understood and completed the assignment. A portion of your grade for assignments will be given for the readability of them and for your demonstration that you have completed the assigned tasks. The CULearn system also allows you to view your marks on-line. You should ensure that the posted marks are correct. Any complaints regarding assignment marks should be brought to the attention of the TA who marked it (only if the TA does not address the problem to your satisfaction should you bring the matter to the instructor). This should be done no later than two weeks after the assignment has been handed back in class. After this time, no remarking will be done. Being "sick" on the day an assignment is due is not an excuse for not doing it. You have one or two weeks to do each assignment. Start early and keep submitting partially completed versions. That way, if you get sick, your partially completed version will be marked, and you will not get 0. DO NOT email your assignments to any TAs. If you have problems submitting, it is likely due to the fact that you missed the deadline by a few minutes. You will get 0, despite your hard work. So please, submit at least 15 minutes BEFORE the assignment is due ... consider yourself forewarned. If you are at home trying to submit and you cannot get it to work, again, you will be late with your assignment and it will not be accepted. If ever you receiver special permission to hand your assignment to the instructor directly, zip your code and email it to the instructor immediately (i.e., not the day after it is due). If you are sick for an extended period of time, please inform the instructor (not the TAs) immediately. You will need to have official documentation of illness. At this point, it will be up to the instructor as to how to handle the situation. In regards to the in-class tests, you must attend and write them. If sick, you must inform the instructor via email the day before and you will need official documentation as well. Again, exceptions are only granted at the discretion of the instructor.
Collaboration PolicyCollaborating on assignments is strictly disallowed. You must complete the work by yourself. If you need help, please see a TA or your instructor. Posting assignment solutions on discussion boards before the due date and time is also prohibited.
Undergraduate Academic AdvisorThe Undergraduate Advisor for the School of Computer Science is available in Room 5302C HP, by telephone at 520-2600, ext. 4364 or by email at undergraduate_advisor@scs.carleton.ca. The undergraduate advisor can assist with information about prerequisites and preclusions, course substitutions/equivalencies, understanding your academic audit and the remaining requirements for graduation. The undergraduate advisor will also refer students to appropriate resources such as the Science Student Success Centre, Learning Support Services and the Writing Tutorial Services.
University PoliciesStudent Academic Integrity PolicyEvery student should be familiar with the Carleton University student academic integrity policy. A student found in violation of academic integrity standards may be awarded penalties which range from a reprimand to receiving a grade of F in the course or even being expelled from the program or University. Some examples of offences are: plagiarism and unauthorized co-operation or collaboration. Information on this policy may be found in the Undergraduate Calendar.
PlagiarismAs defined by Senate, "plagiarism is presenting, whether intentional or not, the ideas, expression of ideas or work of others as one's own". Such reported offences will be reviewed by the office of the Dean of Science.
Unauthorized Co-operation or CollaborationSenate policy states that "to ensure fairness and equity in assessment of term work, students shall not co-operate or collaborate in the completion of an academic assignment, in whole or in part, when the instructor has indicated that the assignment is to be completed on an individual basis". Please refer to the course outline statement or the instructor concerning this issue.
Academic Accommodations for Students with DisabilitiesThe Paul Menton Centre for Students with Disabilities (PMC) provides services to students with Learning Disabilities (LD), psychiatric/mental health disabilities, Attention Deficit Hyperactivity Disorder (ADHD), Autism Spectrum Disorders (ASD), chronic medical conditions, and impairments in mobility, hearing, and vision. If you have a disability requiring academic accommodations in this course, please contact PMC at 613-520-6608 or pmc@carleton.ca for a formal evaluation. If you are already registered with the PMC, contact your PMC coordinator to send me your Letter of Accommodation at the beginning of the term, and no later than two weeks before the first in-class scheduled test or exam requiring accommodation (if applicable). After requesting accommodation from PMC, meet with me to ensure accommodation arrangements are made. Please consult the PMC website for the deadline to request accommodations for the formally-scheduled exam (if applicable) at http://www2.carleton.ca/pmc/new-and-current-students/dates-and-deadlines/
Religious ObligationWrite to me with any requests for academic accommodation during the first two weeks of class, or as soon as possible after the need for accommodation is known to exist. For more details visit the Equity Services website: http://www2.carleton.ca/equity/
Pregnancy ObligationWrite to me with any requests for academic accommodation during the first two weeks of class, or as soon as possible after the need for accommodation is known to exist. For more details visit the Equity Services website: http://www2.carleton.ca/equity/
Medical CertificateThe following is a link to the official medical certificate accepted by Carleton University for the deferral of final examinations or assignments in undergraduate courses. To access the form, please go to http://www.carleton.ca/registrar/forms