Showing posts with label software books. Show all posts
Showing posts with label software books. Show all posts

Modern C++ Design: Generic Programming and Design Patterns Applied Review

Modern C++ Design: Generic Programming and Design Patterns Applied
Average Reviews:

(More customer reviews)
Are you looking to buy Modern C++ Design: Generic Programming and Design Patterns Applied? Here is the right place to find the great deals. we can offer discounts of up to 90% on Modern C++ Design: Generic Programming and Design Patterns Applied. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Modern C++ Design: Generic Programming and Design Patterns Applied ReviewRead this book and you may feel you've fallen down the hole into some sort of C++ Alice-in-Wonderland:
"Isn't it nifty just how much you can do with functions... that not only don't do anything but don't even really exist at all?" p.36
The title is a bit presumptuous; a more accurate title would be "Template Metaprogramming Stunts", since this book is primarily about tricks you can play with C++'s template mechanism.
The author does also make a go at proposing a new concept of "policy-based class design" -- by which he means using templates intead of multiple inheritance to create combinatorial mixtures of behavior. This is interesting, but seems hard to apply beyond the cliches he considers (ex: smart pointers), so his argument reads like a well-intended but parochial graduate thesis, with dutiful gestures of respect to his mentors (ex: Scot Myers) and limited range of real-world application.
The real meat of the book is his template techniques, which are ingenious -- if perverse, when seen from the standpoint of someone else trying to read and extend your code, or diagnose its arcane compiler errors. If you've ever had to work with other people on software, you may find his glib view of compiler errors disappointing. In many cases he relies on compiler errors to signal something more complex and semantic than the mere error would suggest. (If you're programmed much C++ you've surely experienced 10-line long STL template errors with a very simple underlying cause that is hard to discern from the error message. Learning to suss out what these mean is much of the sweat-work of learning C++.) I think this is simply that he's coming from the perspective that the interworkings of the language and the compiler are fascinating, and worth being a primary focus of study. But from the perspective of someone just tried to get your work done in the problem domain at hand, you may resent this attitude.
This book is best approached if you think C++ is really neat. Wheter you love C++ for its roccoco intricacy, or just see it as an evolutionary leaf node language full of botched misfeatures, you will find much here to confirm your opinion. I don't mean to belittle this book. There is real insight here: the idea of computing on types instead of values (to store the results of template-based computations) is a nifty idea. But it's worth keeping an eye on what problems you are really trying to solve, and which ones you may be creating.
Some telling quotes:
"Unfortunately, type_info's useful capabilities are packaged in a way that makes them unnecessarily hard to exploit." p.38
"For a variety of reasons, C++ is a language that leads its users sometimes to say, 'These are the smartest five lines of code I ever wrote.' Maybe it is its semantic richness or the ever-exciting (and surprising?) way its features interact." p.51Modern C++ Design: Generic Programming and Design Patterns Applied OverviewIn Modern C++ Design, Andrei Alexandrescu opens new vistas for C++ programmers. Displaying extraordinary creativity and virtuosity, Alexandrescu offers a cutting-edge approach to software design that unites design patterns, generic programming, and C++, enabling programmers to achieve expressive, flexible, and highly reusable code. The book introduces the concept of generic components, reusable design templates that enable an easier and more seamless transition from design to application code, generate code that better expresses the original design intention, and support the reuse of design structures with minimal recoding. The author then shows how to apply this approach to recurring, real-world issues that C++ programmers face in their day-to-day activity. All code is available on the Web, along with Alexandrescu's downloadable Loki C++ library, which provides powerful out-of-the-box functionality for virtually any C++ project. For experienced C++ programmers who have at least some familiarity with the Standard Template Library (STL).

Want to learn more information about Modern C++ Design: Generic Programming and Design Patterns Applied?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Definitive XML Schema Review

Definitive XML Schema
Average Reviews:

(More customer reviews)
Are you looking to buy Definitive XML Schema? Here is the right place to find the great deals. we can offer discounts of up to 90% on Definitive XML Schema. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Definitive XML Schema ReviewThere are quite a few books about XML Schema in the market. There are quite a few freebie tutorials on the web too. These may serve your purpose well enough if you are merely trying to acquire an overview of the subject. But if you are like me, learning XML schema on the job and having trouble finding specific answers as you design a new schema or worse extend an exisiting schema, this book is certainly for you.
Namespaces are a fairly complex topic and they are handled very well in this textbook. Much of my confusion about how to mix and match the SimpleContent, SimpleType, ComplexContent and ComplexType tags vanished after I read the relevant chapters. The last chapter on reuse and extension is a gem and shows that Walmsley is not one of the rapidly proliferating clan of writers whose chapters are mere rephrasings of the manuals. She brings impressive credentials from the W3C and it shows in each page.
I was in the middle of extending a schema when I ran out and bought this book. I ran into some truly murky waters with deterministic and non deterministic schemas when my Microsoft XML parser threw up its hands and refused to validate my XML against my XSD because it was non deterministic. I could find few satisfactory solutions elsewhere. This book gave me all the answers I needed.
If you are a serious schema developer, buy this book, its well worth the money.Definitive XML Schema OverviewThe authoritative XML Schema reference and tutorial!Leverage the full power of XML Schema! In-depth coverage of the approved W3C Recommendation Schema design–practical and thorough Transition help for experienced DTD developers Authoritative! By Priscilla Walmsley–a member of the W3C XML Schema Working GroupTo leverage the full power of XML, companies need shared vocabularies to base their documents and scripts upon. XML Schema makes it possible to create those shared vocabularies-and Definitive XML Schema is the authoritative guide to the standard! Written by Priscilla Walmsley, a member of the W3C working group that created XML Schema, this book explains the W3C Recommendation with unprecedented insight and clarity–and introduces practical techniques for writing schemas to support any B2B, Web service, or content processing application. Coverage includes: How XML Schema provides a rigorous, complete standard for modeling XML document structure, content, and datatypes Working with schemas: Schema composition, instance validation, documentation, namespaces, and more XML Schema building blocks: elements, attributes, and types Advanced techniques: type derivation, model groups, substitution groups, identity constraints, redefinition, and much more An in-depth primer on effective schema design, including naming, document structure, and extensibility considerations Transition guidance for experienced DTD developersDefinitive XML Schema brings together expert guidance for schema design, superior approaches to schema development, and the most systematic XML Schema reference on the market. Whether you're a developer, architect, or content specialist, it's the only XML Schema resource you need!"XML Schema is an incredibly powerful-and complex-document schema language, with such new capabilities as strong typing, modularity, inheritance, and identity constraints. This book guides you through the complexity so you can confidently use that power for your own projects."–Charles F. Goldfarb--This text refers to the Kindle Edition edition.

Want to learn more information about Definitive XML Schema?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

C++ Coding Standards: 101 Rules, Guidelines, and Best Practices Review

C++ Coding Standards: 101 Rules, Guidelines, and Best Practices
Average Reviews:

(More customer reviews)
Are you looking to buy C++ Coding Standards: 101 Rules, Guidelines, and Best Practices? Here is the right place to find the great deals. we can offer discounts of up to 90% on C++ Coding Standards: 101 Rules, Guidelines, and Best Practices. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

C++ Coding Standards: 101 Rules, Guidelines, and Best Practices ReviewFor many programmers, the term "coding standard" generates a gut-level response. We all know that someone is going to be pushing the "one, true brace style" or the "proper" way to indent code. This subject is probably the best way to generate instantaneous rebellion among a group of programmers.
The first "standard" in "C++ Coding Standards" wipes all of that away with their first rule:
0. Don't sweat the small stuff. (Or: know what not to standardize.)
In one quick entry, Sutter and Alexandrescu sweep all of the indent-level, brace-placement, CamelCase/underscores holy wars into a single category and give a useful bit of advice: Be consistent. The authors point out that any professional programmer should be able to read and write in any of these styles. The differences are basically a matter of personal preference.
From this point on, we get to see a coding standard that is focused on "best practices" and proven techniques for improving code.
This is the only coding standard I've ever seen that would really help a group of programmers improve their work.C++ Coding Standards: 101 Rules, Guidelines, and Best Practices Overview
Consistent, high-quality coding standards improve software quality, reduce time-to-market, promote teamwork, eliminate time wasted on inconsequential matters, and simplify maintenance. Now, two of the world's most respected C++ experts distill the rich collective experience of the global C++ community into a set of coding standards that every developer and development team can understand and use as a basis for their own coding standards.

The authors cover virtually every facet of C++ programming: design and coding style, functions, operators, class design, inheritance, construction/destruction, copying, assignment, namespaces, modules, templates, genericity, exceptions, STL containers and algorithms, and more. Each standard is described concisely, with practical examples. From type definition to error handling, this book presents C++ best practices, including some that have only recently been identified and standardized-techniques you may not know even if you've used C++ for years. Along the way, you'll find answers to questions like

What's worth standardizing--and what isn't?

What are the best ways to code for scalability?

What are the elements of a rational error handling policy?

How (and why) do you avoid unnecessary initialization, cyclic, and definitional dependencies?

When (and how) should you use static and dynamic polymorphism together?

How do you practice "safe" overriding?

When should you provide a no-fail swap?

Why and how should you prevent exceptions from propagating across module boundaries?

Why shouldn't you write namespace declarations or directives in a header file?

Why should you use STL vector and string instead of arrays?

How do you choose the right STL search or sort algorithm?

What rules should you follow to ensure type-safe code?

Whether you're working alone or with others, C++ Coding Standards will help you write cleaner code--and write it faster, with fewer hassles and less frustration.


Want to learn more information about C++ Coding Standards: 101 Rules, Guidelines, and Best Practices?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...