How we did it:
For any feedback, any questions, any notes or just for chat - feel free to follow us on social networks
This title documents a convergence of programming techniques - generic programming, template metaprogramming, object-oriented programming and design patterns. It describes the C++ techniques used in generic programming and implements a number of industrial strength components.
David Vandevoorde, Nicolai M. Josuttis
With the greatly increased use of templates, there is a real need in the C++ community for this information. This book is the next C++ classic, acting as both a complete reference as well as a tutorial. It emphasizes the practical use of templates, and includes real-world examples.
Take Ruby development to the next level: leverage Ruby's full power to write more maintainable, manageable, and pleasing applications * *Master object-oriented Ruby techniques for building applications that are as easy to maintain and upgrade as they were to write! *Discover concrete solutions for common issues associated with poorly designed, hard-to-change Ruby applications. *Solves painful problems now facing many of the world's 1+ million Ruby developers, including programmers at all levels of experience. Years after the initial release of Ruby on Rails, the chickens are coming home to roost. Suddenly, anyone could write a web application -- and it seems like everyone did. The web is now awash in Ruby applications that were easy to write but are now virtually impossible to change, extend, or grow. This book solves that problem by teaching developers real-world object oriented design techniques specifically focused on Ruby. Writing for more than 1,000,000 Ruby developers at all levels of experience, Sandi Metz shares knowledge and concrete solutions for creating more extensible, more maintainable applications - and for fixing many of the poorly designed applications they must now manage. The first book to focus squarely on object-oriented Ruby application design, Practical Object Oriented Design in Ruby will guide developers to superior outcomes, even if their previous experience has been strictly limited to 'procedural' techniques. Metz distills a lifetime of conversations about object-oriented design and many years of whiteboard drawings into a set of specific Ruby practices and patterns that lead to more manageable and pleasing code. Novice Ruby programmers will find specific 'rules to live by'; intermediate Ruby programmers will find valuable principles they can flexibly interpret and apply; and advanced Ruby programmers will find a common language they can use to lead development and guide their colleagues.
Sebastian Bergmann, Stefan Priebsch
Using real case studies from well-known companies and their PHP experts, the book presents the planning, execution, and automation of tests for the different layers and tiers of a Web software architecture, the measuring of software quality by means of software metrics, as well as establishing successful development processes and methods such as continuous integration, all in real-world scenarios. Different opinions are offered on how problems are solved to give the readers not "one single truth" but provide different approaches to problems and views on issues. There are three types of case study chapters: Enterprise Case Studies (How does company X implement their QA process?)Digg, OXID eSales, studiVZ, swoodoo Open Source Project Case Studies (How does project Y implement their QA process?) Typo3, eZ Components, Symfony, Zend Framework Case Studies that explain the implementation of a certain process or usage of a tool: Unit Testing Bad Practices, Performance Testing, Testing Database Interaction, Continuous Integration with phpUnderControl Experts presenting the case studies include: Brian Shire, Facebook's lead for PHP Internals and a developer for the Alternative PHP Cache Michel Lively, Jr. Lead PHP Developer for Selling Source, LLC. Robert Lemke and Kaarsten Dambekalns, core developers of TYPO3 and FLOW3 Fabien Potencier, CEO of Sensio and lead developer of Symfony Matthew Weir O'Phinney, Project Lead for the Zend Framework
Teaching users new and more powerful ways of thinking about programs, this two-in-one text contains a tutorial--full of examples--that explains all the essential concepts of Lisp programming, plus an up-to-date summary of ANSI Common Lisp. Informative and fun, it gives users everything they need to start writing programs in Lisp and highlights innovative Lisp features.
Davide Di Gennaro
The book tries to be both an introduction and a reference to C++ template metaprogramming; TMP is presented in the book as a set of techniques that will bring a new style in C++ and make code exceptionally clear and efficient. The book deals with language aspects, design patterns, examples and applications (seen as case studies). Special emphasis is put on small reusable techniques that will improve the quality of daily work. Visit http: //acppmp.blogspot.com/ for book errata and updates
Ready to go to the next level with Rails? From examining the parts of Ruby that make this framework possible to deploying large Rails applications, Advanced Rails offers you an in-depth look at techniques for dealing with databases, security, performance, web services and much more. Chapters in this book help you understand not only the tricks and techniques used within the Rails framework itself, but also how to make use of ideas borrowed from other programming paradigms. Advanced Rails pays particular attention to building applications that scale -- whether "scale" means handling more users, or working with a bigger and more complex database. You'll find plenty of examples and code samples that explain: Aspects of Ruby that are often confusing or misunderstood Metaprogramming How to develop Rails plug-ins Different database management systems Advanced database features, including triggers, rules, and stored procedures How to connect to multiple databases When to use the Active Support library for generic, reusable functions Security principles for web application design, and security issues endemic to the Web When and when not to optimize performance Why version control and issue tracking systems are essential to any large or long-lived Rails project Advanced Rails also gives you a look at REST for developing web services, ways to incorporate and extend Rails, how to use internationalization, and many other topics. If you're just starting out with rails, or merely experimenting with the framework, this book is not for you. But if you want to improve your skills with Rails through advanced techniques, this book is essential.