Programming the World Wide Web 8th Edition PDF
Programming the World Wide Web is a text for computer science students. It provides the background and skills necessary to build Web sites that provide users with information they want, and advertisers with the advertising revenue they need. Chapter 1 begins with an introduction to the Internet and the World Wide Web. It discusses the history of and some of the features of Web browsers and servers, including uniform resource locators (URLs).
Introduction
In 1989, a group of scientists at CERN (Conseil Europeen pour la Recherche Nucleaire, or European Organization for Particle Physics) led by Tim Berners-Lee proposed a new protocol and system of document access on the Internet called the World Wide Web.3 This system enabled researchers anywhere in the world to access documents stored on document-serving computers located throughout the Internet. The documents could be textual or, more commonly, they included images and other kinds of media. They were linked by hypertext, which allowed nonsequential browsing of textual material.
In early 1993, Mosaic, developed at the National Center for Supercomputer Applications (NCSA) in Champaign, Illinois, introduced graphical user interfaces for accessing the Internet, including Web sites. This chapter introduces the purpose and characteristics of Web browsers, introduced in Section 3, and Web servers, introduced in Section 4. It also describes uniform resource locators, introduced in Chapter 5, which specify addresses of resources on the Web.
Fundamentals
The World Wide Web was first developed in the mid-1990s as a means to distribute and present information over computer networks. It used hypertext to allow nonsequential browsing of textual documents. This concept had previously appeared in systems such as Xerox’s NoteCards and Apple’s HyperCard.
The Web uses a variety of protocols to communicate between browsers and servers. Section 7 presents an introduction to the most popular of these, Hypertext Transfer Protocol (HTTP).
The Web requires many different technologies to function, including client-side scripting languages such as JavaScript and Flash, and server-side programming languages such as XML, Servlet, and Ajax. This chapter explains the basic concepts of each of these technologies and how they work together to form the Web. It also discusses uniform resource locators (URLs), which identify locations of resources on the Web.
Object-Oriented Programming
Object-oriented programming is a software development technique that uses objects to represent data and their functions. Programmers then create code to manipulate the objects, and this type of programming is well suited for large, complex, active programs that need frequent maintenance.
Unlike procedural programming, which has a tendency to duplicate code in violation of the “Don’t Repeat Yourself” (DRY) principle, OOP allows developers to extract and reuse code that has already been written, using the concept of class inheritance. A class is a template for creating an object, with properties and methods that all objects of that class will share.
Object-oriented languages include Smalltalk, C++ and Java. In addition, Eiffel and a number of dynamic languages, such as Python and Ruby, have added object-oriented features.
Data Structures
Data structures are the basic building blocks of computer programs. They organize data values in a way that allows them to be searched and retrieved efficiently. They can be grouped into different categories, such as linear, dynamic and non-linear data structures.
Linear data structures are those that have each element connected to the previous and next elements. This arrangement makes it easier to traverse them in a single run. Examples include linked lists, stacks and queues.
Non-linear data structures are those that don’t have a set sequence of connecting their elements. These are more difficult to implement but can be more efficient in terms of memory utilization. Examples of these are trees, BST and graphs.
Web Design
As web design has become an established career path for over two decades, a number of conventions have emerged. Some of these are standard website layouts, grid systems and mobile-first design. These conventions are important to know, as they ensure that designs meet user expectations.
To develop a web site, one must be familiar with these conventions and how to implement them using modern Web development technologies. Programming the World Wide Web provides an introduction to these techniques in a manageable progression, so that readers with previous programming experience can employ them effectively. A discussion of uniform resource locators (URLs) is also included. This chapter introduces these concepts to prepare students for later chapters that provide a complete overview of the web frameworks available.