CS 4220
Current Trends in Web Design and Development
Application Development with Node.js & Vue.js
Spring 2019
Computer Science Department
California State University, Los Angeles
Lectures
Sunday
Time: 1:30pm - 3:30pm
Location: King Hall - Lecture Hall 1
Office Hours
Sunday
Time: 3:30pm - 4:30pm (Schedule in advance)
Location: King Hall - Lecture Hall 1
Instructors:
Cydney Auman
Email: cydneyauman@gmail.com
Albert Cervantes
Email: acervan5@calstatela.edu
Course Description:
This course will cover Node.js for the server-side and Vue.js for the frontend user interface. It will begin with a discussion on the fundamentals, including syntax, scope, the eventloop, callbacks and more. Then the class will jump right into teaching the Node.js platform through handling HTTP methods GET, POST, PUT and DELETE to execute operations, utilizing open-source modules and covering the Vue.js framework. The course will have several homework assignments and a project where students will build a RESTful web service application using Node.js and Vue.js.
Course Structure
This course is to be conducted in face-to-face lectures. As an added benefit to students the course also offers video lecture broadcasts. There is no expectation that broadcasted lectures will be saved and uploaded. You will participate in the course using a CSNS, Slack and Github.
Recommended Prerequisites:
CS1220, CS2011, CS3220
Students are expected to have strong programming skills and working knowledge of HTML.
Textbook
Eloquent Javascript - required
http://eloquentjavascript.net/
Grading Policy:
Homework/Exercises/Lab/Quiz 50%, Midterm 25%, Final 25%
A -- 90 - 100
B -- 80 - 89
C -- 60 - 79
D -- 40 - 59
F -- below 40
CSULA grades on a plus/minus scale
Homework Submission
Please submit all assignments via CSNS - http://csns.calstatela.edu/
Late Policy
Homework/Lab and/or Project assignments may be submitted up to 24 hours late with a 15 point late penalty deduction. After the 24 hour period, no additional submissions will be accepted and a grade of 0 will be given for the assignment.
NO late Midterm or Finals. No late Quizzes. If a student is not in attendance during the Midterm or Final or Quiz they will receive a 0 on that exam.
Slack
Register Here
Schedule:
Week 1
- Administrative Tasks
- Installing Node.js / Setup development environment
- Intro to Javascript
Week 2
- Intro to Javascript
- Arrays, Objects
- Functions
Week 3
- Intro to Javascript Continued
- Arrays, Objects with Destructuring
- Template Literals
- Classes and Inheritance
Week 4
- Javascript Timers
- Callbacks
- Promises with async/await
Week 5
- Intro to Node.js
- Event Loop
- FS and HTTP
Week 6
- Node.js with Node Modules
- Intro into APIs
- Intro into Command Line Interfaces
Week 7
- Interacting with APIs
- Building a Custom Node Module
- Building a Command Line Application
Week 8
- Continue Interacting with APIs
- Demo CLIs
- Extended Lab for Midterm questions
Week 9
- MIDTERM DUE
Week 10
- ONLINE CLASS LECTURE
- Building a Server with Node
- Serving static HTML
HELPFUL STUDENT RESOURCES
*Technical Resources
Information on CSULA technical support resources for students: Technical Support
Student Support Services
Information on CSULA student support resources for students: Student Services
Academic Support Services
Information on CSULA academic support resources for students: Academic Support
COURSE & UNIVERSITY POLICIES
Student Handbook
Information on student rights and responsibilities, academic honesty, standards of conduct, etc., can be found in Schedule of Classes for the current quarter visit the Cal State LA Schedule of Classes Information under Policies and Procedures.
Dropping and Adding
Students are responsible for understanding the policies and procedures about add/drops, academic renewal, etc. Students should be aware of the current deadlines and penalties for adding and dropping classes by visiting the GET home page. (Registrar news and information)
Americans with Disabilities Act (ADA)
Reasonable accommodation will be provided to any student who is registered with the Office of Students with Disabilities and requests needed accommodation. For more information visit the Office for Students with Disabilities home page.
Academic Honesty/Student Conduct All work you submit must be your own scholarly and creative efforts. Any act of using ideas, words, or work of another person or persons as if they were one’s own is considered as cheating. 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 University Official. Check Appendix E - Student Conduct / Student Conduct Procedures to see student code of conduct in Cal State LA.
Online Resources
Javascript Text Editors / IDE
[Sublime Text 3] (http://www.sublimetext.com/3)
[VS Code] (https://code.visualstudio.com/)
Javascript
Mozilla Developer Network
Introduction Into Javascript
ES6
[JS Next] (http://chimera.labs.oreilly.com/books/1234000001623/ch01.html)
[Understanding ES6] (https://leanpub.com/understandinges6/read#leanpub-auto-introduction)
Node & Vue
[Node.js] (https://nodejs.org)
[Vue.js] (https://vuejs.org)