reset password

CS520 Advanced Topics in Web Programming

Fall 2016
Computer Science Department
California State University, Los Angeles

Lectures: Monday 5:15pm - 7:45pm in FA 223
Instructor: Chengyu Sun
Email: csun@calstatela.edu
Office: E&T A317
Office Hours: M 3-5pm or by appointment in E&T A317
Course Description: This course picks up where CS3220 (formerly CS320) left off and discusses more advanced topics in web application development. In particular, we will cover development tools, libraries, frameworks, and methodologies that help create sophisticated, robust, and maintainable web applications. Emerging technologies and research issues related to the Web will also be discussed. 
Prerequisites: CS3220 (formerly CS320)
References:
  • Pro Git by Scott Chacon and Ben Straub.
  • Java Persistence with Hibernate by Gavin King, Christian Bauer, and Gary Gregory.
  • Spring in Action by Craig Walls.
  • Spring Recipes: A Problem-Solution Approach by Marten Deinum, Josh Long, Gary Mak, Daniel Rubio.
  • Speaking JavaScript by Axel Rauschmayer.
  • Practical jQuery by Mukund Chaudhary and Ankur Kumar.

All of these books are available on Safari Books Online (use your AD username and password to log in).

Software Tools: Email and web application development tools.
MS PowerPoint for accessing online lecture notes.
Grading Policy: Homework and Projects 45%, Labs 15%, Midterm 20%, Final 20%
 
90 - 100
80 - 90
60 - 80
40 - 60
below 40
A
B
C
D
F
Schedule:
Week Topics
1 Administrative Issues
Setting Up Development Environment
Servlet and JSP Review
2 From Make to Maven: Understand Build and Build Tools
Lab: Servlet and JSP
3 (Labor Day)
4 Version Control with Git
Lab: Git and GitHub
5 Object-Relational Mapping with Hibernate and JPA (I)
6 Object-Relational Mapping with Hibernate and JPA (II)
Lab: OOD and ORM
7 Spring - Inversion of Control
Spring - Aspect-Oriented Programming
Lab: Spring IoC and AOP
8 Spring - Web MVC
9 Declarative Security
10 Midterm
11 Bits and Pieces of Web Programming (I)
12 Bits and Pieces of Web Programming (II)
Full Text Search
13 JavaScript and jQuery
Lab: JavaScript and jQuery
14 Introduction to Web Services
15 Implementing Ajax Operations
Lab: Implementing Ajax Operations
16 Final
Online Resources:
Academic Integrity: Cheating will not be tolerated. Cheating on any assignment or exam will be taken seriously. All parties involved will receive a grade of F for the course and be reported to the department for further disciplinary action.