HUMBER SCHOOL OF INFORMATION TECHNOLOGY
COURSE OUTLINE
ACADEMIC YEAR FALL '02 TO SUMMER '03
COURSE NUMBER |
CPAN 561 |
|
|
COURSE NAME |
Web Solutions - Open
Source |
|
|
CREDITS |
4 |
|
|
PRE-REQUISITES |
CPAN 460 Web Programming &
Design |
|
|
TEXT REQUIRED |
Webmaster in a Nutshell |
|
Stephen Spainhour and Robert
Eckstein |
|
O'Reilly |
|
|
ISBN |
1-56592-325-1 |
|
|
REFERENCE WEBSITE |
hal.humberc.on.ca/~dymond |
SOFTWARE |
|
|
|
|
|
ORIGINATED BY: |
Eric Dymond |
DATE: May 15 2000 |
|
|
|
REVISED BY: |
|
DATE: |
|
|
|
COURSE DESCRIPTION
Programming in Perl enables web sites to deliver
fast, dynamic data to their users. Perl has evolved into a powerful programming
language capable of solving any enterprise level problem. With approximately
sixty percent of the web server market hosted by Apache Web Servers, common
administration tasks and custom web applications have Perl as the underlying
language. PHP a Perl like wrapper is an open source language supporting rapid
database and e-commerce solutions. The MYSQL database is a lightweight ( in
terms of server resources), yet powerful enough tool to meet small and medium
size database requirements. The four tools, Perl, PHP, Mysql and Apache come
packaged with most distributions of the Linux operating system. Students in this
course will learn how the four work together to solve most web application
requirements.
LEARNING OUTCOMES
Upon completion of this course, the successful
student will be able to:
1. |
Program CGI applications in Perl |
2. |
Program administrative tasks in
Perl |
3. |
Access and include common Perl
modules |
4. |
Access and manipulate database information
with Perl DBI. |
5. |
Program PHP database connections |
6. |
Parse XML documents with Perl and
PHP |
7. |
Configure and install Apache |
8. |
Create Apache modules in Perl |
9. |
Program embedded Perl with
mod_Perl. |
10. |
Configure MySql |
11. |
Manage the MySql database. |
12. |
Develop MySql/PHP applications |
13. |
Develop online e-commerce
applications |
GENERIC SKILLS
The following generic skills will be acquired and/or
enhanced:
COMMUNICATION
- Write clear, concise sentences and paragraphs in program
documentation, projects and tests.
- Communicate in written, oral, and diagrammatic form using
appropriate formal and information vocabulary and format.
- Respond to oral and written instruction.
- Read and comprehend reference materials, diagrams and
reports
- Interpret a range of technical and non-technical instructions
(program specifications) through dialogue and refined questioning
skills.
- Read and interpret policy and procedure.
MATHEMATICS
- Apply the fundamentals of mathematics to the solution of
routine programming problems.
- Apply appropriate formulae to solve common business
problems.
- Define precision and accuracy in mathematical calculations
and use the rules for significant figures.
- Solve word problems through the use of equations.
INTERPERSONAL
- Complete projects as an effective member of a team.
- Participate effectively in group discussion on technical
problems.
- Work with others by co-operating, sharing ideas and
constructively resolving conflicts.
CURRICULUM DETAIL:
Class materials etc. are made available to students
on the website. Students are expected to visit the website regularly to
read/download these materials, as directed by their professor(s).
|
Curriculum Detail |
Reference |
1. |
Perl Basics
- Whereis Perl, which Perl and path information
- Scalar Variables
|
Handouts and web
|
2. |
Arrays and Hashtables
- Sorting Arrays and Hashtables
- Manipulating Arrays and Hashtables
- Searching Hashtables.
|
Handouts and web
|
3. |
Regular Expressions
- Matching options
- Finding and Replacing data with RE's
- $_ and @_
|
Handouts and web
|
4. |
CGI Perl module
- Form data and CGI.PM
- CGI.PM shortcuts and Dynamic Web
Pages
|
Handouts and web
|
5. |
Sub Routines and Perl
- Object Oriented Perl Programming
- Bless, my and variable scope
- Creating classes in Perl
|
Handouts and web
|
6. |
CPAN
- Installing and employing existing Perl modules
- Perl DBI and DBIx modules
- Creating a Custom Perl module.
|
Handouts and web
|
7. |
PHP basics. Escaping from HTML
- Variable declarations.
- Form data and PHP
- Arrays and PHP
|
Handouts and web
|
8. |
PHP Functions
- Constants, operators and expressions
- User defined functions
|
Handouts and web
|
9. |
MySql and PHP
- Connecting to a database in PHP
- Manipulating a database with PHP
|
Handouts and web
|
10. |
PHP/MySql Ecommerce
- Sessions and PHP
- Cookies and PHP
- PHP/MySql shopping cart
|
Handouts and web
|
11. |
Apache Installation and Configuration
- Access and directory configuration
- Enabling SHTML, CGI and PHP with apache
- The Apache module list
|
Handouts and web
|
12. |
Installing Custom Modules on Apache
- Mod Perl installation in Apache
- Programming embedded Perl
|
Handouts and web
|
13. |
MySql Adminstration Tools
- Command line programming with MySql
- Web management and Mysql
|
Handouts and
web
|
14 |
-
HTTPS and secure sockets
- Installing certificates in apache
- PHP Perl and XML
|
Handouts and web
|
15. |
Final |
|
ASSESSMENT AND EVALUATION
An average of 60% must be achieved on the tests for
the assignments to be counted for the final mark.
The Marking distribution is as follows:
MIDTERM |
30% |
FINAL |
30% |
ASSIGNMENTS AND EXERCISES |
40% |
Please note: The Distance Learning version of this course
(if available) may have a different grading scheme than the classroom version.
Check the information page of the Distance Learning version for details.
Students must pass the proctored final exam for any other test and lab
assignments to count towards their final mark.
PRIOR LEARNING ASSESSMENT
(PLA) College PLA requirements must be followed. PLA consists of
an oral qualifying interview and, if successful, a challenge exam. Depending on
the level of success on the challenge exam, a case study may be assigned.
ACADEMIC REGULATIONS
It is the responsibility of each student to be knowledgeable of
the Humber College Academic Regulations and the School of Information Technology
Academic Standards and Regulations. Copies of the standards are available in the
School of Information Technology main office H221. It is the student's
responsibility to retain course outlines for possible future use in support of
applications for transfer credit to other educational institutions. **A charge
of $5.00 per course outline may apply for additional copies.**
DISCLAIMER
Every effort will be made by the instructor of the course to
cover all the material listed. However, in the event of special circumstances
(i.e. time constraints due to inclement weather, sickness, technology problems
or changes, etc) the order, content and/or evaluation may be changed with prior
notification to students and approval from the Dean/Associate Dean
|