0% found this document useful (0 votes)
211 views11 pages

CS 212: Web Programming: Spring 2017 Course Syllabus

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
211 views11 pages

CS 212: Web Programming: Spring 2017 Course Syllabus

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

CS 212: Web Programming

Spring 2017 Course Syllabus

Northern Arizona University • College of Engineering, Forestry, and Natural Sciences


Department of Electrical Engineering and Computer Science

Course Information

Introduces web programming. Emphasizes creating reactive, highly usable


Catalog
web sites. Introduces HTML forms, CSS, PHP, Javascript, web database,
Description:
XML, and ASP.NET.
Broad Topics: HTML, CSS, PHP, Javascript, MySQL, XML, ASP.NET
Prerequisites: CS 122, CS 122H, or CS 126
Co-requisites: None
Skill Level: Introductory
Credit Hours: 3
Class Number: LEC 8313
Meeting Times: MW 7:00pm - 8:15, Forestry Building 82, Room 017
Final Exam Time: Monday, May 8, 8:00pm - 10:00pm
Required Texts: None (see recommended texts below)
Web Page: BbLearn
Instructor Information

Instructor: Patrick Kelley, BSCS


Engineering Bldg. Rm 251
MWF 8:00 – 10:00am
Office Hours:
TuTh 8:00 – 12:00
TuTh 1:00 – 3:00pm
Patrick.Kelley (at) nau.edu
Email: or
webmaster (at) flion.com
Phone: 699-7455 (email preferred)
Box 15600
NAU Address:
Flagstaff, AZ 86011

Course Description

Introduces web programming. Emphasizes creating reactive, highly usable web sites. Introduces
HTML, CSS, PHP, MySQL, JavaScript, XML and ASP.NET.

Course Objectives

Upon successful completion of this course: you will have an understanding of basic web
programming techniques and methodologies. You will be able to use server side and client side
scripting techniques to build dynamic non-trivial websites.

Recommended Texts

o HTML & CSS


John Duckett
2011 by John Wiley and Sons, Inc.
ISBN: 978-1-118-00818-8
o PHP & MySQL for Dummies, 4th Edition
Janet Valade
2010 by Wiley Publishing
ISBN 978-0-470-52758-0
o JavaScript: a Beginner’s Guide, 3rd Edition
John Pollock
2010 by McGraw-Hill
ISBN 978-0-07-163295-9
- or replace the two books above with -
o Learning PHP, MySQL & JavaScript, 4th Edition
Robin Nixon
2015 by O’Reilly
ISBN 978-1-491-91866-1
Schedule

Week 1 Intro, Origins of Web


Week 2 HTML basics
Week 3 Advanced HTML
Week 4 Cascading Style Sheets
Week 5 Web Design
Week 6 PHP
Week 7 PHP
Week 8 MySQL
Week 9 Javascript
Week 10 Document Object Model
Week 11 JQuery
Week 12 AJAX
Week 13 XML
Week 14 ASP.NET
Week 15 Wrap Up/Review
Week 16 Final Exam (May 8, 8:00pm)

Coursework

The coursework includes the following assignments and tests:

 10 Projects at 20 pts each (80% of total grade)

Projects are where you put the knowledge you've gained into practice, transitioning from
the theoretical to the practical with hands-on experience. Points are awarded based on the
completeness and quality of your work and the thoroughness of your project report.

 1 Final Exam: 50 pts (20% of total grade)

The final is an incentive for you to ensure you fully understand the topics being covered -
as well as demonstrating that fact to the instructor. Points are awarded for correct answers.

 Total: 250 pts (100%)

Your class grade is based on the standard scale of points earned: 90%=A, 80%=B, 70%=C,
60%=D, below 60%=F. No grades are curved or dropped, though there are opportunities for
extra credit. Projects are individual effort.

Assignments are due according to the posted schedule in Bb Learn.


Extra Credit

There will be a number of extra credit possibilities that involve doing extra work on assignments.
Besides that, you can also get +2 points on any project by turning it in by midnight of the
Thursday before the project is due. Note that your project must fully work to receive the
extra credit.

Late Policy

Project assignments are accepted up to a week late at up to a 40% point penalty.

Attendance

Regular attendance is expected. Don't be late, and don't leave until class is dismissed. Roll isn't
taken, but each lecture you miss seriously jeopardizes your overall comprehension of the
material and your chances to do well.

Final Exam Policies

If you score less than 50% on the final exam, your final class grade (which includes the final
exam grade) will be reduced by one letter grade. This means that doing very poor on the final
can severely hurt your class grade. If you had 200/200 points ("A") before the final and made
25/50 points on the final, your final class average would be 225/250 (90%) but your final grade
would be "B".

Lectures and the Online Resources

The lecture topics follow the basic topics of the projects, but will probably not cover everything
you need to know. You are expected to use the online resources to supplement the lecture. In
addition, you may require additional material beyond the scope of this class in developing your
project site’s content. You will be graded primarily on the techniques and materials presented in
class but the quality of your content will not be ignored.
Plagiarism and Cheating

Grades are a way to motivate students and to evaluate students' mastery of a subject and their
ability to get work done. The grades you get are not themselves truly important, but instead are
representative of your knowledge, capabilities, and work ethic, and those are the things that
matter.

If you plagiarize source code, fabricate results, make fraudulent claims, or attempt to cheat in
any way, you are misrepresenting yourself, your level of understanding, your capabilities, and
your ability to accomplish things. It is dishonest and unethical.

Anyone who plagiarizes, copies, fabricates, or cheats will at the least receive a zero on that
assignment or test.

Consulting with others and using their advice on projects is fine. In fact, I encourage you to work
together and share ideas. However, the programs and content you submit should be your own
work that you thoroughly understand and are entirely responsible for. If you use code or content
from other sources, you must credit those sources and, where appropriate, obtain permission to
use them. Since our hosting means our work is publicly accessible, copyright and intellectual
property issues are a real concern.

Web Page and Bb Learn

Most assignments and handouts will only be available on BbLearn - they will not be handed out
in class. Any clarifications, corrections, and announcements will be posted on Bb Learn.

Bb Learn is the University’s system for automating record keeping and students are expected to
keep up with the content there as well as submit their work through the BbLearn system. In this
class, your main deliverable will consist of content on a NAU server. However, project reports
will be handed in via Bb Learn and your grades will be posted there. Read the assignment
policies at http://www.cefns.nau.edu/~pek7/Common/assignment.pdf to see how I expect work
to be submitted. Failure to follow the guidelines will affect your grade.
University Policies

There are a number of university policies that govern your education and safety that all students
should be aware of. These are:

 Safe Working and Learning Environment


 Students With Disabilities
 Accommodation of Religious Observance And Practice
 Institutional Review Board (And Use Of Human Subjects)
 Academic Dishonesty
 Medical Insurance Coverage For Students
 Classroom Management
 Evacuation Policies

You will find a complete description of each policy here:

http://nau.edu/OCLDAA/_Forms/UCC/SyllabusPolicyStmts2-2014

In addition, the EE/CS department has included its class dispute policies and there is a textbook
loan program (not applicable to this class but possibly useful for other courses.) These policies
may be found at:

http://www.cefns.nau.edu/~pek7/Common/policies.pdf
EXTENDED COURSE DESCRIPTION

1. Explanation of Prerequisites
CS 122, CS 122H, or CS 126
 An ability to program alone and with a team.
 An ability to solve small to medium sized problems with structured
programming.
 An ability to employ the software design process and software design tools to
solve problems with computation.

2. Core Topics

 Origins of Web
o Evolution of Media
o Origin of Markup
o Computer Aided Markup
o Integration of Networking
o Difference between ‘Web’ and ‘Internet’
 HTML
o Servers, Browsers, and their interaction
o Creating and publishing web sites
o Layout of an HTML document
o Markup Tags
o Attributes
o Forms and form tags
o Shortcomings, active content, and PDF
 Cascading Style Sheets
o Rule layout
o Internal and External CSS
o Selectors, block and inline, and rule hierarchy (cascading)
o Survey of properties
 Web Design
o Identifying the audience, purpose of site
o Site maps and page layouts
o UI Design considerations
o Organization methods
 Server-side scripting
o Server-side extension not seen by browser
o Script language elements
o Focus on arrays
o Sessions and session variables
o Forms
o Data storage in files
o email
 Database Techniques
o Database advantages
o Database and Table design and administration
o SQL Commands
o Script and Database interaction
 Client-side programming
o Browser-side extension
o Client-side script language elements
o Code creation, integration into HTML, and debugging
o Event handlers
o Survey of client-side properties
 Document Object Model
o Description of DOM
o DOM properties
o Navigation of DOM
 JQuery
o JS Library of tools
o Survey of JQuery Utilities
 AJAX
o Mechanism and requirement for asynchronous database access
o Writing and debugging AJAX code
 XML
o Description, general use
o comparison to HTML
o Well-formed documents, creating tags and attributes
o DTD and validation
o Namespaces
o Tools for creation and validation
o Tools for using XML
 ASP.NET
o ASP Basics
o MVC

3. Tools
Tools used in this class include:
 XAMPP (a free web server for local development)
 A secure file transfer program (such as WinSCP for Windows)
 An HTML capable programming environment (such as NetBeans)
 An optional XML editor (such as Oxygen)
4. Learning Outcomes

L1. An ability to create and manage a website


By the end of this course students should be able to:
a. Manage and test content files in a local environment
b. Publish content to a live web server

This outcome supports BSCS ABET Student Outcomes A, E and K.


This outcome supports BSACS ABET Student Outcomes A, E and K.

L2. An ability to generate report reflecting progress on assigned projects.


By the end of this course students should be able to:
a. Write and organize a report in a clear and engaging manner.

This outcome supports BSCS ABET Student Outcome G.


This outcome supports BSACS ABET Student Outcome G.

L3. An ability to use and modify HTML in web content

By the end of this course students should be able to:


a. Generate HTML content using a text editor.
b. Understand and modify content created by other tools.
c. Design HTML to be generated by other languages such as PHP.

This outcome supports BSCS ABET Student Outcomes A, E, and K.


This outcome supports BSACS ABET Student Outcomes A, E and K.

L4. An ability to use CSS in web content

By the end of this course students should be able to:


a. Generate CSS code using a text editor.
b. Integrate CSS styles with HTML content.
c. Design CSS to be generated by other languages such as PHP.

This outcome supports BSCS ABET Student Outcomes A, E, and K.


This outcome supports BSACS ABET Student Outcomes A, E, and K.

L5. An ability to apply basic design principles to web content

By the end of this course students should be able to:


a. Understand and apply the basic UI design process.
b. Identify and apply useful page organization methods.

This outcome supports BSCS ABET Student Outcomes A, G, and H.


This outcome supports BSACS ABET Student Outcomes A, G, and H.
L6. An ability to use server-side scripts to create active web content

By the end of this course students should be able to:


a. Write script code that generates valid HTML.
b. Use session variables to create useful active content.
c. Use script functions to manipulate data in a database.
d. Test and publish script code that operates in an integrated web environment.

This outcome supports BSCS ABET Student Outcomes A, E, and K.


This outcome supports BSACS ABET Student Outcomes A, E, and K.

L7. An ability to use client-side scripts to create active web content

By the end of this course students should be able to:


a. Write code that integrates successfully with a browser environment.
b. Use client-side code for active content such as validation and active controls.
c. Use the JQuery library to extend the capabilities of Javascript.
d. Use AJAX to manipulate data in a database.
e. Navigate and manipulate a document using the DOM.
f. Test and publish client-side code that operates in an integrated web environment.

This outcome supports BSCS ABET Student Outcomes A, E, and K.


This outcome supports BSACS ABET Student Outcomes A, E, and K.

L8. An ability to use a database to enhance active web content

By the end of this course students should be able to:


a. Create and manage a database and its table structure.
b. Design and implement a system that uses a database to deliver active content.
c. Test and publish database code that operates in an integrated web environment.

This outcome supports BSCS ABET Student Outcomes A, C, E, and K.


This outcome supports BSACS ABET Student Outcomes A, C, E, and K.

L9. An ability to create XML content

By the end of this course students should be able to:


a. Write XML code using a text editor or XML editor.
b. Write DTD files for XML.
c. Test XML files for well-formedness and validity.
d. Understand and use namespaces in XML documents.

This outcome supports BSCS ABET Student Outcomes A, E, and K.


This outcome supports BSACS ABET Student Outcomes A, E, and K.
L10. An ability understand the roles of various technologies used in web content.

By the end of this course students should be able to:


a. Describe the mechanisms for HTML, CSS, PHP, Javascript, MySQL, and AJAX.
b. Explain the advantages and disadvantages of the above technologies.

This outcome supports BSCS ABET Student Outcomes A, E, and K.


This outcome supports BSACS ABET Student Outcomes A, E, and K.

You might also like