How we did it:
For any feedback, any questions, any notes or just for chat - feel free to follow us on social networks
Michael C. Feathers
The average book on Agile software development describes a fairyland of greenfield projects, with wall-to-wall tests that run after every few edits, and clean & simple source code.
The average software project, in our industry, was written under some aspect of code-and-fix, and without automated unit tests. And we can't just throw this code away; it represents a significant effort debugging and maintaining. It contains many latent requirements decisions. Just as Agile processes are incremental, Agile adoption must be incremental too. No more throwing away code just because it looked at us funny.
Mike begins his book with a very diplomatic definition of "Legacy". I'l skip ahead to the undiplomatic version: Legacy code is code without unit tests.
Before cleaning that code up, and before adding new features and removing bugs, such code must be de-legacified. It needs unit tests.
To add unit tests, you must change the code. To change the code, you need unit tests to show how safe your change was.
The core of the book is a cookbook of recipes to conduct various careful attacks. Each presents a particular problem, and a relatively safe way to migrate the code towards tests.
Code undergoing this migration will begin to experience the benefits of unit tests, and these benefits will incrementally make new tests easier to write. These efforts will make aspects of a legacy codebase easy to change.
It's an unfortunate commentary on the state of our programming industry how much we need this book.
This volume is a handbook for enterprise system developers, guiding them through the intricacies and lessons learned in enterprise application development. It provides proven solutions to the everyday problems facing information systems developers.
Steven Sanderson has seen the ASP.NET MVC framework mature from the start, so his experience, combined with comprehensive coverage of all its features, including those in the official MVC development toolkit, offers the clearest understanding of how this exciting framework could improve your coding efficiency—and you'll gain invaluable awareness of security, deployment, and interoperability challenges. The ASP.NET MVC Framework is the evolution of Microsoft's ASP.NET web platform. It introduced 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. An integral benefit of this book is that the core Model–View–Controller architectural concepts are not simply explained or discussed in isolation, but demonstrated in action. You'll work through an extended tutorial to create a working e–commerce web application that combines ASP.NET MVC with the latest C# 3.0 language features and unit–testing best practices. By gaining this invaluable, practical experience, you can discover MVCs strengths and weaknesses for yourself—and put your best learned theory into practice.
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
ASP.NET 2.0 Programming: Problem Design Solution is aimed at describing, designing, and implementing a site much like the ones you’re probably working on or will be soon, while taking the opportunity to introduce and explain many of the new features that the new great ASP.NET 2.0 framework offers. Difficult problems are addressed head-on so you'll be ready for most of the problems you’ll typically face when writing a modern website, and have one or more solutions ready for them. Unlike many other ASP.NET books that show examples for individual pages or features, the example in this book is an integrated end-to-end site (written in C#). The entire book and site has been written specifically for ASP.NET 2.0, to use the ASP.NET 2.0 features wherever they make sense. The end-result is a website which features a layout with user-selectable themes, a membership system, a content management system for publishing and syndicating articles and photos, polls, mailing lists, forums, an e-commerce store with support for real-time credit card processing, homepage personalization, and localization. The book leads the reader through development of a site with: Account registration, personalization and theming News and events, organized into categories Opinion polls Newsletter Forums E-commerce store with shopping cart and order management Localization Administration of a site will be covered including: Full online back-end administrative section, to manage practically all data from an intuitive user interface Site deployment In building these site features, you'll learn these new ASP.NET 2.0 features: Master pages Theming Personalization & Web parts Membership & Profile modules Personalization The new server-side UI controls such as GridView, DetailsView, FormView, Wizard, MultiView, the new xxxDataSource and navigation controls, among others. The new compilation mode and deployment modes The new framework for instrumenting the site, as well as handling & logging exceptions The new ADO.NET 2.0 features (e.g. caching with database dependency) The new classes for easy distributed transactions Management This book is also available as part of the 5-book ASP.NET 2.0 Wrox Box (ISBN: 0-470-11757-5). This 5-book set includes: Professional ASP.NET 2.0 Special Edition (ISBN: 0-470-04178-1) ASP.NET 2.0 Website Programming: Problem - Design - Solution (ISBN: 0764584642 ) Professional ASP.NET 2.0 Security, Membership, and Role Management (ISBN: 0764596985) Professional ASP.NET 2.0 Server Control and Component Development (ISBN: 0471793507) ASP.NET 2.0 MVP Hacks and Tips (ISBN: 0764597663) CD-ROM with more than 1000 pages of bonus chapters from 15 other .NET 2.0 and SQL Server(TM) 2005 Wrox books DVD with 180-day trial version of Microsoft(r) Visual Studio(r) 2005 Professional Edition
Jamie Kurtz, Brian Wortman
The ASP.NET MVC Framework has always been a good platform on which to implement REST-based services, but the introduction of the ASP.NET Web API Framework raised the bar to a whole new level. Now in release version 2.1, the Web API Framework has evolved into a powerful and refreshingly usable platform. This concise book provides technical background and guidance that will enable you to best use the ASP.NET Web API 2 Framework to build world-class REST services. New content in this edition includes: • New capabilities in Web API 2 (currently version 2.1). • Support for partial updates, or PATCH. • API versioning. • Support for legacy SOAP-based operations. • How to handle non-resource APIs using REST • How to best expose relationships between resources • JSON Web Tokens, CORS, CSRF Get ready for authors Jamie Kurtz and Brian Wortman to take you from zero to REST service hero in no time at all. No prior experience with ASP.NET Web API is required; all Web API-related concepts are introduced from basic principles and developed to the point where you can use them in a production system. A good working knowledge of C# and the .NET Framework are the only prerequisites to best benefit from this book. What you’ll learn • Introduction to the REST architecture • How to design a REST API • New capabilities in ASP.NET Web API 2 • Understanding ASP.NET Web API controller activation • Automatic lifetime management for database connections and transactions • Using NHibernate with ASP.NET Web API • Easily secure a REST service, using standards-based authentication and authorization and JSON Web Tokens • Supporting legacy SOAP callers with ASP.NET Web API • How to expose relationships between resources • Supporting partial resource updates under REST • Web API versioning Who this book is for Intermediate level developers in .NET, REST, C# Table of Contents1. ASP.NET as a Service Framework 2. What is RESTful? 3. Designing Our Sample REST API 4. Building the Environment and Creating the Source Tree 5. Controllers, Dependencies, and Managing the Database Unit of Work 6. Securing the Service 7. Dealing with Relationships, Partial Updates, and Other Complexities 8. Leveraging new Web API Features to Simplify Your Code and Support Legacy Systems 9. Putting It All Together
The "father" of Visual Basic, Cooper, presents a methodology of user interface design that he has distilled from many years of creating award-winning personal computer software. This book does not focus on code; instead it discusses highly technical topics in clear English. Readers will find his ideas pertinent, thought-provoking, and perceptive.
Stephen Walther, Kevin Hoffman, Nate Dudek
The most comprehensive and trusted resource on ASP.NET, now fully updated for version 4.0 * *Covers the new features of ASP.NET 4.0, including Silverlight, MVC, and the Entity Framework. *Hundreds of code samples that demonstrate nearly every aspect of ASP.NET 4.0. *Stephen Walther is one of the most revered people in the ASP.NET community. *Based upon the author's inside knowledge as part of the ASP.NET team, as well as his prior years of real-world experience. Following in the tradition of the earlier ASP.NET Unleashed books, ASP.NET 4.0 Unleashed is the one and only indispensable book for building ASP.NET websites. The ASP.NET framework is huge. The size and richness of the framework requires and deserves a comprehensive book on the features of ASP.NET 4.0. This book will contain hundreds of code samples and indepth tutorials on nearly every aspect of the ASP.NET 4.0 framework. It includes thorough coverage of eagerly awaited new features such as MVC and the Entity Framework. The author, Stephen Walther, is perfectly qualified to write this book. He works as a Program Manager on the Microsoft ASP.NET team, giving him an intimate and inside knowledge of ASP.NET. Over the previous 8 years before re-joining Microsoft, Stephen provided ASP.NET training and consulting for companies and organizations across the US, so he knows the topics that are most relevant to professional ASP.NET developers. Finally, Stephen is a well-known member of the ASP.NET community. He is a Microsoft Software Legend, a frequent speaker for INETA, and a frequent speaker at conferences such as TechEd and ASP.NET Connections.
Christian Nagel, Bill Evjen, Jay Glynn, Karli Watson
A guide to the C# programming language in .NET architecture covers such topics as objects and types, inheritance, operators, strings, expressions, Visual Studio 2005, assemblies, .NET security, and presentation.
Simone Chiaretta, Keyvan Nayyeri
ASP.NET MVC (Model View Framework) allows you to use ready-to-use MVC code so you can develop Web applications faster. This book?s cut-to-the-chase approach gets you up to speed on the new ASP.NET MVC without getting bogging you down in learning or re-learning ASP.NET itself. You?ll receive straightforward instruction on concepts, backed by real-world case studies and examples that offer practical solutions. Topics include test-driven development and unit testing, the principles of the MVC pattern, how to implement it, how to move from traditional ASP.NET Webforms to ASP.NET MVC, and much more.