Practical Code Generation in .NET


Book Description

Enlist Visual Studio’s Built-in Code Generation Tools to Write Better Software Faster Automatic code generation can dramatically increase your productivity, improve code quality and maintainability, promote reuse, and help you extend best practices throughout your development organization. .NET and Visual Studio contain many powerful, code-generation tools—and this book shows you how to succeed with all of them. With Practical Code Generation in .NET, spend less time writing monotonous, repetitive code—leaving more time to address troublesome areas! Microsoft MVP Peter Vogel covers code generation with Visual Studio 2010, 2008, and 2005, as well as all recent versions of .NET, including .NET 4.0. You’ll learn when enlisting code generation makes sense and how to design solutions that build on the skills and resources you already have. Writing for experienced programmers, Vogel shows how to generate reliable code using procedural code, Visual Studio add-ins, XML, configuration files, and more—including Microsoft’s innovative CodeDOM technology for generating code in multiple languages. He brings everything together in three complete, chapter-length case studies. Coverage includes Understanding the structure of .NET code-generation solutions and best practices for architecting them Creating Visual Studio add-ins that quickly integrate code generation into day-to-day activities Using objects and methods to add or remove project components Using text insertion to generate code using any tool—even standard string handling functions Working with the specific features of C#, Visual Basic .NET, and ASP.NET Generating more concise code with .NET’s new Text Template Transformation Toolkit (T4) Building code-generation solutions with Visual Studio templates, attributes, and custom tools Distributing code-generation solutions




Code Generation in Microsoft .NET


Book Description

* Coverage of all three significant .NET code generation mechanisms: Manual code generation, XSL/XML and CodeDom. * Includes a database metadata extraction tool based on SQL-92 standards. * Real solutions to the problem of protecting handcrafted code across regeneration. * Covers code generation in the broader picture of how applications are developed. * Includes real world samples for a complete middle tier and simple User Interface.




Practical Code Generation in .NET.


Book Description

This is the eBook version of the printed book. If the print book includes a CD-ROM, this content is not included within the eBook version."Once this skill is within your everyday comfort zone, it will give your productivity a boost and increase your value to your team. I encourage you to add the techniques outlined in this book to your toolset and to use them to develop your own workbench of generative tools. In doing so, I'm confident you'll improve your capabilities, and what's more, have fun doing so."--The Foreword by Gareth Jones, Developer Architect, Visual Studio®, Microsoft.




Code Generation in Action


Book Description

Covering technique and implementation for building code for complex applications frameworks, this book demonstrates how to build high-quality output that is consistent and maintainable. Lessons on abstracting the design of the code so that multiple outputs can be created from a single abstract model of the application functionality are provided. Techniques that range from using simple code processors to handle common coding problems to creating more elaborate and complex generators that maintain entire application tiers are covered. Topics such as building database access, user interface, remote procedure, test cases, and business logic code are also addressed, as is code for other system functions. Although code generation is an engineering technique, it also has an impact on engineering teams and management, an aspect of code generation that is covered in depth in this resource.




Metaprogramming in .NET


Book Description

Summary Metaprogramming in .NET is designed to help readers understand the basic concepts, advantages, and potential pitfalls of metaprogramming. It introduces core concepts in clear, easy-to-follow language and then it takes you on a deep dive into the tools and techniques you'll use to implement them in your .NET code. You'll explore plenty of real-world examples that reinforce key concepts. When you finish, you'll be able to build high-performance, metaprogramming-enabled software with confidence. About the Technology When you write programs that create or modify other programs, you are metaprogramming. In .NET, you can use reflection as well as newer concepts like code generation and scriptable software. The emerging Roslyn project exposes the .NET compiler as an interactive API, allowing compile-time code analysis and just-in-time refactoring. About this Book Metaprogramming in .NET is a practical introduction to the use of metaprogramming to improve the performance and maintainability of your code. This book avoids abstract theory and instead teaches you solid practices you'll find useful immediately. It introduces core concepts like code generation and application composition in clear, easy-to-follow language. Written for readers comfortable with C# and the .NET framework—no prior experience with metaprogramming is required. Purchase of the print book comes with an offer of a free PDF, ePub, and Kindle eBook from Manning. Also available is all code from the book. What's Inside Metaprogramming concepts in plain language Creating scriptable software Code generation techniques The Dynamic Language Runtime About the Authors Kevin Hazzard is a Microsoft MVP, consultant, teacher, and developer community leader in the mid-Atlantic USA. Jason Bock is an author, Microsoft MVP, and the leader of the Twin Cities Code Camp. "An excellent way to start fully using the power of metaprogramming."—From the Foreword by Rockford Lhotka, Creator of the CSLA .NET Framework Table of Contents PART 1 DEMYSTIFYING METAPROGRAMMING Metaprogramming concepts Exploring code and metadata with reflection PART 2 TECHNIQUES FOR GENERATING CODE The Text Template Transformation Toolkit (T4) Generating code with the CodeDOM Generating code with Reflection.Emit Generating code with expressions Generating code with IL rewriting PART 3 LANGUAGES AND TOOLS The Dynamic Language Runtime Languages and tools Managing the .NET Compiler




Expert .NET 1.1 Programming


Book Description

* Established and high-selling .NET expert/author, with large fan following. * Broad and deep coverage, with full "look forward" to advanced programming methods available in .NET 2005. * Completely up-to-date with the latest iteration of the framework.




Pro .NET Memory Management


Book Description

Understand .NET memory management internal workings, pitfalls, and techniques in order to effectively avoid a wide range of performance and scalability problems in your software. Despite automatic memory management in .NET, there are many advantages to be found in understanding how .NET memory works and how you can best write software that interacts with it efficiently and effectively. Pro .NET Memory Management is your comprehensive guide to writing better software by understanding and working with memory management in .NET. Thoroughly vetted by the .NET Team at Microsoft, this book contains 25 valuable troubleshooting scenarios designed to help diagnose challenging memory problems. Readers will also benefit from a multitude of .NET memory management “rules” to live by that introduce methods for writing memory-aware code and the means for avoiding common, destructive pitfalls. What You'll LearnUnderstand the theoretical underpinnings of automatic memory management Take a deep dive into every aspect of .NET memory management, including detailed coverage of garbage collection (GC) implementation, that would otherwise take years of experience to acquire Get practical advice on how this knowledge can be applied in real-world software development Use practical knowledge of tools related to .NET memory management to diagnose various memory-related issuesExplore various aspects of advanced memory management, including use of Span and Memory types Who This Book Is For .NET developers, solution architects, and performance engineers




Practical Database Programming with Visual Basic.NET


Book Description

Practical Database Programming with Visual Basic.NET The most up-to-date Visual Basic.NET programming textbook—covering both fundamentals and advanced-level programming techniques—complete with examples and solutions Visual Basic.NET (VB.NET) is an object-oriented computer programming language that can be viewed as an evolution of the classic Visual Basic (VB), which is implemented on the .NET Framework. Microsoft currently supplies two major implementations of Visual Basic: Microsoft Visual Studio (which is commercial software) and Microsoft Visual Studio Express (which is free of charge). Forgoing the large amounts of programming codes found in most database programming books, Practical Database Programming with Visual Basic.NET shows students and professionals both how to develop professional and practical database programs in a Visual Basic.NET environment by using Visual Studio.NET Data Tools and Wizards related to ADO.NET 4.0, and how to apply codes that are auto-generated by solely using Wizards. The fully updated Second Edition: Covers both fundamentals and advanced database programming techniques Introduces three popular database systems with practical examples including MS Access, SQL Server 2008, and Oracle Features more than fifty sample projects with detailed illustrations and explanations to help students understand key techniques and programming technologies Includes downloadable programming codes and exercise questions This book provides undergraduate and graduate students as well as database programmers and software engineers with the necessary tools to handle the database programming issues in the Visual Studio.NET environment.




Lectures on Concurrency and Petri Nets


Book Description

This tutorial volume originates from the 4th Advanced Course on Petri Nets, ACPN 2003, held in Eichsttt, Germany in September 2003. In addition to lectures given at ACPN 2003, additional chapters have been commissioned to give a well-balanced presentation of the state of the art in the area. This book will be useful as both a reference for those working in the area as well as a study book for the reader who is interested in an up-to-date overview of research and development in concurrent and distributed systems; of course, readers specifically interested in theoretical or applicational aspects of Petri nets will appreciate the book as well.




Deep Learning for Coders with fastai and PyTorch


Book Description

Deep learning is often viewed as the exclusive domain of math PhDs and big tech companies. But as this hands-on guide demonstrates, programmers comfortable with Python can achieve impressive results in deep learning with little math background, small amounts of data, and minimal code. How? With fastai, the first library to provide a consistent interface to the most frequently used deep learning applications. Authors Jeremy Howard and Sylvain Gugger, the creators of fastai, show you how to train a model on a wide range of tasks using fastai and PyTorch. You’ll also dive progressively further into deep learning theory to gain a complete understanding of the algorithms behind the scenes. Train models in computer vision, natural language processing, tabular data, and collaborative filtering Learn the latest deep learning techniques that matter most in practice Improve accuracy, speed, and reliability by understanding how deep learning models work Discover how to turn your models into web applications Implement deep learning algorithms from scratch Consider the ethical implications of your work Gain insight from the foreword by PyTorch cofounder, Soumith Chintala