Saturday, February 16, 2008

Ant: The Definitive Guide, Second Edition


Soon after its launch, Ant succeeded in taking the Java world by storm, becoming the most widely used tool for building applications in Java environments. Like most popular technologies, Ant quickly went through a series of early revision cycles. With each new version, more functionality was added, and more complexity was introduced. Ant evolved from a simple-to-learn build tool into a full-fledged testing and deployment environment. Ant: The Definitive Guide has been reworked, revised and expanded upon to reflect this evolution. It documents the new ways that Ant is being applied, as well as the array of optional tasks that Ant supports. In fact, this new second edition covers everything about this extraordinary build management tool from downloading and installing, to using Ant to test code. Here are just of a few of the features you'll find detailed in this comprehensive, must-have guide:



  • Developing conditional builds, and handling error conditions

  • Automatically retrieving source code from version control systems

  • Using Ant with XML files

  • Using Ant with JavaServer Pages to build Web applications

  • Using Ant with Enterprise JavaBeans to build enterprise applications

Far exceeding its predecessor in terms of information and detail, Ant: The Definitive Guide, 2nd Edition is a must-have for Java developers unfamiliar with the latest advancements in Ant technology. With this book at your side, you'll soon be up to speed on the premiere tool for cross-platform development. Author Steve Holzner is an award-winning author who s been writing about Java topics since the language first appeared; his books have sold more than 1.5 million copies worldwide.


Download

Read More......

Google Maps Hacks

Want to find every pizza place within a 15-mile radius? Where the dog parks are in a new town? The most central meeting place for your class, club or group of friends? The cheapest gas stations on a day-to-day basis? The location of convicted sex offenders in an area to which you may be considering moving? The applications, serendipitous and serious, seem to be infinite, as developers find ever more creative ways to add to and customize the satellite images and underlying API of Google Maps.


Written by Schuyler Erle and Rich Gibson, authors of the popular Mapping Hacks, Google Maps Hacks shares dozens of tricks for combining the capabilities of Google Maps with your own datasets. Such diverse information as apartment listings, crime reporting or flight routes can be integrated with Google's satellite imagery in creative ways, to yield new and useful applications.


The authors begin with a complete introduction to the "standard" features of Google Maps. The adventure continues with 60 useful and interesting mapping projects that demonstrate ways developers have added their own features to the maps. After that's given you ideas of your own, you learn to apply the techniques and tools to add your own data to customize and manipulate Google Maps. Even Google seems to be tacitly blessing what might be seen as unauthorized use, but maybe they just know a good thing when they see one.


With the tricks and techniques you'll learn from Google Maps Hacks, you'll be able to adapt Google's satellite map feature to create interactive maps for personal and commercial applications for businesses ranging from real estate to package delivery to home services, transportation and more. Includes a foreword by Google Maps tech leads, Jens and Lars Rasmussen.


Download

Read More......

Google Advertising Tools


When it comes to advertising on the web, you just can't argue with the numbers. A $7 billion market today is expected to grow to $18.9 billion by 2010. Jupiter Research also estimates that search advertising will be a larger share of the market than display advertising by 2010. These phenomenal numbers are due largely to Google, which has changed the way the world publishes content - and advertises.


Google Advertising Tools from O'Reilly examines the business and technology behind making money with content and advertising on the web. This focused, easy-to-read guide shows you how to use Google's advertising services to make it happen. You'll find all the background information you need to work with Google AdSense, which automatically delivers text and image ads that are precisely targeted to your site, and Google AdWords, which lets you generate text ads that accompany specific search term results.


This book has specific and detailed sections on:



  • Turning your web site into a profit center with AdSense

  • Making sense of AdSense metrics

  • Driving traffic to your site

  • Optimizing sites for search engine placement

  • Working with AdWords campaigns, auctions, and reports

  • Managing campaigns dynamically using the AdWords APIs

Once you've read all four parts, you'll have a comprehensive picture of how advertising works on the web and how you can use the Google advertising programs to your advantage.


Download

Read More......

Essential PHP Security


Being highly flexible in building dynamic, database-driven web applications makes the PHP programming language one of the most popular web development tools in use today. It also works beautifully with other open source tools, such as the MySQL database and the Apache web server. However, as more web sites are developed in PHP, they become targets for malicious attackers, and developers need to prepare for the attacks.


Security is an issue that demands attention, given the growing frequency of attacks on web sites. Essential PHP Security explains the most common types of attacks and how to write code that isn't susceptible to them. By examining specific attacks and the techniques used to protect against them, you will have a deeper understanding and appreciation of the safeguards you are about to learn in this book.


In the much-needed (and highly-requested) Essential PHP Security, each chapter covers an aspect of a web application (such as form processing, database programming, session management, and authentication). Chapters describe potential attacks with examples and then explain techniques to help you prevent those attacks.


Topics covered include:



  • Preventing cross-site scripting (XSS) vulnerabilities

  • Protecting against SQL injection attacks

  • Complicating session hijacking attempts

You are in good hands with author Chris Shiflett, an internationally-recognized expert in the field of PHP security. Shiflett is also the founder and President of Brain Bulb, a PHP consultancy that offers a variety of services to clients around the world.


Download

Read More......

Understanding the Linux Kernel, Third Edition


In order to thoroughly understand what makes Linux tick and why it works so well on a wide variety of systems, you need to delve deep into the heart of the kernel. The kernel handles all interactions between the CPU and the external world, and determines which programs will share processor time, in what order. It manages limited memory so well that hundreds of processes can share the system efficiently, and expertly organizes data transfers so that the CPU isn't kept waiting any longer than necessary for the relatively slow disks.


The third edition of Understanding the Linux Kernel takes you on a guided tour of the most significant data structures, algorithms, and programming tricks used in the kernel. Probing beyond superficial features, the authors offer valuable insights to people who want to know how things really work inside their machine. Important Intel-specific features are discussed. Relevant segments of code are dissected line by line. But the book covers more than just the functioning of the code; it explains the theoretical underpinnings of why Linux does things the way it does.


This edition of the book covers Version 2.6, which has seen significant changes to nearly every kernel subsystem, particularly in the areas of memory management and block devices. The book focuses on the following topics:



  • Memory management, including file buffering, process swapping, and Direct memory Access (DMA)

  • The Virtual Filesystem layer and the Second and Third Extended Filesystems

  • Process creation and scheduling

  • Signals, interrupts, and the essential interfaces to device drivers

  • Timing

  • Synchronization within the kernel

  • Interprocess Communication (IPC)

  • Program execution

Understanding the Linux Kernel will acquaint you with all the inner workings of Linux, but it's more than just an academic exercise. You'll learn what conditions bring out Linux's best performance, and you'll see how it meets the challenge of providing good system response during process scheduling, file access, and memory management in a wide variety of environments. This book will help you make the most of your Linux system.


Download

Read More......

XML in a Nutshell, Third Edition


If you're a developer working with XML, you know there's a lot to know about XML, and the XML space is evolving almost moment by moment. But you don't need to commit every XML syntax, API, or XSLT transformation to memory; you only need to know where to find it. And if it's a detail that has to do with XML or its companion standards, you'll find it--clear, concise, useful, and well-organized--in the updated third edition of XML in a Nutshell. With XML in a Nutshell beside your keyboard, you'll be able to:



  • Quick-reference syntax rules and usage examples for the core XML technologies, including XML, DTDs, Xpath, XSLT, SAX, and DOM

  • Develop an understanding of well-formed XML, DTDs, namespaces, Unicode, and W3C XML Schema

  • Gain a working knowledge of key technologies used for narrative XML documents such as web pages, books, and articles technologies like XSLT, Xpath, Xlink, Xpointer, CSS, and XSL-FO

  • Build data-intensive XML applications

  • Understand the tools and APIs necessary to build data-intensive XML applications and process XML documents, including the event-based Simple API for XML (SAX2) and the tree-oriented Document Object Model (DOM)

This powerful new edition is the comprehensive XML reference. Serious users of XML will find coverage on just about everything they need, from fundamental syntax rules, to details of DTD and XML Schema creation, to XSLT transformations, to APIs used for processing XML documents. XML in a Nutshell also covers XML 1.1, as well as updates to SAX2 and DOM Level 3 coverage. If you need explanation of how a technology works, or just need to quickly find the precise syntax for a particular piece, XML in a Nutshell puts the information at your fingertips. Simply put, XML in a Nutshell is the critical, must-have reference for any XML developer.


Download

Read More......

Python & XML


If you are a Python programmer who wants to incorporate XML into your skill set, this is the book for you. Python has attracted a wide variety of developers, who use it either as glue to connect critical programming tasks together, or as a complete cross-platform application development language. Yet, because it is object-oriented and has powerful text manipulation abilities, Python is an ideal language for manipulating XML. Python & XML gives you a solid foundation for using these two languages together. Loaded with practical examples, this new volume highlights common application tasks, so that you can learn by doing. The book starts with the basics then quickly progresses to complex topics, like transforming XML with XSLT, querying XML with XPath, and working with XML dialects and validation. It also explores the more advanced issues: using Python with SOAP and distributed web services, and using Python to create scalable streams between distributed applications (like databases and web servers). The book provides effective practical applications, while referencing many of the tools involved in XML processing and Python, and highlights cross-platform issues along with tasks relevant to enterprise computing. You will find ample coverage of XML flow analysis and details on ways in which you can transport XML through your network. Whether you are using Python as an application language, or as an administrative or middleware scripting language, you are sure to benefit from this book. If you want to use Python to manipulate XML, this is your guide.


Download

Read More......

Learning XML, Second Edition



This second edition of the bestselling Learning XML provides web developers with a concise but grounded understanding of XML (the Extensible Markup Language) and its potential-- not just a whirlwind tour of XML. The author explains the important and relevant XML technologies and their capabilities clearly and succinctly with plenty of real-life projects and useful examples. He outlines the elements of markup--demystifying concepts such as attributes, entities, and namespaces--and provides enough depth and examples to get started. Learning XML is a reliable source for anyone who needs to know XML, but doesn't want to waste time wading through hundreds of web sites or 800 pages of bloated text. For writers producing XML documents, this book clarifies files and the process of creating them with the appropriate structure and format. Designers will learn what parts of XML are most helpful to their team and will get started on creating Document Type Definitions. For programmers, the book makes syntax and structures clear. Learning XML also discusses the stylesheets needed for viewing documents in the next generation of browsers, databases, and other devices. Learning XML illustrates the core XML concepts and language syntax, in addition to important related tools such as the CSS and XSL styling languages and the XLink and XPointer specifications for creating rich link structures. It includes information about three schema languages for validation: W3C Schema, Schematron, and RELAX-NG, which are gaining widespread support from people who need to validate documents but aren't satisfied with DTDs. Also new in this edition is a chapter on XSL-FO, a powerful formatting language for XML. If you need to wade through the acronym soup of XML and start to really use this powerful tool, Learning XML, will give you the roadmap you need.


Download

Read More......

Java RMI


Java RMI contains a wealth of experience in designing and implementing Java's Remote Method Invocation. If you're a novice reader, you will quickly be brought up to speed on why RMI is such a powerful yet easy to use tool for distributed programming, while experts can gain valuable experience for constructing their own enterprise and distributed systems. With Java RMI, you'll learn tips and tricks for making your RMI code excel. The book also provides strategies for working with serialization, threading, the RMI registry, sockets and socket factories, activation, dynamic class downloading, HTTP tunneling, distributed garbage collection, JNDI, and CORBA. In short, a treasure trove of valuable RMI knowledge packed into one book.


Download

Read More......

Java Performance Tuning, Second Edition


Performance has been an important issue for Java developers ever since the first version hit the streets. Over the years, Java performance has improved dramatically, but tuning is essential to get the best results, especially for J2EE applications. You can never have code that runs too fast. Java Peformance Tuning, 2nd edition provides a comprehensive and indispensable guide to eliminating all types of performance problems. Using many real-life examples to work through the tuning process in detail, JPT shows how tricks such as minimizing object creation and replacing strings with arrays can really pay off in improving your code's performance. Tuning J2EE applications bears many similarities to tuning J2SE apps, but important and specific considerations apply. For this reason, Java Performance Tuning, Second Edition includes four new chapters: a new chapter on J2EE application tuning in general followed by chapters on tuning JDBC, servlets and JSPs, and EJBs. Java Performance Tuning offers common-sense advice about what to tune and what to leave alone, emphasizing techniques that provide big performance gains with minimal code restructuring. It gives you crucial guidance that helps you tune without destroying your program's architecture. Blindly changing things in an effort to make a program run faster is a great way to create buggy, unmaintainable code. Java Performance Tuning teaches you to work efficiently and effectively, resulting in code that is robust, maintainable, and fast. Java Performance Tuning, Second Edition shows you how to:



  • Create a performance plan

  • Glean information about your program's behavior from profiling tools

  • Identify bottlenecks before tuning

  • Minimize the number of objects your program creates, particularly critical for J2EE applications

  • Optimize the use of strings

  • Avoid performance penalties from inefficient code

  • Improve the behavior of loops and switches

  • Optimize I/O behavior

  • Use appropriate algorithms for sorting and other common tasks

  • Use threads effectively

  • Optimize the performance of distributed systems

  • Speed up servlets and JSPs

  • Structure JDBC usage efficiently

  • Use effective design patterns to optimize EJB performance

Covers JDK 1.4


Download

Read More......

Java Network Programming, Third Edition


The new third edition of this highly regarded introduction to Java networking programming has been thoroughly revised to cover all of the 100+ significant updates to Java Developers Kit (JDK) 1.5. It is a clear, complete introduction to developing network programs (both applets and applications) using Java, covering everything from networking fundamentals to remote method invocation (RMI). Java Network Programming, 3rd Edition includes chapters on TCP and UDP sockets, multicasting protocol and content handlers, servlets, multithreaded network programming, I/O, HTML parsing and display, the Java Mail API, and the Java Secure Sockets Extension. There's also significant information on the New I/O API that was developed in large part because of the needs of network programmers. This invaluable book is a complete, single source guide to writing sophisticated network applications. Packed with useful examples, it is the essential resource for any serious Java developer


Download

Read More......

Enterprise JavaBeans, Third Edition


Enterprise JavaBeans was recently voted "Best Java Book" by the editors and readers of Java Developer's Journal. Readers of JavaPro named it the "Best Java Book for Experts." And Amazon.com included it in the Top Computer Books for 2000. Now the best only gets better! In the new 3rd edition, Enterprise JavaBeans has been completely revised and updated with a thorough introduction to the new 2.0 version of the EJB specification. Significantly different from the earlier version, the 2.0 specification introduces three dramatic improvements: A completely new version of container-managed persistence; local interfaces; and a totally new kind of bean called the "message driven bean." The new version of container-managed persistence (CMP) beans in 2.0 is more portable and robust than in the older 1.1 version. Most significant is the introduction of the relationship fields, which allow entity beans to declare relationships with each other as natural references. In order to make this huge leap in component relationships possible, EJB 2.0 had to redesign how entity beans are defined and interact. Our new 3rd edition examines this critical CMP model in detail. Local interfaces are thoroughly discussed as well. Local interfaces allow beans that are co-located to interact without the overhead of remote method calls. This improves the performance of beans considerably and complements the CMP relationship fields. Message driven beans are a new kind of enterprise bean based on asynchronous messaging and the Java Message service (JMS). Instead of responding to Java RMI calls, message driven beans process JMS messages sent by messaging clients. An entire chapter is devoted to message-driven beans and how to use them effectively. In addition, the 3rd edition contains an architecture overview, information on resource management and primary services, design strategies, and XML deployment descriptors.


Download

Read More......

Java Threads, Third Edition

Threads are essential to Java programming, but learning to use them effectively is a nontrivial task. This new edition of the classic Java Threads shows you how to take full advantage of Java's threading facilities and brings you up-to-date with the watershed changes in Java 2 Standard Edition version 5.0 (J2SE 5.0). It provides a thorough, step-by-step approach to threads programming. Java's threading system is simple relative to other threading systems. In earlier versions of Java, this simplicity came with tradeoffs: some of the advanced features in other threading systems were not available in Java. J2SE 5.0 changes all that: it provides a large number of new thread-related classes that make the task of writing multithreaded programs that much easier. You'll learn where to use threads to increase efficiency, how to use them effectively, and how to avoid common mistakes. This book discusses problems like deadlock, race conditions, and starvation in detail, helping you to write code without hidden bugs. Java Threads, Third Edition, has been thoroughly expanded and revised. It incorporates the concurrency utilities from java.util.concurrent throughout. New chapters cover thread performance, using threads with Swing, threads and Collection classes, thread pools, and threads and I/O (traditional, new, and interrupted). Developers who cannot yet deploy J2SE 5.0 can use thread utilities provided in the Appendix to achieve similar functionality with earlier versions of Java. Topics include:



  • Lock starvation and deadlock detection

  • Atomic classes and minimal synchronization (J2SE 5.0)

  • Interaction of Java threads with Swing, I/O, and Collection classes

  • Programmatically controlled locks and condition variables (J2SE 5.0)

  • Thread performance and security

  • Thread pools (J2SE 5.0)

  • Thread groups

  • Platform-specific thread scheduling

  • Task schedulers (J2SE 5.0)

  • Parallelizing loops for multiprocessor machines

In short, this new edition of Java Threads covers everything you need to know about threads, from the simplest animation program to the most complex applications. If you plan to do any serious work in Java, you will find this book invaluable. Scott Oaks is a senior software engineer for the Java Performance Engineering group at Sun Microsystems and the author of four books in the O'Reilly Java series. Formerly a senior systems engineer at Sun Microsystems, Henry Wong is an independent consultant working on various Java related projects.


Download

Read More......

Flash 8: The Missing Manual

Macromedia's Flash 8 is the world's premier program for adding animation to websites. And with the latest version, this popular program becomes more versatile, letting beginning webmasters and expert developers alike create sophisticated web content. But Flash isn't intuitive. And it doesn't come with a manual. Whether you want to learn the basics or unleash the program's true power, Flash 8: The Missing Manual is the ideal instructor.


This hands-on guide to today's hottest web design tool is aimed at nondevelopers, and it teaches you how to translate your ideas into great web content.


It begins with a solid primer on animation, which helps you get comfortable with the Flash interface. Once you have these basics under your belt, Flash 8: The Missing Manual moves on to advanced animations, including adding special effects and audio, video, and interactivity to your presentations. When you're really feeling steady, the book shows how to use a dollop of ActionScript to customize your content. It then teaches you how to publish your Flash creations for web surfers everywhere to enjoy. Along the way, the book shows you good design principles and helps you avoid elements that can distract or annoy an audience.


Author Emily Vander Veer has more than a dozen books to her credit, including titles on web design and scripting--most written for non-technical readers. Her background makes her the perfect author for a straightforward book on a complex subject. She takes Flash 8: The Missing Manual from the basics to the advanced, yet avoids a hasty jump into tough topics that can leave readers confused.


Not only will Flash 8: The Missing Manual help you turn a concept into unique, dynamic content, but it will continue to serve as a reference as you develop your website.


Download

Read More......

Windows Me Annoyances

In an ideal world, an operating system is a collection of software that handles a computer's "dirty work" invisibly, quickly, and most of all, painlessly. For many of us, however, Microsoft Windows exists outside this ideal world. We are annoyed by "personalized Menus" that keep changing, icons we don't use cluttering up our workspace, periodic crashes, unintelligible error messages, and inadequate documentation to help us figure it all out. Windows Me Annoyances has the insider information you need for overcoming Windows' many annoyances and limitations. Whether you're looking to finally solve a nagging problem, dramatically improve system performance, or customize the interface to better suit your work habits, the Windows Me Annoyances solution-oriented format makes finding information and implementing solutions easy and pain free. Thanks to the thorough and relevant documentation on the registry, Windows Scripting Host, and Windows' built-in networking capabilities, customizing and improving Windows Me is easier than ever. Based on the author's extremely popular Annoyances.org web sites, Windows Me Annoyances delivers an authoritative collection of techniques and tools for customizing Windows Me, including:



  • Several approaches and hidden tools for working with the Windows registry, the database of system- and application-specific configuration information

  • How to bypass Windows roadblocks such as the Home Networking and System Restore wizards, allowing you to take control of the processes quickly and painlessly

  • A tutorial and reference on automation with the Windows Scripting Host as a means of eliminating many Windows Me annoyances

  • Using third-party software and utilities to handle some of the more complex workarounds and customizations

  • Dealing with software that overwrites your file associations and other settings without warning

Windows Me Annoyances is the intermediate and advanced Windows user's best resource for turning Windows into the user-friendly, customizable interface it was meant to be, but doesn't always manage to be on its own.


Download

Read More......

Dynamic HTML: The Definitive Reference

If you are a Web content developer these days, you have a lot of information to keep track of. You need to stay current on the relevant Web specifications, like HTML, CSS, DOM, and ECMAScript. You also need to know how the latest Web browsers from Netscape and Microsoft actually implement these standards, since browser implementations of the standards are less than perfect. Right now, you're forced to keep multiple reference books open on your desk (or multiple browser windows open on your screen), just to develop a simple dynamic Web page that works properly under both Navigator and Internet Explorer. Dynamic HTML: The Definitive Reference changes all that. This book is an indispensable compendium for Web content developers. It contains everything you need to create functional cross-platform Web applications, including:



  • A complete reference for all of the HTML tags, CSS style attributes, browser document objects, and JavaScript objects supported by the various standards and the latest versions of Navigator and Internet Explorer. Browser compatibility is emphasized throughout; the reference pages clearly indicate browser support for every entity.

  • Handy cross-reference indexes that make it easy to find interrelated HTML tags, style attributes, and document objects.

  • An advanced introduction to creating dynamic Web content that addresses the cross-platform compromises inherent in Web page design today.

If you have some experience with basic Web page creation, but are new to the world of dynamic content, Dynamic HTML: The Definitive Reference will jump-start your development efforts. If you are an experienced Web programmer, you'll find the browser-compatibility information invaluable. This book is the only DHTML reference that a Web developer needs. Dynamic HTML: The Definitive Reference is designed to work in conjunction with HTML: The Definitive Guide and JavaScript: The Definitive Guide. HTML: The Definitive Guide teaches you about every element of HTML in detail, with explanations of how each element works and how it interacts with other elements, as well as numerous examples. JavaScript: The Definitive Guide provides a thorough description of the JavaScript language, complete with sophisticated examples that show you how to handle common Web application tasks. Together, these three books provide a complete library for Web content developers.


Download

Read More......

Mastering Enterprise JavaBeans


  • Includes more than 30 percent revised material and five new chapters, covering the new 2.1 features such as EJB Timer Service and JMS as well as the latest open source Java solutions

  • The book was developed as part of TheServerSide.com online EJB community, ensuring a built-in audience

  • Demonstrates how to build an EJB system, program with EJB, adopt best practices, and harness advanced EJB concepts and techniques, including transactions, persistence, clustering, integration, and performance optimization

  • Offers practical guidance on when not to use EJB and how to use simpler, less costly open source technologies in place of or in conjunction with EJB

Download

Read More......

Java 3D Programming


Java 3D Programming steps programmers through the important design and implementation phases of developing a successful Java 3D application. The book provides invaluable guidance on whether to use Java 3D, user interface design, geometry creation, scene manipulation and final optimizations. The book does not attempt to exhaustively cover the API or replicate the official documentation but rather serves as a roadmap to alert programmers of design issues and potential pitfalls.


The author distills 12 months of using the Java 3D API for commercial projects, as well as innumerable discussions on the Java 3D email list into a book that all Java 3D developers will appreciate. Experienced Java 3D developers will applaud an authoritative resource containing the state-of-the-art in techniques and workarounds, while novice Java 3D programmers will gain a fast-track into Java 3D development, avoiding the confusion, frustration and time wasted learning Java 3D techniques and terminology.


Java 3D Programming comes complete with a comprehensive set of programming examples to illustrate the techniques, features, workarounds and bug fixes contained in the main text.


Readers of this book would include students and postgraduate researchers developing visualization applications for academia. Moderately experienced in Java, some experience of 3D graphics, little or no experience of Java 3D is needed. R+D s/w engineers at commercial institutions. Experienced Java developers, experienced with OpenGL or VRML, little or no experience with Java 3D.


Download

Read More......

J2EE and XML Development

J2EE and XML Development


An Introduction level book



 


Java and XML have a great synergy, they marry together to create a "Write once, run anywhere" with a "platform independent data" paradigm. The nice thing about this is that you can keep the service interface relatively stable (e.g. use XML document instead of a specific data structure). But often what people overlook is, if you choose not to expose/distribute your data model directly (using classic data structure/class), then you have to expose/distribute the meta data of the data model (in XML world, this is called schema). Once the schema is changed (as you change in the data structure/class), you are pretty much facing the same problem as in the classic data model, the communicating parties have to know what is changed and change (the parsing rule at least) accordingly. Particularly, in the internal system, the benefit of using XML interface is dramatically reduced.

The authors of book are trying to push every data model in the interface by using XML document, even the data persistence, along with various X-technologies. That is a very "dangerous mind" if not done carefully, since XML is not a panacea in design and development. Even in modeling data, XML is not one size fit all. So when is it a good idea to use XML for your data? The following is that I quoted from Ted Neward's blog,

When your data is naturally hierarchical to begin with
When exchange with foreign platforms (which is to say, platforms not native to what you're currently authoring in) is important
When pre-existing tool support (XSLT, XML viewers, import/export utilities, etc) is of paramount importance

As you can see, there are some constraints before you decide to go with XML. Not mentioning the performance overhead. Though authors mentioned that designers need to justify the usage of XML by various criteria, but this is a book about promoting XML. :) Don't be trapped.

Overall, the book contains some useful information about various XML related technologies, particularly the chapter 5 "User Interface Development" (which is quite funny for a server side development book). And the information is too general or shallow to be useful in the real world development, you need to dig more into the technology by yourself from this introduction.

There are some examples showing how the concept could be working in the real world. But they are very rudimentary. Some specs the authors used (e.g. JAX-RPC) are already upgraded or changed. As a book on such popular topics regarding J2EE and XML, it sets the bar too low.


Good coverage on XML and Java but not J2EE


The book covers a wide range of XML technologies and its implementations in Java. Most of the examples/patterns discussed in the book apply equally well or can be easily adapted for non-J2EE Java application.
Some examples use depreciated APIs, some use APIs that no longer exist in latest packages. It's not a big problem and equivalents usually can be easily found. Just be aware how fast the technologies are evolving.


Download

Read More......

Design Patterns Explained


"One of the great things about the book is the way the authors explain concepts very simply using analogies rather than programming examples—this has been very inspiring for a product I'm working on: an audio-only introduction to OOP and software development."

—Bruce Eckel


"...I would expect that readers with a basic understanding of object-oriented programming and design would find this book useful, before approaching design patterns completely. Design Patterns Explained complements the existing design patterns texts and may perform a very useful role, fitting between introductory texts such as UML Distilled and the more advanced patterns books."

—James Noble

Leverage the quality and productivity benefits of patterns—without the complexity! Design Patterns Explained, Second Edition is the field's simplest, clearest, most practical introduction to patterns. Using dozens of updated Java examples, it shows programmers and architects exactly how to use patterns to design, develop, and deliver software far more effectively.

You'll start with a complete overview of the fundamental principles of patterns, and the role of object-oriented analysis and design in contemporary software development. Then, using easy-to-understand sample code, Alan Shalloway and James Trott illuminate dozens of today's most useful patterns: their underlying concepts, advantages, tradeoffs, implementation techniques, and pitfalls to avoid. Many patterns are accompanied by UML diagrams.

Building on their best-selling First Edition, Shalloway and Trott have thoroughly updated this book to reflect new software design trends, patterns, and implementation techniques. Reflecting extensive reader feedback, they have deepened and clarified coverage throughout, and reorganized content for even greater ease of understanding. New and revamped coverage in this edition includes

  • Better ways to start "thinking in patterns"
  • How design patterns can facilitate agile development using eXtreme Programming and other methods
  • How to use commonality and variability analysis to design application architectures
  • The key role of testing into a patterns-driven development process
  • How to use factories to instantiate and manage objects more effectively
  • The Object-Pool Pattern—a new pattern not identified by the "Gang of Four"
  • New study/practice questions at the end of every chapter

Gentle yet thorough, this book assumes no patterns experience whatsoever. It's the ideal "first book" on patterns, and a perfect complement to Gamma's classic Design Patterns. If you're a programmer or architect who wants the clearest possible understanding of design patterns—or if you've struggled to make them work for you—read this book.

Download

Read More......

reasoning, aptitude ,grammer ebook search engine

c,c++,java,sql ebook search engine