REVIEW: "Internet and World Wide Web How to Program", H. M. Deitel/P. J. Deitel/T. R. Nieto
- BKIWWWHP.RVW 20000420
"Internet and World Wide Web How to Program", H. M. Deitel/P. J.
Deitel/T. R. Nieto, 2000, 0-13-016143-8, U$67.33
%A H. M. Deitel deitel@...
%A P. J. Deitel deitel@...
%A T. R. Nieto deitel@...
%C One Lake St., Upper Saddle River, NJ 07458
%I Prentice Hall
%O U$67.33 +1-201-236-7139 fax: +1-201-236-7131
%P 1157 p. + CD-ROM
%T "Internet and World Wide Web How to Program"
Deitel and Deitel have made a name for themselves, and obtained a
commanding presence in the programming textbook market. Their books
are generally well structured, in terms of advancing through the
material in such a way that the student is able to progressively add
to his or her arsenal of skills. Unfortunately, the books are not
always as careful about the specific contents of the text.
This material is rather heavily dependent upon Microsoft products.
The book comes with Internet Explorer and FrontPage Express on the
CD-ROM, and examples use the Microsoft versions. This is acceptable
in a work which is, after all, intended to take students through a
course of study and wants to minimize the variations in environment.
However, while there is mention of the fact that browsers, and even
versions of the scripting languages, may vary, this does not appear to
be pointed out in practice through the book.
Chapters one and two are very simplistic introductions first to
computers in general, and then to the Internet and World Wide Web.
The presentation of HTML (HyperText Markup Language) that is given in
chapters three and four is clear enough for the basic operations, but
emphasizes stylistic elements over functional ones. Complications are
brushed aside, as when forms are proposed with a not-yet-covered Perl
script, rather than the more accessible mailto function that students
could use right away. Three commercial products are promoted in
chapters five to seven.
Unfortunately, some important points are mentioned tersely, or not at
all. Having seen a number of examples of HTML in the previous
material, we are suddenly confronted with a DOCTYPE statement, and no
idea of why or how it may be needed. There is a brief reference to
the fact that these initial scripts are being created in document
headers and a promise that inline scripts will be covered later, but
no explanation or specifics. Server side programming is not reported.
Again, formatting of material is presented earlier, and in more
detail, than more substantive commands like window.prompt and
parseInt. The material is definitely presented in a field independent
manner, which makes it easy to get started producing programs, but
quite difficult to understand what is actually going on. For example,
although the terms are used correctly, there is no discussion of the
differences between keywords, object, methods, and functions.
Therefore, novice readers may misunderstand, for example, the
assertion that keywords never have capital letters since built in
functions quite clearly do. Still, the text does not assume any prior
familiarity with programming, and touches on, albeit lightly, a number
of basic and important concepts. Chapters nine and ten deal with
control structures. (Occasionally the book disregards its own advice:
while earlier material stressed the importance of aligning indentation
for nested statements, the sample code for labeled breaks is very
confusing.) Functions are illustrated in chapter eleven. Once again
a limitation in prior material presents a problem: the ability of a
form to call a script as action is passed over too briefly. (There is
also a typo in the one reference to help in chapter fourteen: it's in
sixteen.) Chapter twelve takes a fairly standard look at arrays. The
talk of objects in chapter thirteen may be misleading: it is only
discussed, and not object-oriented programming as such. It should
also be noted that, despite the number of topics covered, this section
get such scant mention that one might as well say that they are not
covered at all. Internals of the language, and inconsistencies in
behaviour of variables and operators, are not presented either.
Readers will be able to start generating simple "active" content on
Web pages, but only at a level that could be duplicated by other
Dynamic HTML (aka DHTML) starts with Cascading Style Sheets (CSS) in
chapter fourteen. The notion of the Object Model, in fifteen, may be
confusing. It begins with a reference to changing a P element, and is
the first mention of a paragraph element having any attributes.
(Understanding of the point is not assisted by the very terse
introduction of the P element back in chapter three, and the
inconsistent use of the closing tag.) There is also no discussion of
the use of more basic technologies to accomplish, for example, timed
changing of pages. Chapter sixteen's promised Event Model really only
lists the events that can be used to trigger an action. Filters
likewise are a list of graphic effects in chapter seventeen. Chapters
eighteen to twenty describe some ActiveX controls for data, graphics,
and animation. A variety of multimedia (and other) programs are
suggested in chapter twenty one.
Chapter twenty two introduces VBScript very briefly, starting with the
functions, and then wandering into a confusing look at
object-orientation. Electronic commerce and security is covered
mostly in terms of press releases in chapter twenty three. Details
are few: the discussion of shopping carts doesn't mention cookies, the
secion on auctions doesn't mention fraud, and Authenticode is stated
to be reliable. Chapter twenty four gives detailed instructions on
two Microsoft Web servers, along with a brief mention of those others
that have the majority of the market. Database access is discussed in
chapter twenty five. The material on Active Server Pages (ASP), in
chapter twenty six, concentrates on example scripts, and does not
explain either the basic concepts or the security weaknesses of the
system. There is a rather slapdash introduction to Perl, and a brief
mention of CGI (Common Gateway Interface) in chapter twenty seven.
Chapter twenty eight looks at XML (Extensible Markup Language) but
even if you know SGML it doesn't explain much. Some samples of Java
servlets and cookies are included in chapter twenty nine.
The primary target audience for this book is college courses or self-
study for programmers. The questions, both self-review and other
exercises) are therefore fairly important to the work. Unfortunately,
the practice sessions are weak. The questions are, for the most part,
simplistic and serve primarily to determine whether the student has
read the material, not whether it has been understood at any depth.
Still, these may be useful as review, as are the collections of tips
and common errors at the end of each chapter.
It is also disappointing to find that the book has no command
reference for the programming sections, although there are summary
lists in various sections.
This book does touch on a number of Web programming topics, although
touch seems to be the operative word. Instructors would be well
advised to go through the material for themselves, first, and be
certain they have identified the traps and errors.
copyright Robert M. Slade, 2001 BKIWWWHP.RVW 20000420
====================== (quote inserted randomly by Pegasus Mailer)
rslade@... rslade@... slade@... p1@...
`*If* he finds out.' `If! If is good.' - Pain and Panic
http://victoria.tc.ca/techrev or http://sun.soci.niu.edu/~rslade