|
Real World Software Architecture is dedicated to providing information and experiences from the field of .NET Software Architecture.
| This book is a smorgasbord of .NET 4.0 goodies. This book does an excellent job of pulling all the new features in .NET 4.0 into one place. It covers the topics in enough detail that you leave the topic understanding what it is about and in many cases with references to find out more. I am currently working as the SME on some of the Microsoft Learning tracks for Visual Studio 2010, so I have had to dig deep into Visual Studio 2010. I wish I would have had this book at the beginning of the project. I have not found anything missing as far as new features go. Below is the table of contents from the book. Chapter 1: Introduction Chapter 2: Visual Studio IDE and MEF Chapter 3: Language and Dynamic Changes Chapter 4: CLR and BCL Changes Chapter 5: Parallelization and Threading Enhancements Chapter 6: Windows Workflow Foundation 4 Chapter 7: Windows Communication Foundation Chapter 8: Entity Framework Chapter 9: WCF Data Services Chapter 10: ASPNET Chapter 11: Microsoft AJAX Library Chapter 12: jQuery Chapter 13: ASPNET MVC Chapter 14: Silverlight Introduction Chapter 15: WPF 4.0 and Silverlight 3.0 Chapter 16: Windows Azure The biggest ding to this book is the typos. Holy smokes, editors should not drink on the job. I won’t ding the book the book for that. Another ding is that although they talk about code samples, I cannot find any. They give you the database they used throughout the book, but I have found no use for it without the code to attach to it. All in all I recommend this book to anyone interested in getting up to speed quickly with the new features in .NET 4.0. It is nice to have them all in one place. It is also nice to have them in a book that does not cover every feature. For example an ASP.NET 4.0 book will have every feature in the 4.0 release along with all the past releases. The book is definitely worth the purchase. |
| This book is great. It’s no nonsense approach to covering the C# 4.0 language is like a breath of fresh air. It is clean, to the point, and thorough. It makes finding a topic, and learning it, or getting a refresher, a very fast process. This new version includes new chapters on parallel programming (including PLINQ), and dynamic programming, and new sections on code contracts and COM interoperability. The authors have a great writing style which makes the book a very enjoyable read. You can read this cover to cover, or use it as a very handy reference. You won’t find any case studies, or made up scenarios, to help the authors describe the technology. They stick to writing about the technology, which is nice. One of my favorite features of the book is the way the authors do their diagramming. They include a lot of diagrams that give a visual representation of the feature they are describing. The diagrams really help with getting a quick understanding of the overall picture of the topic. The authors also demonstrate with code that is always easy to understand and within the scope of the topic at hand. You don’t have 2 pages of code with 3 lines highlighted. Another part of this book I love is the way the authors deliver the code samples using LINQPad. I own the full auto completion version of LINQPad and it rocks. I have been using it since its first release and it has become my favorite tool when working with databases. My only complaint about the book is the construction. The gluing job they did is horrible. It has big clumps of glue embedded in the pages which cause the binder to really bend. It will probably fall apart within a month of heavy use. I won’t ding the book for that. It is a publisher issue, not an author issue. All in all I highly recommend this book. It belongs on the shelf of any serious developer. |
| The authors of this book represent an all-star lineup of the best of the best in the Software Product Line Engineering (SPLE) field. They do a great job of providing a snapshot of the current SPLE best practices in the industry today. Each chapter is written by a different author, or team of authors. This leads to some different perspectives on SPLE. This works for this type of book, but it does provide a conflict in the points of view taken in certain chapters. If you have experience with SPLE this shouldn’t be an issue because you will already understand what those different views are, but for someone with little or no experience this could cause confusion. I found none of the points of view wrong, just different. Different domains require, and provide for, different approaches. I recommend this book to those that are experienced as a guide to the evolution of the topics covered, and to the beginner I would use it as a road map of topics you should learn more about in order to get the full understanding behind each chapter. Each chapter provides an excellent reference section. I would suggest also reading the following books. They provide more information about the material covered in some of the chapters. Software Product Lines: Practices and Patterns Designing Software Product Lines with UML: From Use Cases to Pattern-Based Software Architectures The table of contents is below. ORGANIZATIONAL AND MANAGERIAL ISSUES Software Product Line Engineering: Overview and Future Directions A Roadmap for Software Product Line Adoption New Methods behind a New Generation of Software Product Line Successes Evaluating Product Family Development Using the Balanced Scorecard Approach Product Management for Software Product Lines: An Overview METHODOLOGIES AND PROCESSES A Systems Product Line Approach Adoption of Software Product Lines to Develop Autonomic Pervasive Systems Development of a Software Product Line for Validation Environments Building a Family of Compilers Formal Verification and Software Product Lines TECHNICAL ISSUES Multiple-View Requirements Models for Software Product Line Engineering Managing Flexibility and Variability: A Road to Competitive Advantage Feature Oriented Analysis and Design for Dynamically Reconfigurable Product Lines Separating Application and Security Concerns in Modeling Software Product Lines Architecture as Language INDUSTRY EXPERIENCES AND CASE STUDIES Management and Financial Controls of a Software Product Line Adoption Efficient Scoping with CaVE: A Case Study Model-Driven, Aspect-Oriented Product Line Engineering: An Industrial Case Study Evaluation of Design Options in Embedded Automotive Product Lines Product Line in the Business Process Management Domain I found the material covered to all be of great value. There are a lot of great case studies through out the book beyond the section of chapters that cover case studies. They help to take the practices covered from theory to reality. My biggest pain point with this book is the index. It is just down right sad. I am not going to ding the book for something technical the editors missed. I have been very tempted to grab an electronic version to make up for its weakness', although I have not seen one for sale. All in all if you are involved with Software Product Line Engineering at all, this is a mandatory read. Software Product Line Engineering is an evolving field and this book brings us up to date on the evolution of the field. |
| Software Process Engineering |
Product Line Engineering |
Software Architecture |
SOA: Service Oriented Architecture |
Component Development |
Coding Guidelines |
Frameworks |
Patterns |
OOAD |
Brownfield Development |
Scalability |
Security |
.NET 4.0 and VSTS 2010 |
.NET 3.5 and VSTS 2008 |
ASP.NET, AJAX, MVC, and Silverlight |
SQL Server and T-SQL |
Shiny Turds Books that do not Cut the Mustard *-Do not Buy-* |
.NET 3.0 Platform |
| My wife and I recently took a trip to Costa Rica. Before I continue I would like to sidebar... If you are planning a trip to Costa Rica, check out the blog she wrote on it, Tips when Traveling to Arenal Costa Rica. I think it should have been titled "Every single thing you need to know when Traveling to Arenal Costa Rica" We flew on an airline that only allowed a single carry on bag, which had to be less than 22 lbs. That meant my laptop went, or our camera equipment went. With no TV in the first hotel for 4 days, we decided to look for a Netbook. After doing an average amount of research, I decide to go with the ACER Aspire 1410. Specs below: Product Features and Technical Details Product Features * Box Contents - Acer AS1410 Notebook, 6-Cell Lithium-Ion Battery (up to 6-hours), AC Power Adapter, AC Power Cord; Software Bundle - Windows 7 Home Premium 64-bit, Microsoft Works with Office Home and Student 2007 60-day Trial, McAfee Internet Security Suite 60-day Subscription, 1-Year International Travelers Limited Warranty * Intel Celeron 1.2GHz SU2300 Processor * 1M L2 Cache, 800MHz Front Bus Speed * 2048MB DDR2 Dual-Channel 667MHz RAM (4GB Max.) * 160GB (5400 RPM) SATA Hard Drive Processor, Memory, and Motherboard * Hardware Platform: PC * Processor: 1.2 GHz Intel Celeron * System Bus Speed: 800 * Number of Processors: 1 (dual core) * RAM: 2000 MB (expandable to 4 GB) * RAM Type: SODIMM Hard Drive * Size: 160 GB * Manufacturer: Portable * Type: Serial ATA Weight: 3.1 pounds Battery: last 4 to 5 hours PROS: * Very light weight. * Battery power has not let me down yet. * I have loaded all the Microsoft Express version of Visual Studio 2008 and SQL Server 2008 Express. That is enough for demos, for travel programming fun, and looking at book examples. No issues with performance and I still have not upgrade to 4 GB of RAM. * Loaded all of Office 2007 and have no performance complaints. * Screen has a great resolution * Keyboard has bigger keys than my normal size laptop. * Has the full version of Windows 7 64 bit installed unlike other Netbooks I was looking at, which have the starter version. It is performing great!!! * Screen is slightly bigger than a normal netbook, which is just enough to get away from the feeling that I am watch a movie on my phone, like other netbooks gave me. * Price, you just can't beat it. * Perfect for games. Easy to pass around. CONS: * Volumn is a little low. Overcame that with a set of external speakers (Logitech V20 Notebook Speakers (Black) * Windows Media Player plays slow. I don't think I can blame the laptop for than though, since VLC plays everything just fine. All in all I highly recommend this little thing!!! Some shots of it are below. I have included a side by side with my 17 inch laptop, and some shots of code and windows media player to give you an idea of screen real estate. The shots are not that great with respect to showing off the clarity of the screen, but they give you an idea of what fits on it. Click here for larger view Click here for larger view Click here for larger view Click here for larger view Click here for larger view Click here for larger view Click here for larger view |
| Man, was I glad to see them print this thing. I had bugged them about it, but they said it wouldn’t pay for itself. It’s good to see they changed their mind. I have been lugging it around in a binder, and that had been less than pleasurable. I like keeping this with me because it serves as great reference of all the things I am supposed to remember, but often forget. When it comes time to begin a new architecture I like having my valuable books nearby, and this is one of them. This book is packed with guidance on Mobile applications, Rich client applications, Rich Internet applications, Service applications, and Web applications built with .NET. The solution guidance provided in this book is all 100% .NET and Microsoft centric. It maps all the important aspects of software architecture to ways to implement them in .NET or with Microsoft products. This is the compass you need to find out what Microsoft has to offer for building different types of architectures. The book includes individual chapters on designing Mobile applications, Rich client applications, Rich Internet applications, Service applications, Web applications, Hosted and Cloud Services, Office Business applications, and SharePoint LOB applications. The book also includes some nice appendixes. They include the Microsoft Application Platform, Presentation Technology Matrix, Data Access Technology Matrix, Integration Technology Matrix, Workflow Technology Matrix, patterns & practices Enterprise Library, and a patterns & practices Pattern Catalog. The book primarily focuses on architecture, but each chapter provides resources for guidance on the details of implementation for the technologies mentioned in that chapter. The book focuses on the technical aspects of .NET architecture. It does not cover the soft skills needed to be an architect, or cover the customer facing skills need to communicate with the business stakeholders. You won't find much on process either, just an overview. These missing topics have not taken away from the book, they have made it a stronger book. There are plenty of resources on how to execute the soft skills and architecture process. This book concentrates on how to communicate with the development team through solid design and well known patterns and principles. If you are a .NET Architect, Developer, or Project Manger of a .NET team, you should have this book at your side. As a matter of fact, I would recommend making one of your interview questions for your team members – “Tell me what your favorite part of the Microsoft Application Architecture Guide 2nd Edition is?” If the candidate does not have a favorite part, you get back that hour you almost wasted on them. |

