Refresh this page. It probably contains some minor changes (e.g. links)

Important: The calendar is subject to change! Make sure you have the most recent version. Open the Developer Tools of your Chrome browser and go to the "Application" tab. Check ONLY the option "Cache Storage" and then click the "Clear Site Data" button. Then reload the page.

Course Description

Course Outline

Pre-Requisites

It is expected that you are familiar with the material from the two pre-requisite courses: Web Development and Object Oriented Programming 1 with Java. If you received a B or higher in both of these courses then you should have no problem with the work in this course.

However, if you received a lower grade in either one or both of SYST10049 and PROG10082 then you will have some difficulty with this course. You will need to brush up on the material in both courses as you also study for and do the work in this course. The web sites below contain the full content of both courses. Check these two pages and ensure that you've learned all of the material - You are responsible for ensuring that you've learned all of the material below:

Description

This course is a continuation of Web Development (SYST10049): This is the programming part of web application development. You will learn to develop interactive web applications using a variety of technologies such as JavaScript, PHP, and MySQL. The course can be divided into the following modules:

JavaScript

  • Overview of client/server architecture
  • Overview of JavaScript and Usage
  • Structure, Variables, and Syntax
  • JavaScript Objects, OOP
  • JavaScript Events
  • JavaScript DOM

PHP

  • Overview of PHP and Usage
  • Structure, Variables, Syntax, Arrays
  • HTML Form Validation
  • User Input
  • Sessions and Cookies
  • Data-driven applications with MySQL

Other topics may be added as time permits.

Textbook/Resources

There might occasionally be other on-line resources used for specific lessons.

Software Required

You will require the following software for this course:

  • You will need access to your dev.fast.sheridanc.on.ca web space (you can view your account information or reset your password at FAST Tech.
    • If you can't remember how to access this space, you can use your materials/instructions from syst10049. If you no longer have access to those materials, you can use mine: SYST10049 Setup Tasks.
    • If you are unable to access your web space on the dev.fast server, you will need to get this cleared up before the start of the second class by contacting fast_support@sheridanc.on.ca.
    • You are required to protect your syst10199 directories with .htaccess as you did in term 1. Instructions on how to do this are in the SYST10049 Setup Tasks (make sure you replace all occurrences of syst10049 with syst10199 !!)
    • If you did not take syst10049, you will need to set up your space before the start of the first class. Please see the following sets of instructions:
      SYST10049 Setup Tasks

      How and What to Publish.
  • An IDE for web development:
    • In class, I will be using VS Code, and it's really good and very customizable, so I highly recommend it (and you're probably using it for Java 2, also)
    • IntelliJ WebStorm (it's not free, so use this link to apply for a free student license - you must use your sheridancollege.ca email) I haven't used WebStorm in years but I really liked it back when I used it.
    • Sublime Text - I use this sometimes for quick tasks, it's nice.
  • A file archiving utility of your choice, for example WinRAR or IZArc.
  • An FTP client of your choice, for example FileZilla (this is what I'll be using in class), Core FTP, or WinSCP.

Course Evaluation

The evaluation scheme for this course is as follows:

Eval. Category %
Mid Term Exam 25%
Final Exam 25%
Assignments (8) 50%
Total 100%

Mid Term Exam: This will take place in week 7.

Final Exam: This will take place in week 14.

Assignments are assignments or homework that you can take away to complete and then submit on a specified due date (usually at the beginning of the next class). There will be 8 take-home assignments (4 in the first half of the course and 4 in the second half of the course) that demonstrate your knowledge of the topics covered in the course.

See assignment policies regarding late or missed assignments/exams.

Important!
Note that you must average 50% on your exams in order to pass the course.

Sheridan is committed to Academic Integrity. In this course the professor has chosen to require students to use Turnitin to check their own written work to ensure originality.

  • By taking this course students agree that they will submit written work for this course to Turnitin for text comparison.
  • Students will have the opportunity to review their initial work and correct any issues identified by Turnitin prior to submitting their final work.
  • Students will include the final Originality Report as a part of the written work submission.
  • Students are encouraged to discuss the Originality Report at any time with their faculty member.
  • Assignments submitted to Turnitin will be included as source documents in Turnitin.com's restricted access database, solely for the purpose of detecting text copying.

Week 1

Course Introduction and Overview
Introduction to JavaScript
JavaScript Syntax
Evaluations

Week 2

Functions, Basic Arrays
Readings:
Modern JavaScript Tutorial, Part 1 sections 2.15 to 2.18, 3.1 to 3.4, and 5.1 to 5.5
MDN: Functions
MDN: Indexed Collections
Evaluations

Assignment 1 Due

Week 3

Hash Arrays and Objects
Readings:
Modern JavaScript Tutorial, Part 1 sections 4.1 to 4.5, 5.6, 5.7, and 5.9
MDN: Keyed Collections
Working with Objects
Evaluations

Week 4

DOM (Document Object Model)
Readings:
Modern JavaScript Tutorial, Part 2 sections 1.1 to 1.8
MDN: Introduction to the DOM
Evaluations

Assignment 2 Due

Week 5

Event Handling
Evaluations

Assignment 3 Due

Week 6

Form Validation
Evaluations

Week 7

Evaluations

Mid Term Exam
Assignment 4 Due

Week 8

Intro to PHP
Evaluations

Week 9

Arrays and OOP
Evaluations

Assignment 5 Due

Week 10

PHP Form Processing
Evaluations

Week 11

PHP Sessions
Readings:
Sessions in PHP
Evaluations

Assignment 6 Due

Week 12

Database Driven Web Apps
Evaluations

Assignment 7 Due

Week 13

Database Driven Web Apps, Continued
Evaluations

Week 14

Evaluations

Final Exam
Assignment 8 Due