CS290 Proposed
From
Contents |
Prefix & proposed course number
CS 290
Web Application Development
Proposed course description
Overview This course is designed to give students the skills needed to implement a dynamic, interactive website. This will cover concepts related to layout, client side interaction and server side scripting.
Topics Layout and Styling
- HTML 5
-
- Differences from previous version of HTML
- Validation of HTML 5 documents
- CSS
-
- Selectors
- Pseudoclasses
Client Side Interactions
- JavaScript
-
- Basic use of the language
- Debugging
- Ajax
-
○ Purpose of asynchronous calls ○ Loading and parsing data using an asynchronous call
- JSON objects
- JavaScript libraries
-
- jQuery
Server Side Scripting
- PHP
-
- Basic use
- Debugging
- Sessions
- GET and POST requests
- Interaction with a database
- SQL
-
- Basic introduction
- Use of the language
-
- Table creation and deletion
- Inserting and deleting
- Selection and updating
Usability
- Basic concepts of learnability, memorability and efficiency
- Prototyping for user feedback
Scalability
- Client side vs server side operations
- Caching
Security
- Introduction to various kinds of attacks
-
- SQL injection
- Cross site scripting
- Man in the middle
- Design considerations to mitigate risks
Assignments There will generally be assignments that separately cover layout, client side interaction and server side scripting along with a final project that requires students to combine all of these concepts to make a fully functional website. Students should be exposed to 3rd party libraries so after they have been introduced to the different languages they are asked to write a howto guide involving the use of a 3rd party library or API that is related to web development.
Proposed course outcomes (3-5 outcomes)
- Outcome 1
- Outcome 2
- Outcome 3