If you need to speak to me about course material, please come to
office hours. For other concerns, my availability can be found on
the calendar page. Please check there
before emailing to ask when I can meet.
Course policies (including grading information) is posted in the
CS 343 Syllabus.
Course Description
Overview of application software development fundamentals and their use in building
stand-alone applications, visualizing and interacting with complex data representations,
and controlling the Internet of Things. This course provides an introduction to the
technologies used to create modern user interfaces (e.g., web technologies), establishing
a common foundation for later application-focused courses.
Course Objectives
Students who complete this course can expect to meet the following
objectives:
- Summarize the key steps for publishing, retrieving, and displaying web documents.
- Justify and apply accessibility standards for web documents.
- Apply accessibility standards to web documents.
- Generate and manipulate DOM objects.
- Describe the benefits of functional programming in data manipulation.
- Evaluate the advantages and disadvantages of client-side storage technologies.
- Dynamically generate and manipulate images based on structured data.
- Create dynamic asynchronous event handler software that avoids common timing-related errors.
- Describe how authentication, authorization, and access control can mitigate common web application risks and threats.
- Apply common web-based techniques to mitigate common risks and threats arising from untrusted input and third-party software.
- Identify and consult credible software documentation and tutorials for learning new technologies.