Course Highlights - COMP2405
Target Population: This course
is designed for web developers, students, and programmers wanting
to learn how to do client-side programming.
This course covers two client-side languages:
PHP, which will run on either
a LAMP (Linux - Apache - MySQL - PHP) or a Windows web server.
ASP.NET, which runs on Windows web servers and uses Visual Studio as the
development environment.
Here's what you'll learn by taking this course:
-
A working knowledge of PHP and ASP.NET.
- Data types and control statements common to all
modern programming languages.
- Microsoft's Visual Studio programming environment.
- The use of SQL (Standard Query Language) to handle data from databases.
This course uses up-to-date teaching techniques allowing
you to learn by reading, listening, experimenting, and writing your
own code. Each module has specific Learning Activities designed to
help you learn in an interesting and fun manner as well as Assessment
Activities to help you determine exactly what you've learned.
This course is part of the
Web Programming Certificate
program at South
Central College.
Course Details
Web Programming II - COMP2405 - Fall Semester
2008
Section 01 Room C179 (near door #5 Gold Lot) Monday
3:00 - 5:50
Credits - 3 credits (3 lecture)
Required Text (first half of course): Beginning
PHP5, WROX
Press -
Dan
Squier,
David
Mercer,
Allan
Kent,
Steven
Nowicki,
Clark
Morgan,
Wankyu
Choi
ISBN-10 number:
0764557831
or ISBN-13: 978-0764557835
Required Text (second half of course): ASP.NET
Kick Start by
Stephen Walther, SAMS, ISBN 0-672-32476-8 (Please make certain your
text has this exact number. Other editions will not be up-to-date.)
Required Software:
The
Aptana
code editor. The stand-alone version is recommended. However, if you are already using Eclipse, use
the Eclipse plug-in version.
EasyPHP
for Windows or
MAMP
for OS X. These are both free applications that will help you quickly
set up a PHP server on your development machine.
A copy of Microsoft's
Visual Studio Professional.
You can also use the free
Express version of Web Developer
but the textbook examples will have to be
adjusted accordingly. (Note:
All SCC students can download the professional version for free using the SCC student license
we have purchased. Check with John Burns for more information. However, the license can only
be used for educational work and not professionally.)
Hardware: It is recommended that you have at least one flash drive to
store you work and class information. (Please back up your data on
a regular basis!)
For more information contact: Jesse Daniels, Instructor
email: jesse@longloft.com
phone:
507-995-2307
Prerequisites
-
Successful completion of Web Programming
I (COMP1400
with a C or higher), or a working knowledge of XHTML,
CSS, and FTP.
- Minimum typing speed of 35 wpm (60 wpm recommended).
Find out your typing speed at
http://typingtest.com
Improve your typing speed with
TuxType,
a free, open-source typing
program.
- Knowledge of VB.NET programming is very beneficial although not a requirement.
Course
Goals:
-
Communicate effectively using today's technologies.
(email, discussion forums, and other Web- based tools)
-
Create and publish interactive web pages on the
World Wide Web.
- Establish a professional, client-based attitude, toward
web design.
Core
Abilities:
-
Communication.
Communicate, Communicate,
Communicate
-
Critical Thinking.
Demonstrate effective
problem solving.
-
Citizenship and Professionalism.
Be
professional by demonstrating integrity, honesty, and by meeting
deadlines.
-
Technological Literacy.
Demonstrate
effective learning by accessing
and analyzing information using technology to solve problems.
Learning Objectives
Server-Side Scripting using PHP
Install and use PHP on a local server.
- Describe Open Source and how it is affecting the IT industry.
- Draw a picture describing the relationship between client/server objects
used by PHP and mySQL.
- Install PHP and mySQL using EasyPHP package.
- Write a simple test program using PHP on the local server (http://localhost/
)
- Establish a working environment for PHP web page development.
- Use variables, constants, and environment variables in a PHP program.
Utilize XHTML forms and PHP to get information from the user.
- Create an XHTML reference page showing all the form objects.
- Use GET and POST to send variables to a PHP web page.
- Use isset() to check for the existence of variables.
- Use urlencode() and urldecode() to pass strings of words via the URL (method="get")
Utilize decision making constructs
in a PHP program.
- Use the if
else construct to make simple decisions.
- Use the switch statement to make multiple comparisons
on a single variable.
- Include external files
- Use the for loop to iterate through a list
- Convert a for loop into a do while loop to
demonstrate the simularities.
Utilize decision making constructs
in a PHP program.
- Use the if
else construct to make simple decisions.
- Use the switch statement to make multiple comparisons
on a single variable.
- Include external files
- Use the for loop to iterate through a list
- Convert a for loop into a do while loop to
demonstrate the simularities.
Use functions are part of your code
design.
- Write and use a function that receives parameters by value.
- Store the value of a value returned by a function in a variable.
- Include external files
- Demonstrate the use of both local and global variables
in a program.
- Use the keyword static to maintain a value inside of a
function.
- Use the include( ) function to access functions stored in external files.
- Utilize regular expressions to validate input from user.
Use Regular Expressions and Sessions in your PHP
Code
- Utilize regular expressions to validate input from user.
- Use hidden fields to pass information to php modules.
- Use PHP Sessions to create persistent variables that can be used by multiple
requests from a client browser session.
Use File I/O to read and write to files.
- Use file functions to read information from disk files.
- Use file functions to write data to disk files.
- Get file property information from the directory
- Copy, rename and delete files
Connect to a mySQL Database
- Connect to a database.
- Use mysql_query( ) to perform SQL statements.
- Use stripslashes() for escape characters.
- Use functions from an include file.
Use the PEAR Class to Streamline Database Work
- Use the PEAR DB class to access database tables.
- Send email from a PHP program.
Server-Side Scripting Using
ASP.NET
Establish a server-side development environment using ASP.NET
-- Create a HelloWorld.aspx file that runs on the server.
-- Compare the differences between IIS/Apache and Windows/Linux in
regards to web development.
-- Give three examples of classes including example properties and
methods
-- Give an example of a classes and three objects (instances of the
class).
-- Use namespaces in your ASP.NET web pages.
-- Use comments as a development tool.
Utilize Web Controls and Validation Controls
--
Describe the difference between an HTML Server control and a
Web Server Control
-- Use at least three Web Server Controls in a web page.
-- Validate user input from a form using the web form validators.
-- Handle events
Write event-driven web pages
-- Utilize the three main events that happen whenever a ASP.NET page
is requested.
-- Write a program that incorporates user-initiated events such as
onClick.
-- Include examples of the four page object properties in a program:
Application, IsPostBack, Request, and Response.
-- Use ASP.NET directives in your programs.
Connect to a Database using SQL and ADO.NET
-- Connect to an Access database using ADO.NET
-- Display data from a database using the GridControl.
-- Display data from a database using the repeater control.
Build dynamic web pages using database server controls
-- Allow user to update a database using editing controls in a DataGrid
-- Utilize the SQL
UPDATE statement
--
Utilize parameters to designate specific records
--
Delete data from
a database.
--
Allow
the user to sort and page through a DataGrid
Grading
A 97-100%
A- 90-96
B+ 97-89
B 84-86
B- 80-83
C+ 77-79
C 74-76
C- 70-73
D+ 67-69
D 64-66
D- 60-63
F Below 60%
The grading for this course is performance-based. You will not be
graded a curve. This means that your grade is based on the work you
do and not on what grade others in the class receive.
As your instructor I am the record-keeper of your points. I do not “give
you a grade”; I only keep track of the scores you receive.
You will earn your grade by demonstrating your knowledge of the learning
objectives listed at the bottom of each learning activity page. Complete
the work according to the specifications and you will receive points
accordingly.
One hint: This is a project and participation-based
course. For example, most projects are worth 25 points while a quiz
in the same module might only be worth only 10 points. This focuses
your efforts on demonstrating your knowledge in applying your
learning,
not just knowing the facts or memorized information. (It also makes
the things you learn in this course much more useful in the real
world!)
Course Policies
Be responsible for your own actions.
Respect due dates - No late projects, papers, or quizzes will
be accepted unless you have made prior arrangements in writing with
the instructor and have a valid and documented reason. All late projects
that are accepted will automatically drop one letter grade.
Quizzes - Make-up quizzes must be done on or before the next
class session. 10% will automatically be taken off the total available
points on all make-up exams.
Incomplete - An incomplete is granted due to serious extenuating
circumstances (e.g. a death in the immediate family, hospitalization,
etc.) near the end of the semester when the majority of the coursework
has been successfully completed. An incomplete will not be granted
for failing work.
Cheating - All graded projects must be your own work only. Cheating
or plagiarism is a serious breach of academic ethics and could lead
to sanctions including expulsion from college. When taking tests, protect
your answers from others. If cheating is discovered, all participants
will be penalized.
Special Needs -
If you have a disability and need accommodations to participate in
the course activities, please contact your instructor as soon as possible.
This information will be made available in an alternative format, such
as Braille, large print, or cassette tape, upon request.
Student contributions - Students are expected to:
-- Participate in course discussions and actively participate within
their team.
-- Complete all projects on or before the deadline.
-- Read all assigned material before class or chat sessions.
The Bottom Line -
I am here to help you learn and understand the material presented
in this course. Please let me know if you do not understand any concepts
or projects in this class. Feel free to clarify any questions you may
have during class, at my office, or via email. I am also open to any
suggestions you may have that would make this course more interesting
and/or useful.