How we did it:
For any feedback, any questions, any notes or just for chat - feel free to follow us on social networks
Ralph Johnson, Erich Gamma, John Vlissides, Richard Helm
Capturing a wealth of experience about the design of object-oriented software, four top-notch designers present a catalog of simple and succinct solutions to commonly occurring design problems. Previously undocumented, these 23 patterns allow designers to create more flexible, elegant, and ultimately reusable designs without having to rediscover the design solutions themselves. The authors begin by describing what patterns are and how they can help you design object-oriented software. They then go on to systematically name, explain, evaluate, and catalog recurring designs in object-oriented systems. With Design Patterns as your guide, you will learn how these important patterns fit into the software development process, and how you can leverage them to solve your own design problems most efficiently. Each pattern describes the circumstances in which it is applicable, when it can be applied in view of other design constraints, and the consequences and trade-offs of using the pattern within a larger design. All patterns are compiled from real systems and are based on real-world examples. Each pattern also includes code that demonstrates how it may be implemented in object-oriented programming languages like C++ or Smalltalk. 0201633612B07092001
Martin Fowler, Kent Beck
Users can dramatically improve the design, performance, and manageability of object-oriented code without altering its interfaces or behavior. "Refactoring" shows users exactly how to spot the best opportunities for refactoring and exactly how to do it, step by step.
"This is Effective C++ volume three - it's really that good." - Herb Sutter, independent consultant and secretary of the ISO/ANSI C++ standards committee "There are very few books which all C++ programmers must have. Add Effective STL to that list." - Thomas Becker, Senior Software Engineer, Zephyr Associates, Inc., and columnist, C/C++ Users Journal C++'s Standard Template Library is revolutionary, but learning to use it well has always been a challenge. Until now. In this book, best-selling author Scott Meyers ( Effective C++ , and More Effective C++ ) reveals the critical rules of thumb employed by the experts - the things they almost always do or almost always avoid doing - to get the most out of the library. Other books describe what's in the STL. Effective STL shows you how to use it. Each of the book's 50 guidelines is backed by Meyers' legendary analysis and incisive examples, so you'll learn not only what to do, but also when to do it - and why. Highlights of Effective STL include: Advice on choosing among standard STL containers (like vector and list), nonstandard STL containers (like hash_set and hash_map), and non-STL containers (like bitset). Techniques to maximize the efficiency of the STL and the programs that use it. Insights into the behavior of iterators, function objects, and allocators, including things you should not do. Guidance for the proper use of algorithms and member functions whose names are the same (e.g., find), but whose actions differ in subtle (but important) ways. Discussions of potential portability problems, including straightforward ways to avoid them. Like Meyers' previous books, Effective STL is filled with proven wisdom that comes only from experience. Its clear, concise, penetrating style makes it an essential resource for every STL programmer.
Kathy Sierra, Bert Bates
An interactive guide to the fundamentals of the Java programming language utilizes icons, cartoons, and numerous other visual aids to introduce the features and functions of Java and to teach the principles of designing and writing Java programs.
Author Steven Sanderson has seen the ASP.NET MVC Framework mature from the start, so his experience, combined with comprehensive coverage of all the new features, including those in the official MVC development toolkit, offers the clearest understanding of how this exciting new framework can improve your coding efficiency. With this book, you’ll gain invaluable up-to-date knowledge of security, deployment, and interoperability challenges. The ASP.NET MVC 2 Framework introduces a radical high-productivity programming model that promotes cleaner code architecture, test-driven development, and powerful extensibility, combined with all the benefits of ASP.NET 3.5. In this book, the core model-view-controller (MVC) architectural concepts are not simply explained or discussed in isolation, but are demonstrated in action. You’ll work through an extended tutorial to create a working e-commerce web application that combines ASP.NET MVC with C# language features and unit-testing best practices. By gaining this invaluable, practical experience, you’ll discover MVC’s strengths and weaknesses for yourself—and put your best-learned theory into practice. What you’ll learn Gain a solid architectural background to ASP.NET MVC 2, including MVC and REST concepts. Explore the entire ASP.NET MVC Framework and take a detailed look at the official MVC development toolkit. See how it works with test-driven development in action. Capitalize on your existing knowledge quickly and easily through translation and comparison of features in classic ASP.NET to those in ASP.NET MVC. Learn about the latest security and deployment issues, including IIS 7.0. Who this book is for This book is for web developers with a basic knowledge of ASP.NET and C# who want (or need) to start using the ASP.NET MVC 2 Framework. Table of Contents What’s the Big Idea? Your First ASP.NET MVC Application Prerequisites SportsStore: A Real Application SportsStore: Navigation and Shopping Cart SportsStore: Administration and Final Enhancements Overview of ASP.NET MVC Projects URLs and Routing Controllers and Actions Controller Extensibility Views Models and Data Entry User Interface Techniques Ajax and Client Scripting Security and Vulnerability Deployment ASP.NET Platform Features Upgrading and Combining ASP.NET Technologies
Antonio Cisternino, Adam Granicz, Don Syme
In this book, the world's foremost experts in F# show you how to program in F# the way they do. Written by F#'s inventor and two major contributors to its development, Expert F# is the authoritative, comprehensive, and in-depth guide to the language and its use. Designed to help others become experts, the first part of the book quickly yet carefully describes the F# language. The second part then carefully shows how to elegantly use F# for a wide variety of practical programming tasks. This comprehensive reference of F# concepts, syntax, and features offers a treasury of expert techniques.
“Brian Noyes’ writing style easily captures your attention as he elaborates on all aspects of data binding in his book. He has a refreshingly clear and crisp delivery as he starts each chapter with a simple tour of each topic, and then leads you into practical concerns for sound practices and extensibility opportunities. Most importantly, as Brian explains approaches to data-binding architecture, patterns of usage, the value of data sets, binding controls and the rest, he always describes how he reaches his recommendations on the topic. This book is perfect for newcomers to .NET 2.0, but also for those that have some experience. Anyone who cares about data in their applications (okay, that should be almost everyone) is guaranteed to learn something new and useful by reading Brian’s book.” —Michele Leroux Bustamante, IDesign chief architect, Microsoft regional director, and MVP “Brian has saved me a lot of time. I’m writing The Hitchhiker’s Guide to Visual Studio and SQL Server 2005 (7th Edition) and I’m not going to have to cover data binding nearly as deeply because Brian has done it for me. His book gets right to the meat of the subject and makes data binding look easy. I was also pleased to see that the book focuses on the misunderstood and under-applied Windows Forms architecture. It’s a must-read for anyone trying to make their application more interactive and to leverage the new Visual Studio 2005 technology. I’m planning to point my readers to this resource when they need an in-depth treatment of data binding.” —William Vaughn, president, Beta V Corporation “Data binding has finally come of age in Windows applications. Back in the Visual Studio 6.0 days, I ignored data binding completely and wrote my own repetitive code to encapsulate my business logic. With Visual Studio 2005, we finally have a robust and compelling data-binding technology. To ignore it today would make you inefficient and put you behind the curve. Brian delivers a clear and concise discussion of a core topic of development for Windows today. A combination of an easy-to-follow conversational yet technical tone, excellent examples, and solid explanations make this a must-read for any developer writing for Windows or learning to write for Windows.” —Stephen Forte, chief technical officer, Corzen Inc. “This book provides a clear, readable, and in-depth treatment of data binding, with detailed discussions of best practices in the presentation and use of data. Brian communicates his knowledge on the mechanics of data binding to give the low-level understanding that makes all the difference when building sophisticated applications and troubleshooting difficult problems. Effective data binding can enormously reduce the amount of code in your applications and will allow new levels of sophistication in your development. Read this book.” —Jonathan Cogley, chief executive officer, Thycotic, ASPInsider, and C# MVP “The .NET Framework 2.0, Visual Studio .NET 2005, and Windows Forms 2.0 incorporate the most powerful data-binding platform yet, and absolutely need a book like this to expose it. Brian’s extensive data-binding knowledge and experience shine through as he comprehensively explores its many facets, starting with the fundamentals before tackling a wide variety of real-world scenarios. I’ve always thought a data-binding book was necessary, and I’m glad Brian found the time to write his.” —Michael Weinhardt, freelance author and application developer “ Data Binding with Windows Forms 2.0 earns a gold star and a prized place in my development book library. Brian is an exceptional teacher of technology, best practices, and technique. He continues to educate at every presentation I attend; his book carries that quality to paper. I found this book to be highly informative and full of all the important steps and examples necessary to learn this technology. In this book, Brian demonstrates a firm grasp on the concepts and I really enjoy his efforts to promote best practices at every chance. Definitively a cover-to-cover read.” —Randy Hayes, president, Expert Network Solutions, Inc. “Brian’s direct and well-organized presentation makes this much misunderstood topic finally understandable.” —Sahil Malik, author of Pro ADO.NET 2.0 and C# MVP Data binding is the most important part of many business applications—and one of the most difficult things to understand. Data Binding with Windows Forms 2.0 is the first book to focus on this crucial area of development. It will quickly get you up to speed on binding data sources to Windows Forms components. The book contains clear examples in C# that work with SQL Server 2000 and SQL Server 2005. Visual Basic .NET examples are available on the book’s Web site. Brian Noyes, leading consultant and speaker on .NET programming, teaches you both the theory and practice of data binding and provides numerous samples ready to run in Visual Studio 2005. From his in-depth coverage, you’ll learn how to Use Visual Studio 2005 to generate a data-bound application from a database Use the new Visual Studio 2005 typed data set designer, and how and why to use typed data sets and typed data adapters Perform simple and complex binding of data to controls, and how to use the .NET 2.0 BindingSource Use the Binding object for simple binding with automatic formatting, and how to handle binding events Generate bound controls with the Visual Studio Designer, and how to use Data Sources Present data with the new DataGridView control, and how to implement advanced features of the DataGridView Implement custom data-bound controls in Windows Forms Create custom business objects and collections that are suitable for use in data binding Implement validation and error handling at the Windows Forms and data-binding levels Implement data binding with ASP.NET 2.0 and the upcoming Windows Presentation Foundation (Avalon) technologies
Kathy Sierra, Bert Bates
Get the book that shows you not only what to study, but how to study. The only classroom-based integrated study system for professional certification gives you complete coverage of all objectives for the Sun Certified Programmer for Java 5 exam, hundreds of practice exam questions, and hands-on exercises. The CD-ROM features full practice exam software plus an adaptive test engine.
The power and elegance of generic types have long been acknowledged. Generics allow developers to parameterize data types much like you would parameterize a method. This brings a new dimension of reusability to your types without compromising expressiveness, type–safety, or efficiency. Now .NET generics makes this power available to all .NET developers. By introducing generic concepts directly into the Common Language Runtime (CLR), Microsoft has also created the first language–independent generics implementation. The result is a solution that allows generic types to be leveraged by all the languages of the .NET platform. This book explores all aspects of the .NET generics implementation, covering everything from fundamental generic concepts, to the elements of generic syntax, to a broader view of how and when you might apply generics. It digs into the details associated with creating and consuming your own generic classes, structures, methods, delegates, and interfaces, examining all the nuances associated with leveraging each of these language constructs. The book also looks at guidelines for working with generic types, the performance gains achieved with generics, the new generic container libraries (BCL and third party), and key aspects of the underlying .NET implementation. For those transitioning from C++, the book provides an in–depth look at the similarities and differences between templates and.NET generics. It also explores the syntactic variations associated with using generics with each of the .NET languages, including C#, Visual Basic, J#, and C++.
Timothy M. O'Brien
This collection provides expert tips for using the utilities of the Java-based Jakarta Commons open source project. You don't have to be an expert, the book's solution-based format contains code examples for a wide variety of web, XML, network, testing, and application projects.
Jia (software engineering, DePaul University) helps readers develop skills in designing software, and especially in writing object- oriented programs using Java. The text provides broad coverage of object-oriented technology, including object-oriented modeling using the Unified Modeling Language (UML), object-oriented design using design patterns, and object-oriented programming using Java. This second edition offers expanded coverage of design patterns, enhanced material on UML, and a new introduction to the iterative software development process made popular by extreme programming. Learning features include chapter summaries, exercises, and projects.