A list of book releases compiled by Dr. Dobb’s to keep you up-to-date on software development tools and techniques.
Mercurial: The Definitive Guide
By Bryan O'Sullivan
Mercurial is an easy system to learn when it comes to distributed revision control--ideal whether you're a lone programmer working on a small project, or part of huge team dealing with thousands of files. Mercurial permits a countless variety of development and collaboration methods, and this book offers several concrete suggestions to get you started. The author takes you step by step through ways to track, merge, and manage both open source and commercial software projects with Mercurial, using Windows, Mac OS X, Linux, Solaris, and other systems; helping you:
- Learn the basics of working with a repository, changesets, and revisions
- Merge changes from separate repositories
- Set up Mercurial to work with files on a daily basis, including which ones to track
- Get examples and tools for setting up various workflow models with Mercurial
- Manage a project that's making progress on multiple fronts at once
- Find and fix mistakes by isolating problem sources
- Use hooks to perform actions automatically in response to repository events
- Customize the output of Mercurial.
Author Bryan O'Sullivan said that his desire to write this book came from a lack of published literature about the subject. "A few years ago, when I wanted to explain why I believed that distributed revision control was important, the field was so new that there was almost no published literature to refer people to...Although at that time I was working on the internals of Mercurial itself, I switched to writing this book because that seemed like the most effective way to help the software to reach a wide audience, along with the idea that revision control ought to be distributed in nature."
JavaFX: Developing Rich Internet Applications
By Jim Clarke, Jim Connors, and Eric Bruno
This book shows readers how to quickly and productively create impressive user interfaces. The book begins with the basics of JavaFX, including how to get started, the graphic designer's role, and the basic language. It then moves on to cover more advanced features, including user interface design, special effects, animation, multimedia, and browser display. The last two chapters cover JavaFX code recipes and a complete Sudoku application.
Elements of Programming
By Alexander Stepanov and Paul McJones
This book provides a different understanding of programming than is presented elsewhere. Its major premise is that practical programming, like other areas of science and engineering, must be based on a solid mathematical foundation. The book shows that algorithms implemented in a real programming language, such as C++, can operate in the most general mathematical setting. For example, the fast exponentiation algorithm is defined to work with any associative operation. Using abstract algorithms leads to efficient, reliable, secure, and economical software. This is not an easy book. Nor is it a compilation of tips and tricks for incremental improvements in your programming skills. The book’s value is more fundamental and, ultimately, more critical for insight into programming. To benefit fully, you will need to work through it from beginning to end, reading the code, proving the lemmas, and doing the exercises. When finished, you will see how the application of the deductive method to your programs assures that your system’s software components will work together and behave as they must. The book presents a number of algorithms and requirements for types on which they are defined. The code for these descriptions—also available on the Web—is written in a small subset of C++ meant to be accessible to any experienced programmer. This subset is defined in a special language appendix coauthored by Sean Parent and Bjarne Stroustrup.