Computing Reviews

Modern JavaScript :develop and design
Ullman L., Peachpit Press,Berkeley, CA,2012. 624 pp.Type:Book
Date Reviewed: 01/25/13

The scripting language JavaScript is used to add dynamic content and interactivity to Web pages. In terms of number of projects written in JavaScript, it appears to be the most popular language according to GitHub. In spite of its popularity, JavaScript is one of the “most misunderstood programming language[s]” [1].

This book is a beginner’s guide to JavaScript. The book’s objective is stated in its introduction: “[to present] JavaScript in a way that you can easily understand, actually master, and appropriately utilize as a productive asset in today’s dynamic Web sites.”

The book is organized in three parts, containing a total of 15 chapters. Part 1, “Getting Started,” has three chapters. Chapter 1 is on JavaScript’s big picture and its history. Chapter 2 gives a gentle introduction on using JavaScript in a Web page. Chapter 3 reviews a selected list of text editors and integrated development environment (IDE) options to develop, design, debug, and test JavaScript code.

Part 2, “JavaScript Fundamentals,” contains the meat of the book and has eight chapters, 4 through 11. Chapters 4 and 5 are on simple variable types and control structures. Chapters 6, “Complex Variable Types,” and 7, “Creating Functions,” demonstrate key features of the JavaScript language, properly characterized as an object-based (or prototype-based) language that is significantly different than full-fledged object-oriented languages like Java. Chapter 8, “Event Handling,” describes how to capture events and respond to them by creating event listeners in JavaScript. Chapter 9, “JavaScript and the Browser,” presents a collection of topics related to the document object model (DOM) and the window object. Chapter 10, “Working with Forms,” deals with forms (the primary interface for user interactions) and includes topics on using the various form element types. Chapter 11, “Ajax,” covers the basics of Ajax and the handling of various data formats: plain text, Extensible Markup Language (XML), and JavaScript Object Notation (JSON).

Part 3, “Next Steps,” consists of chapters 12 through 15. Chapter 12, “Error Management,” gives an overview of exception handling using assertions, and also includes unit testing basics. Chapter 13, “Frameworks,” deals with JavaScript libraries that allow for the easier development of JavaScript-based applications, and gives an introduction to two of the most popular frameworks, jQuery and the Yahoo! User Interface (YUI). Chapter 14, “Advanced JavaScript,” expands the book’s coverage of objects with sections on namespaces, custom objects, prototypes, and type detection. Chapter 15, “PHP and JavaScript Together,” demonstrates the concepts presented in the book using a practical, real-world Web application, integrating both JavaScript and PHP.

The book’s 600-plus pages could probably be abridged to a more focused and ordered exposition. It’s style is both verbose and informal; this may be appropriate for total novices, but experienced programmers might find it too drawn-out and slow-paced. I found the book somewhat tedious to read for a few main reasons: the topics are wide-ranging; the treatment level varies from shallow at places to detailed in others; and there’s too much introductory-level material that is not directly relevant to acquiring JavaScript programming skills. The real substance does not begin until chapter 6, after reading more than a quarter of the book. On the other hand, the author did try to address advanced topics such as jQuery and Ajax, but the coverage is rather superficial, as in the last chapter on PHP and JavaScript.

I recommend this book for novice programmers and Web designers trying to learn JavaScript; they will find Part 1 and most of Part 2 quite helpful. I also recommend this book--specifically, Parts 2 and 3--for Web application programmers, who can use it as a resource and reference to brush up on their knowledge of JavaScript.


1)

Crockford,D. JavaScript: the world’s most misunderstood programming language http://www.crockford.com/javascript/javascript.html (01/24/2013).

Reviewer:  Yousri El Fattah Review #: CR140874 (1304-0279)

Reproduction in whole or in part without permission is prohibited.   Copyright 2024 ComputingReviews.com™
Terms of Use
| Privacy Policy