bricklayerbelchedInternet and Web Development

Feb 5, 2013 (6 years and 2 months ago)


2008 Pearson Education, Inc. All rights reserved.



Introduction to the

2008 Pearson Education, Inc. All rights reserved.


The renaissance of interest in the web that we call Web 2.0
has reached the mainstream.

Tim O’Reilly

Billions of queries stream across the servers of these
Internet services

the aggregate thoughtstream of
humankind, online.

John Battelle, The Search

People are using the web to build things they have not built
or written or drawn or communicated anywhere else.

Tim Berners

Some people take what we contribute and extend it and
contribute it back [to Ruby on Rails]. That's really the basic
open source success story.

David Heinemeier Hansson, interviewed by Chris Karr at

2008 Pearson Education, Inc. All rights reserved.


1.1 Introduction


Instructions to command the computer to perform actions and make

JavaScript and PHP are popular software development languages for
based applications.

Computer development

Computer use increasing in most fields

Computer costs and size decreasing

Abundance of silicon drives down prices of silicon
chip technology

Applications of this book

Prepares for higher learning in C++, Java, C#, Visual Basic.NET as well
as object
oriented programming

Allows development of applications with graphical user interfaces (GUIs)

Multimedia capabilities

Integration with the Internet and World Wide Web

2008 Pearson Education, Inc. All rights reserved.


1.1 Introduction (Cont.)

Apply database technologies

Applications that are not limited to the desktop


Multiple platforms (i.e., different types of computers running
different operating systems).

Book structure

Focus on Web 2.0 and rich Internet applications

Chapters 1

Covers XHTML, JavaScript, Dynamic HTML, Extensible Markup
Language (XML), CSS, Flash, Flex, Silverlight and Dreamweaver

For applications running on client side (typically Mozilla Firefox 2
and Microsoft Internet Explorer 7)

Chapters 21

Cover web servers, databases, PHP, Ruby on Rails, ASP.NET,
ASP.NET Ajax and JavaServer Faces (JSF)

2008 Pearson Education, Inc. All rights reserved.


Fig. 1.1

Architecture of
Internet & World Wide Web How to Program, 4/e

2008 Pearson Education, Inc. All rights reserved.


1.2 History of the Internet and World
Wide Web


Implemented in late 1960’s by ARPA (Advanced Research
Projects Agency of DOD)

Networked computer systems of a dozen universities and
institutions with 56KB communications lines

Grandparent of today’s Internet

Intended to allow computers to be shared

Became clear that key benefit was allowing fast
communication between researchers


2008 Pearson Education, Inc. All rights reserved.


1.2 History of the Internet and World
Wide Web

ARPA’s goals

Allow multiple users to send and receive info at same time

Network operated packet switching technique

Digital data sent in small packages called packets

Packets contained data, address info, error
control info and
sequencing info

Greatly reduced transmission costs of dedicated
communications lines

Network designed to be operated without centralized

If portion of network fails, remaining portions still able to
route packets

2008 Pearson Education, Inc. All rights reserved.


1.2 History of the Internet and World
Wide Web

Transmission Control Protocol (TCP)

Name of protocols for communicating over ARPAnet

Ensured that messages were properly routed and that they
arrived intact

Organizations implemented own networks

Used both for intra
organization and communication

2008 Pearson Education, Inc. All rights reserved.


1.2 History of the Internet and World
Wide Web

Huge variety of networking hardware and software

ARPA achieved inter
communication between all platforms
with development of the IP

Internetworking Protocol

Current architecture of Internet

Combined set of protocols called TCP/IP

The Internet

Limited to universities and research institutions

Military became big user

Next, government decided to access Internet for commercial

2008 Pearson Education, Inc. All rights reserved.


1.2 History of the Internet and World
Wide Web

Internet traffic grew

Businesses spent heavily to improve Internet

Better service their clients

Fierce competition among communications carriers and hardware
and software suppliers

Resulted in massive
bandwidth increase and plummeting costs

Tim Berners
Lee invents HyperText Markup Language (HTML)

Also writes communication protocols to form the backbone new
information system = World Wide Web

Hypertext Transfer Protocol (HTTP)

a communications protocol used
to send information over the web

Web use exploded with availability in 1993 of the Mosaic browser

Marc Andreessen founds Netscape

Company many credit with initiating the explosive Internet of late 1990s.

2008 Pearson Education, Inc. All rights reserved.


1.3 World Wide Web Consortium

W3C Founded in 1994 by Tim Berners

Homepage at


Internet universally accessible


W3C Recommendations:

Technologies standardized by W3C

the Extensible HyperText Markup Language
(XHTML), Cascading Style Sheets (CSS), HyperText
Markup Language (HTML

now considered a “legacy”
technology) and the Extensible Markup Language

not an actual software product, but a document that
specifies a technology’s role, syntax rules and so forth.

2008 Pearson Education, Inc. All rights reserved.


1.4 Web 2.0

2003 noticeable shift in how people and businesses were using the web
and developing web
based applications

The term Web 2.0 was coined by Dale Dougherty of O’Reilly

Web 2.0 definition = companies use the web as a platform to create
collaborative, community
based sites (e.g., social networking sites, blogs,
wikis, etc.).

Web 1.0 (1990s and early 2000s) focused on a small number of
companies and advertisers producing content for users to access

“brochure web”)

Web 2.0 involves the

Web 1.0 is as a lecture,

Web 2.0 is a conversation

Websites like MySpace , Facebook , Flickr , YouTube, eBay and
Wikipedia , users create the content, companies provide the platforms.

2008 Pearson Education, Inc. All rights reserved.


1.4 Web 2.0 (Cont.)

Architecture of participation

Open source software


Rich Internet Applications (RIAs)

Software as a Service (SaaS)

Web services incorporate functionality from
existing applications and websites into own web

Amazon Web Services

Maps web services with eBay web services

2008 Pearson Education, Inc. All rights reserved.


1.4 Web 2.0 (Cont.)

Future computers learn to understand the
meaning of the data on the web = Semantic Web

Deitel Web 2.0 Resource Center at

for more information.

2008 Pearson Education, Inc. All rights reserved.


1.5 Personal, Distributed and
Client/Server Computing

1977 Apple Computer popularized personal computing

Computers became economical for personal or business use

Machines could be linked together in computer networks

Local area networks (LANs)

Distributed computing


Servers offer data storage and other capabilities that may
be used by client computers distributed throughout the

Client/server computing

Popular operating systems

UNIX, Linux, Mac OS X and Microsoft’s Windows

2008 Pearson Education, Inc. All rights reserved.


1.6 JavaScript: Object

Scripting for the Web


Attractive package for advancing level of programming language

based language

Supports proper software engineering techniques

Free as part of today’s most popular Web browsers

Powerful scripting language


Programs execute interpretively on client machines

ActionScript and JavaScript are converging in the next
version of the JavaScript standard (JavaScript 2/ECMA
Script version 4)

Universal client scripting language, simplifying web
application development

2008 Pearson Education, Inc. All rights reserved.


1.7 BASIC, Visual Basic, Visual C++, C#
and .NET


Developed in the mid
1960s at Dartmouth College

Primary purpose was to familiarize novices with programming

Microsoft’s Visual Basic language

Based on Basic

Has become one of the most popular programming languages in the

Microsoft’s .NET platform

Provides the capabilities developers need to create computer
applications that can execute on computers distributed across the

Visual Basic (based on the original BASIC)

Visual C++ (based on C++)

Visual C# (based on C++ and Java)

2008 Pearson Education, Inc. All rights reserved.


1.8 Software Technologies

Agile Software Development

Set of methodologies that try to get software implemented

Agile Alliance (

Agile Manifesto (


Reworking code to make it clearer and easier to maintain while
preserving its

Design patterns

Proven architectures for constructing flexible and maintainable
oriented software

Open source code

2008 Pearson Education, Inc. All rights reserved.


1.9 Software Technologies (Cont.)


Open source operating system


Most popular open source web server


Open source database management system


Most popular open source server
side “scripting” language for developing Internet


Linux, Apache, MySQL and PHP (or Perl or Python)

Game programming

Software techniques used in game programming Adobe Flash CS3

Ruby on Rails

Combines the scripting language Ruby with the Rails web application framework

Developed by 37Signals

Software as a Service (SaaS)

Software runs on servers elsewhere on the Internet

Salesforce.com, Google, Microsoft and 37Signals all offer SaaS