Instructors
  Section Room Days Hours Instructor

Lecture A Loyola 174 MW 11:30 am - 12:45 pm Mark Young

Lab LA Sobey 155 MW 1:00 pm - 2:15 pm Mark Young
LB Sobey 155 MW 10:00 am - 11:15 am Sumesh Thakur
Office Hours
Instructor Room Days Hours E-Mail

Mark Young McNally North 119 MW 9:30 am -- 10:30 am
or after lab by appointment
myoung@cs.smu.ca
Sumesh Thakur McNally North 128 MWF 9am - 6pm sumesh.thakur@smu.ca
E-mail Policy
Make sure to include "CSCI 1228" in the subject line
Otherwise your e-mail might get missed
Course Web Page
http://cs.smu.ca/~myoung/csci1228
BrightSpace page (for discussions and quizzes)
Textbook
There is no required textbook for this course. The material you need will be presented thru the slides on the course web site.

However you might like to buy a subscription to:

Programming In Java with zyLabs
by zyLabs

Purchase this book on-line at https://zyBooks.com

  • Sign in or create an account at learn.zybooks.com.
  • Enter zyBook code: SMUCSCI1226Fall2019
  • Subscribe.
You can view the first chapter for free (with an account). For students who cannot pay until financial aid arrives, deferments may be available by contacting support@zybooks.com
Or you might like to pick up copy of oour previous text:
Java: An Introduction to Problem Solving and Programming
Savitch & Carrano (text web site)

Any edition from the 5th on will be fine.

Course Description
(from Academic Calendar)
This course is a continuation of CSCI 1226, and is designed to prepare students for higher-level courses, especially CSCI 2341. Students continue to solve problems, of increased complexity, in the programming language used in CSCI 1226, and may also be exposed to problem solving in a second programming language, if deemed appropriate.
Important Dates
Jan 8Classes Resume.
Jan 14Last day to register and/or drop Winter courses with 100% refund.
Feb 17Nova Scotia Heritage Day
Feb 17-23Winter Break - No Classes
Apr 7Last day of classes- Winter term.
Apr 9-22Final Exams (dates subject to change)
Tentative List of Topics
  1. Review of CSCI 1226
    • Imperative Programming
    • Arrays
    • Objects / data types
    • Selected related material
  2. Inheritance and Polymorphism
    • What inheritance is
    • Inheritance in JavaFX
    • What polymorphism is
    • Polymorphism in JavaFX
    • Creating new data types by inheritance
    • Creating new interfaces
    • Lists, ArrayLists and LinkedLists
  3. New topics in Methods and I/O
    • Recursion
    • File I/O
Course Delivery
The course will incorporate a combination of lecture and lab sessions designed at the instructor's discretion. During the lab sessions, there will be problem solving exercises designed to help you grasp the topics taught during lectures. All sections will follow the same course outline and will use the same course delivery methods, and grading schemes. Any deviations will be posted on the corresponding course section's Brightspace page.
Expected Learning Outcome
Computer programming is considered a core subject for all students in computer science. At the end of the course, you are expected to be able to:

  • Create and use multi-dimensional arrays
  • Create and use new data types using the Javabeans pattern
  • Design and use classes created from existing Java data types
  • Make effective use of inheritance and polymorphism in your own projects
  • Understand and use recursive methods
  • Understand when recursion would be useful, and when not
  • Read and create text and binary files
  • Be able to use Lists (ArrayLists, LinkedLists)
  • Understand the basics of generic types in Java
Tips for Success!
There is a lot of material in this course, and it builds from one week to the next. The most important factor for success is keeping on top of things:

  • Pay attention in class, and follow along with what we're doing on your laptop (if you have one).
  • Check the course homepage regularly for updates and important news.
  • Make sure you do the lab exercises each week. Submit them even if you think you didn't do well. It won't lower your average because every point you get in lab adds onto your total until you reach the maximum.
  • Start early on the assignments. It may be that we haven't covered some parts of the assignment in class yet, but there's always something you can do on it—and if you pay attention, you'll see there's generally quite a bit you can do.
  • Submit assignments and labs early, and submit often. You don't even have to finish it before you submit it. We'll always get just the last version you submit. And even if you never get it finished, it's better to get partial credit (and we do give substantial partial credit) than to get no credit at all.
  • Ask for help when you need it. Feel free to reach out to your professor and lab instructor if you find yourself unsure about any aspect of the course, or even if you just want to learn more. We're there for you.
Evaluation Criteria
  1. Assignments (30% 35%)
    • There are nine assignments designed to help you practice concepts learned in class.
    • The best seven six assignments will count towards your final grade. Missing assignments count as zeroes.
    • Available on the Topic Outline page.
    • Assignments must be submitted electronically. We don't have access to your student accounts! Links to submit can be found on the assignment description page.
    • Late assignments will not be accepted.
  2. Lab Activities (10% 15%)
    • Eleven Ten sessions consisting of examples and analytical problems of the theory covered in class.
    • Collect lab points until your lab point jar is full (100 92 points).
    • Some lab activities might require material you haven't seen in class yet. Skip those bits and do what you can. The lab will not be due before all the material has been covered.
    • Late labs will not be accepted.
  3. Midterm Test (20%)
    • Two midterm tests One midterm test used to evaluate your knowledge of course content.
    • Saint Mary's University ID is required.
    • To be held during lecture, in the lecture classroom.
    • No electronics allowed.
    • No makeup midterm will be offered. If you miss any of the midterm exams for any reason:
      • You must contact your instructor within 48 hours
      • You will be required to fill out and submit a Declaration of Extenuating Circumstances form.
      • The percentage value of the midterm(s) missed will be added to the final exam quizzes.
  4. Midterm Quizzes (included with Midterm Grade)
    • One required quiz, plus one optional quiz, both to be taken during the term. They will be delivered thru the BrightSpace Quiz tool.
    • Each quiz grade will be added into the midterm grade component, but each quiz worth half the weight of the (first) midterm test. Thus, students who take only one of the quizzes will have 2/3 of their midterm grade based on the midterm test, while students who take both quizzes will have 1/2 of their midterm grade based on the midterm test.
  5. Final Exam (30%)
    • Saint Mary's University ID is required.
    • No electronics allowed.
    • Scheduled by the Registrar during the formal exam period.
    • Will cover all material in the course.
    • Each percentage points below 50% achieved on the final exam will result in a corresponding penalty on the course grade. (For example, 45% on the final exam gives a 5% penalty on the course grade.)
  6. Final Quizzes (20%)
    • To be delivered thru BrightSpace during the university exam period.
    • 9:00 am - 12:00 pm, Monday, 20 April 2020
    • Replaces the final exam, which cannot be held due to the Covid-19 outbreak.
  7. Better Testing Grade (10%)
    • Either your combined test scores or your final exam quizzes score, whichever is greater.

The final mark will be a letter grade based on the scale described in Section 5 of the Academic Regulations in the University Calendar. There will be no supplementary examinations. Note: students majoring in CS or Mathematics must achieve a minimum grade of C.

Missed Final Exams
If you miss the final exam, you must contact the Dean of Science within 48 hours to schedule a new time, as explained in Academic Regulation #10 “Special Examinations”. The Dean decides whether your excuse is acceptable.
Technology in our Classroom/Lab
Please ensure that your cell phones are set to silent mode during classes.
  • You may NOT use your electronics to communicate with other students.
  • In case of urgent call, you may quietly leave the room to place/take a call.
Academic Integrity

You are required to demonstrate academic integrity in all of the work that you do. The University provides policies and procedures that every member of the university community is required to follow to ensure academic integrity.

There is no group-work in this course. Unless stated otherwise, it is expected that all the work you submit is your OWN work. You must compose and type it all by yourself, and not copy any of it from any other source, except:

  • We will sometimes provide you with “starter code”. This code can be incorporated entirely into your submission.
  • We provide sample code with the lecture notes. Code from those samples can be copied into your work and used as-is or adapted as required.
  • Code you prepared for an earlier assignment or lab may be copied into one of your later assignments/labs, and used as-is or adapted as required.
  • Students may work together to generate pseudocode algorithms (the term will be explained in class). These algorithms must appear in your submitted work as comments in the code, together with a comment indicating all people who worked together to generate that pseudocode.
  • The student who gives code to another is also guilty of an academic integrity violation, even if it was given with a warning not to copy it.
  • The penalty for submitting any work that violates the academic integrity rules is a zero on that submission—even if the violation pertains to only part of the submission. There will be no chance to re-submit that material.

According to a new policy at SMU, suspected academic integrity violations will be reported to the academic integrity officer. The officer investigates and decides on penalties.

Lack of knowledge of the academic integrity policy is not a reasonable explanation for a violation. You are encouraged to consult the Academic Integrity and Student Code of Conduct sections of the Academic Regulations in the Academic Calendar, (p. 17- 25) in order to be well informed on the consequences of dishonest behaviour.

The relevant sections are also available here.

Privacy Information

Assignments are evaluated with appropriate feedback to the student who wrote them. In order to view your evaluations, you will be required to sign-up for the course web page. Exams may be viewed by appointment after grades are submitted. For more information see the SMU privacy policies.

Accessibility
As part of Saint Mary's University Core Values statement, the University is committed to accessibility, diversity and the provision of a positive and supportive learning environment through the effective integration of teaching and research. The Atlantic Centre has been recently renamed to the Fred Smithers Centre. It establishes individualized support service programs to facilitate the participation of students with physical, medical, and learning disabilities, and to provide students with disability accommodation services and supports. Students are encouraged to seek more information by visiting the Centre.
Student Counselling
University can be a very stressful time in a person's life. Dealing with heavy work-loads and novel social situations can sometimes get to be more than you can handle on your own. I know. If you need help, the Counselling Centre is located on the 4th floor of the Student Centre and offers daily drop-in sessions and peer support from students trained in mental health. See their web page at smu.ca/counselling.

See this Mental Health Roadmap for information on what other services are available for students in need.

In Case of Emergency
It is important to be familiar with SMU Security Procedures so you are prepared in the case of an emergency situation/need for evacuation.