IT3504 - Web Development Techniques

advertisement
BIT Year 2 – Semester 3 – Detailed Syllabi
IT3504
IT3504: Web Development Techniques
(Optional)
INTRODUCTION
This is one of the three optional courses designed for Semester 3 of the Bachelor of
Information Technology Degree program. This course on web development techniques
is a brief introduction to the most common methods of adding useful, interactive and
dynamic elements to a web site.
CREDITS: 04
LEARNING OUTCOMES
After successful completion of this course students will be able to:
•
Identify the main concepts in the web development environment
•
Create web pages using HTML and CSS
•
Add interactivity to web pages using JavaScript
•
Create server scripts using PHP
•
Identify alternative web development technologies
•
Describe legal and ethical issues in web development
MINOR MODIFICATIONS
When minor modifications are made to this syllabus, those will be reflected in the Virtual
Learning Environment (VLE) and the latest version can be downloaded from the
relevant course page of VLE. Please inform your suggestions and comments through
the VLE. http://vle.bit.lk
ONLINE LEARNING MATERIALS AND ACTIVITIES
You can access all learning materials and this syllabus in the VLE: http://vle.bit.lk, if you
are a registered student of BIT degree program. It is very important to participate in
learning activities given in the VLE to learn this subject.
ONLINE ASSIGNMENTS
The assignments consist of two quizzes, assignment quiz 1 (It covers the first half of the
syllabus) and assignment quiz 2 (It covers the second half of the syllabus). Maximum
mark for a question is 10; minimum mark for a question is 0 (irrespective of negative
scores). Final assignment mark is calculated considering 40% of assignment quiz 1 and
1
BIT Year 2 – Semester 3 – Detailed Syllabi
IT3504
60% of assignment quiz 2. Pass mark for the online assignments in a course is 50. You
are advised to do online assignments before the final exam of the course. It is
compulsory to pass all online assignments to partially qualify to obtain year 2 certificate.
FINAL EXAMINATION
Final exam of the course will be held at the end of the semester. Each course in the
semester 3 is evaluated using a two hour question paper which consists of 20-25 MCQs
and 3-4 structured questions.
OUTLINE OF SYLLABUS
Topic
Hours
1- Introduction to the Internet and Web
04
2- Web page design with HTML and CSS
16*
3- Client-side Programming with JavaScript
14*
4- Server-side Programming with PHP
14*
5- More topics in web development
12
Total for the subject
60
* Students are expected to do practicals and tutorials to strengthen their knowledge of
these sections.
Note: All these should be lecture-demonstrations preferably conducted in a
laboratory with hands on practice for students.
REQUIRED MATERIALS
Main Reading
Ref 1 : Steven M. Schafer (2005), HTML, CSS, JavaScript® , Perl, Python®, and PHP
Web Standards Programmer's Reference, ISBN: 81-265-0620-2, Wiley Publishing Inc.,
USA (Indian Edition)
Ref 2 : http://en.wikipedia.org/wiki/Internet
Ref 3 : http://en.wikipedia.org/wiki/World_Wide_Web
Ref 4 : http://www.w3.org/
Ref 5 : http://www.ietf.org/
2
BIT Year 2 – Semester 3 – Detailed Syllabi
IT3504
Ref 6 : http://en.wikipedia.org/wiki/Web_standards
Ref 7 : http://www.w3schools.com/
Ref 8 : http://www.tizag.com/htmlT/
Ref 9 : http://www.tizag.com/cssT/
Ref 10 : http://www.tizag.com/javascriptT/
Ref 11 : http://www.tizag.com/phpT/
Ref 12 : http://www.charlescooke.me.uk/web/ugs01.htm
Ref 13 : http://en.wikipedia.org/wiki/List_of_HTML_editors
Ref 14 : http://en.wikipedia.org/wiki/Solution_stack
Ref 15 :http://en.wikipedia.org/wiki/Multitier_architecture
Ref 16 : http://en.wikipedia.org/wiki/Application_server
Ref 17 : http://en.wikipedia.org/wiki/Web_servers
Ref 18 : http://en.wikipedia.org/wiki/Apache_HTTP_Server
Ref 19 : http://en.wikipedia.org/wiki/Apache_Tomcat
Ref 20 : http://www.w3schools.com/ajax/
Ref 21 : http://en.wikipedia.org/wiki/Web_hosting
Ref 22 : http://en.wikipedia.org/wiki/ISP
Ref 23 : http://www.bitlaw.com/internet/webpage.html
Ref 24 : http://en.wikipedia.org/wiki/HTTPS
The pages of the web addresses mentioned above were browsed on 26th August 2010.
You can access all theses content from LMS.
DETAILED SYLLABUS :
Section 1: Introduction to the Internet and Web (4hrs.)
Learning Objectives
•
Recognize the Internet as an interconnected network which carries various
information and services
•
Describe the World Wide Web (WWW) architecture
•
Describe the client-server architecture and HTTP protocol
•
Identify main bodies who control the standards for WWW
3
BIT Year 2 – Semester 3 – Detailed Syllabi
IT3504
Material /Sub Topics
1.1. What is the Internet? [Ref 2]
1.2. What is the World Wide Web? [Ref 3]
1.2.1. Web servers and web browsers
1.2.2. IP address and Domain Name System (DNS)
1.2.3. URI and URL
1.2.4. Client-server model
1.2.5. HTTP protocol
1.3. Standards bodies [Ref 4, Ref 5, Ref 6]
1.3.1. The World Wide Web Consortium (W3C)
1.3.2. Internet Engineering Task Force (IETF) and RFCs
Section 2 : Web page design with HTML and CSS (16 hrs.)
Learning Objectives
•
Describe the structure of a HTML page using various HTML tags
•
Modify the presentation of information of a given HTML page by adding images
and various formatting
•
Create web pages with inter-page and intra-page links
•
Add and manage frames
•
Describe the use of HTML forms and include them in a HTML page
•
Describe a style sheet language in contrast to markup language
•
Describe programming concepts of CSS language
•
Create a website using HTML and CSS
Material /Sub Topics
2.1. Designing HTML documents [Ref 7, Ref 8]
2.1.1. Document tags [Ref 1: pg 13 – 21]
2.1.2. Paragraphs and lines [Ref 1: pg 23 – 33]
2.1.3. Ordered and unordered lists [Ref 1: pg 35 – 49]
2.1.4. Inserting images [Ref 1: pg 51 – 67]
2.1.5. Absolute and relative links [Ref 1: pg 69 – 77]
2.1.6. Text and text formatting [Ref 1: pg 79 – 88]
2.1.7. Tables and table formatting [Ref 1: pg 89 – 110]
4
BIT Year 2 – Semester 3 – Detailed Syllabi
IT3504
2.1.8. Using tables for page layout [Ref 1: pg 111 – 120]
2.1.9. Using frames and frame targeting [Ref 1: pg 121 -122]
2.1.10. Designing forms [Ref 1: pg 123 – 142]
2.2. Defining styles using CSS [Ref 7, Ref 9]
2.2.1. Styles and HTML [Ref 1: pg 164 – 169]
2.2.2. Selectors, structure and cascade [Ref 1: pg 171 - 172]
2.2.3. Values and units [Ref 1: pg 172 -187]
2.2.4. Text properties [Ref 1: pg 189 - 209]
2.2.5. Fonts [Ref 1: pg 210 - 214]
2.2.6. Colors and backgrounds [Ref 1: pg 227 - 236]
2.2.7. Visual formatting [Ref 1: pg 215 - 225]
2.2.8. Boxes and borders [Ref 1: pg 219 – 225, 238 - 244]
2.2.9. Positioning [Ref 1: pg 245 - 255]
2.2.10. Table layout [Ref 1: pg 244]
2.2.11. User interface styles [Ref 1: pg 255 - 262]
Section 3 : Client-side programming with JavaScript (14 hrs.)
Learning Objectives
•
List client-side scripting languages
•
Explain the programming concepts and data types in JavaScript language
•
Identify the object-oriented concepts used by JavaScript
•
Identify the document object model (DOM) of a HTML document and access
different components using JavaScript
•
Explain event handling in JavaScript
•
Use JavaScript to create a simple webpage with dynamic content
•
Create a webpage including forms and use JavaScript to validate fields
Material /Sub Topics
3.1. Client-side programming languages [Ref 1: pg 263 - 264]
3.2. Uses of JavaScript [Ref 1: pg 265, Ref 7, Ref 10]
3.3. Incorporating JavaScript in a HTML document [Ref 1: pg 266 –268, Ref 7,
Ref 10]
3.4. Basic JavaScript syntax [Ref 1: pg 269, Ref 7, Ref 10]
5
BIT Year 2 – Semester 3 – Detailed Syllabi
IT3504
3.5. Data types and variables [Ref 1: pg 270 – 271, Ref 7, Ref 10]
3.6. Expressions and operators [Ref 1: pg 272 – 274, Ref 7, Ref 10]
3.7. Control structures [Ref 1: pg 274 – 279, Ref 7, Ref 10]
3.8. Functions and procedures [Ref 1: pg 279 – 281, Ref 7, Ref 10]
3.9. Arrays and objects [Ref 1: pg 281 – 284 , 311 – 322, Ref 7, Ref 10]
3.10. Document object model (DOM) [Ref 1: pg 291 – 310, Ref 7, Ref 10]
3.11. Event handling [Ref 1: pg 284 – 290, Ref 7, Ref 10]
3.12. Using JavaScript for form validation [Ref 1: pg 341 – 347, Ref 7, Ref 10]
Section 4 : Server-side programming with PHP (14 hrs.)
Learning Objectives
•
Explain server-side programming
•
List server-side programming languages
•
Explain the programming concepts and data types in PHP language
•
Identify the object-oriented concepts in PHP
•
Use PHP to process a HTML form
•
Identify some useful functions in PHP
•
Create sessions in a PHP-based website
•
Identify other facilities in PHP
•
Connect to a MySQL database using PHP and exchange data
Material /Sub Topics
4.1. Server side programming languages [Ref 1: pg 471 - 473]
4.2. PHP fundamentals [Ref 1: pg 473 – 474, Ref 7, Ref 11]
4.3. Data types and variables [Ref 1: pg 475- 477, Ref 7, Ref 11]
4.4. Expressions and operators [Ref 1: pg 479 - 481, Ref 7, Ref 11]
4.5. Control structures [Ref 1: pg 482 - 486, Ref 7, Ref 11]
4.6. Functions and procedures [Ref 1: pg 486 - 491, Ref 7, Ref 11]
4.7. Arrays and objects [Ref 1: pg 491 - 494, Ref 7, Ref 11]
4.8. Form data handling [Ref 1: pg 514 - 522, Ref 7, Ref 11]
4.9. Handling sessions [Ref 1: pg 523 - 526, Ref 7, Ref 11]
4.10. Accessing a MySQL database [Ref 1: pg 523 - 526, Ref 7, Ref 11]
4.11. Errors and troubleshooting [Ref 1: pg 500 - 506, Ref 7, Ref 11]
6
BIT Year 2 – Semester 3 – Detailed Syllabi
IT3504
Section 5 : More topics in web development (12 hrs.)
Learning Objectives
•
Identify HTML editors and their features
•
List popular solution stacks and explain their advantages and disadvantages
•
Identify the 3-tier architecture in web application development
•
Distinguish between web servers and application servers
•
Explain how AJAX can be used to improve the presentation of information
•
Identify issues involved in publishing a website to a web server
•
Describe copyright and privacy issues in web content development
•
Identify available technologies to make web transactions secure
Material /Sub Topics
5.1.
HTML editors for website development: e.g. KompoZer and Macromedia
Dreamweaver [Ref 12, Ref 13]
5.2. Solution stacks: e.g. LAMP, WAMP, XAMPP [Ref 14]
5.3. Developing web applications applying 3-tier architecture [Ref 15]
5.4.
Web servers, application servers and web application servers: e.g. Apache
web server and Tomcat web application server [Ref 16-19]
5.5. Developing interactive web applications using AJAX [Ref 20]
5.6. Website hosting and ISPs [Ref 21, Ref 22]
5.7. Website legal issues: copyright, privacy and terms of use [Ref 23]
5.8. Security protocols and secure connections: e.g. SSL and HTTPS [Ref 24]
PLATFORM
•
Windows or Linux
•
Apache 2.x
•
PHP 5.x
•
MySQL 5.X
7
Download