Course Content and Outcome Guide for CIS 233W Effective Winter 2016
- Course Number:
- CIS 233W
- Course Title:
- Credit Hours:
- Lecture Hours:
- Lecture/Lab Hours:
- Lab Hours:
- Special Fee:
Addendum to Course Description
Intended Outcomes for the course
On completion of this course, students should be able to:
- Design and implement Object classes using class diagrams, constructors, encapsulation, inheritance, and polymorphism.
- Write applications that manipulate the Document Object Model to fetch and display information using jQuery.
- Create anonymous functions and closures, and use them to store and access local data.
- Create event listeners and callbacks to respond to user-interface and network events.
- Apply the jQuery AJAX interfaces and JSON to upload data to a back-end web server, and to asynchronously retrieve and display responses.
Course Activities and Design
The course consists of a series of lectures and reading assignments that will provide the background knowledge for a number of hands-on programming labs. These labs will require the student to apply various programming techniques to the creation of a full-featured, dynamic web site.
Outcome Assessment Strategies
Mastery of programming techniques will be assessed using a variety of strategies, including:
- Students will take tests or quizzes to assess "knowing" and "remembering" skills.
- Students will be required to write discussion board postings to assess "understanding" skills.
- Students will be given solutions to related problems and be asked to adapt them to new problems to assess "applying" and "analyzing" skills, as part of programming labs.
- Students will be asked to compare various programming techniques on their suitability for solving programming labs in order to test "evaluating" skills, both as part of the labs as well as part of their discussion postings.
- Students will be asked to create and implement new solutions for programming labs to assess their "creating" skills.
Course Content (Themes, Concepts, Issues and Skills)
- dynamically modifying the content of web pages
- handling user interaction
- fetching content asynchronously from a back-end web server
- uploading content to a back-end web server
- Object-Oriented Programming
- Data-hiding Encapsulation
- Prototypal Inheritance
- Anonymous functions
- Closures and scopes
- Document Object Model (DOM)
- event listeners, handlers, and triggers
- jQuery event model, "on", and "trigger".
- jQuery filters and selectors.
- Cross-site scripting (XSS)
- Cross-Origin Resource Sharing (CORS)
- Create well-designed object classes that are extensible, maintainable, and reusable
- Use jQuery and AJAX to create dynamic, interactive web sites that communicate with a back-end web server
- Test and debug complex, distributed applications with multiple technologies
- Create the front-end for a fully featured web site