About CS 204¶
This course is about Front-End Web Development. The "front-end" is jargon for all the stuff that goes on in the browser. (The "back-end" is the term for all the operations on the server, which usually means updating databases to record information that the user has submitted or retrieving information that was previously stored.) The front end includes:
- structuring the content using HTML
- styling the content using CSS
- dynamically updating the page using JavaScript (JS) and jQuery (JQ)
Intended Audience¶
This course is intended for beginning CS and MAS majors. Its prerequisites are CS 111 or an equivalent "CS 1" course that introduces programming (variables, conditionals, functions, objects and so on). Knowledge of JavaScript is not required.
History¶
This course grew out of the realization that although the Computer Science department no longer had the resources to teach the popular CS 110 course for non-majors and it reluctantly had to stop offering that course, much of the content of that course was valuable to CS and MAS majors. Therefore, this course was created to cover similar ground, but starting with an assumption that students know the basics of programming. It's also intended to go a bit farther and faster than CS 110 did. Nevertheless, because of the substantial overlap between CS 110 and CS 204, a student cannot earn credit for both courses.
Tentative topics¶
The following is a tentative schedule of topics for the course. The course is still being created, so these will certainly change.
- Using a Cloud 9 development environment, URLs
- HTML and CSS
- CSS 2: selectors, box model, inheritance, fonts
- CSS 3: float layouts, flex layouts
- Mobile and responsive, Media Queries
- JS introduction
- JS dates and objects
- DOM & jQuery
- Event Handlers + setTimeout
- Visual Effects with CSS
- Closures and Namespaces
- Object-Oriented Programming: Methods, Modules, Objects and HTML Forms
- Skeleton and Bootstrap
- Forms and .val(), including radio buttons and checkboxes
- From Data to DOM
- Validating Forms, including Regular Expressions
- LocalStorage and Ajax: .get() .post() and Same Origin Policy
- Animations & Absolute Positioning
- Slideshows
- Galleries & Drop-downs
- Object-Oriented Programming: Classes and Inheritance
- Keyboard and Mouse event handlers
- jQuery UI, date picker, menus, autocomplete
- Google Maps API
- Accessibility