Visual Studio is a development IDE created by Microsoft to enable easier development for Microsoft programming languages as well as development technologies. It has been the most popular IDE for working with Microsoft development products for the past 10 years. Extensibility is a key feature of Visual Studio. There have not been many books written on this aspect of Visual Studio. Visual Studio Extensibility (VSX) can be considered a hard topic to learn for many developers in comparison with most .NET related topics. Also, its APIs are very complex and not very well written. Some may refer to these APIs as “dirty” because they do not have good structure, naming convention, or consistency. Visual Studio is now 10 years old. It was created during the COM days for COM programming but later migrated to .NET. However, Visual Studio still relies heavily on COM programming. It was revamped when moving to the .NET platform but still contains its COM nature; this fact is what makes it harder for .NET developers to work with VSX. Because it is an older product built on two technologies, it has produced inconsistency in code. Although there are problems with the current version of VSX, the future looks bright for it. The many different teams working on the software have been moved into one umbrella group known as the Visual Studio Ecosystem team. Throughout the past 10 years Visual Studio has continued to grow and new extensibility features have been added. Learning all of the options with their different purposes and implementations is not easy. Many extensibility features are broad topics such as add-ins, macros, and the new domain-specific language tools in Visual Studio. Learning these topics can be difficult because they are not closely related to general .NET programming topics. This book is for .NET developers who are interested in extending Visual Studio as their development tool. In order to understand the book you must know the following material well: Object-oriented programming (OOP), the .NET Framework and .NET programming, C# or Visual Basic languages, some familiarity with C++, some familiarity with XML and its related topics, and Visual Studio structure and usage. A familiarity with COM programming and different .NET technologies is helpful. The aims of this book are to: Provide an overview of all aspects of VSX Enable readers to know where/when to use extensibility Familiarize readers with VS Extensibility in detail Show readers the first steps and let them learn through their own experiences Use examples, sample code, and case studies to demonstrate things in such a way that helps readers understand the concepts Avoid bothering readers with long discussions and useless code samples In order to use this book, and get the most out of it, there are some technical requirements. You must have the following two packages installed on your machine to be able to read/understand the chapters and test code samples: Visual Studio 2008 Team System Edition (or other commercial editions) Visual Studio 2008 SDK 1.0 (or its newer versions) You will need to buy Visual Studio 2008 to register for an evaluation version. The Free Express editions of Visual Studio do not support the extensibility options. The Visual Studio SDK is needed in order to read some of the chapters in the book and can be downloaded as a free package. The operating system doesn’t matter for the content of the book, but all code was written with Visual Studio 2008 Team System Edition in Windows Vista x86. Chapters 1, 2, and 3 will give you an introduction to the basic concepts you need to understand before you can move on to the rest of the book. Chapter 4 discusses the automation model, which is an important prerequisite for many of the chapters in the book that focus on add-ins, macros, and VSPackages. Chapters 5-14 will utilize add-ins in a case study to learn about the main responsibilities of the automation model and some of the more common techniques used in VSX development. Each of the following chapters is dedicated to a specific extensibility option; they are independent of one another and you can read them in any order. It is important to read chapters 4-14 before you begin reading about the specific extensibility options. Chapter 5 contains a walk-through of the Add-in Wizard and describes its steps. Chapter 6 will show you the anatomy of add-ins and explain how to create add-ins and how they work. Chapter 7 discusses how to manipulate solutions, projects, and project items via your code to build add-ins. Chapter 8 shows you how to deal with documents and code editors in your add-ins. Chapter 9 explains how to work with programming codes and how to manipulate their elements. Chapter 10 describes some ways to work with user interface elements, Windows Forms, and controls via code in your add-ins. Chapter 11 discusses the Tools Options page and uses add-ins as the case study to show you how to create your own Tools Options pages. Chapter 12 teaches you how to debug and test your add-ins. Chapter 13 shows you how to deploy your add-ins. Chapter 14 completes the discussion about add-ins by talk about resources and localization of add-ins. Chapter 15 discusses a new feature in VS 2008: the Visual Studio Shell. Chapter 16 talks about domain-specific language tools; you will learn how to build them and see a quick overview of DSL tools. Chapter 17 discusses debugging and how to extend debugging features. Chapter 18 talks about VSPackages as a way to extend VS functionality and add something new to its existing packages. Chapter 19 teaches you what a code snippet is and how to write and manage code snippets in Visual Studio to make your coding process easier. Chapter 20 talks about VS project templates and starter kits and how to write your own project templates. Chapter 21 focuses on MSBuild and writing custom builds for Visual Studio and .NET applications. Chapter 22 discusses Visual Studio macros in detail and explains how to build a Visual Studio macro. Keyvan Nayyeri is a software architect and developer. He has a Bachelor of Science degree in applied mathematics. His main focus is on Microsoft development technologies and their related markup languages. Nayyeri is also a team leader and developer for several .NET open-source projects; this includes writing code for special purposes. He holds an MVP award for Comunnity Server. He recently co-authored Wrox Professional Community Server (2007). Professional C# 2008 starts by reviewing the overall architecture of .NET in Chapter 1 in order to give you the background you need to be able to write managed code. After that the book is divided into a number of sections that cover both the C# language and its application in a variety of areas. Part I: The C# Language gives a good grounding in the C# language itself. This section doesn't presume knowledge of any particular language, although it does assume you are an experienced programmer. You start by looking at C#'s basic syntax and data types, and then explore the object-oriented features of C# before moving on to look at more advanced C# programming topics. Part II: Visual Studio looks at the main IDE utilized by C# developers world-wide: Visual Studio 2005. The two chapters in this section look at the best way to use the tool to build applications based upon either the .NET Framework 2.0 or 3.0. In addition to this, this section also focuses on the deployment of your projects. Part III: Base Class Libraries looks at the principles of programming in the .NET environment. In particular, you look at security, threading localization, transactions, how to build Windows services, and how to generate your own libraries as assemblies. Part IV: Data looks at accessing databases with ADO.NET and LINQ, and at interacting with directories and files. This part also extensively covers support in .NET for XML and on the Windows operating system side, and the .NET features of SQL Server 2008. Within the large space of LINQ, particular focus is put on LINQ to SQL and LINQ to XML. Part V: Presentation focuses on building classic Windows applications, which are called Windows Forms in .NET. Windows Forms are the thick-client version of applications, and using .NET to build these types of applications is a quick and easy way of accomplishing this task. In addition to looking at Windows Forms, you take a look at GDI+, which is the technology you will use for building applications that include advanced graphics. This section also covers writing components that will run on Web sites, serving up Web pages. This covers the tremendous number of new features that ASP.NET 3.5 provides. Finally, this section also shows how to build applications based upon the Windows Presentation Foundation and VSTO. Part VI: Communication covers Web services for platform-independent communication, .NET Remoting for communication between .NET clients and servers, Enterprise Services for the services in the background, and DCOM communication. With Message Queuing asynchronous, disconnected communication is shown. This section also looks at utilizing the Windows Communication Foundation and the Windows Workflow Foundation. Part VII: Appendices (Online): This section includes three appendices focused on how to build applications that take into account the new features and barriers found in Windows Vista. Also, this section looks at the upcoming ADO.NET Entities technology and how to use this new technology in your C# applications. You can find these three appendices online at www.wrox.com.
professional Visual Studio 2008
Microsoft Visual Studio 2008 Is The Latest Version In The Ongoing Evolution Of The Integrated Development Environment (ide), And This Resource Examines The Diverse Facets Of The Ide—from Common Tasks To Intricate Functions To The Powerful Tools That Accompany The Main Code Editing And Design Windows. Written By A Unique Author Duo And Offering An In-depth Look At The Powerful And Fascinating Features And Techniques Of The Ide, This Book Explores Each Aspect Of The Development Life Cycle From The Perspective Of How Visual Studio 2008 Can Make Your Life Easier.
Each Chapter Is Packed With Examples That Illustrate Uses For Various Tools, Commands, And Shortcuts Of Visual Studio 2008. You Will Gradually Learn To Identify Where A Feature Is Used, Conclude How You Can Use It To Its Fullest Potential, And Then Seamlessly Apply That Feature To Help Solve Real-world Problems.
what You Will Learn From This Book
-
How To Create Project Templates And Wizards
-
Methods For Using Intellisense, Code Refactoring, Class Modeling, And Unit Testing
-
Tips For Using Datasets, Linq, And Synchronization Services For Working With Data
-
How To Build Web Applications Using Asp.net Ajax, Silverlight, And Asp.net Mvc
-
Ideas For Building Office And Mobile Applications, Wpf, Wcf, And Wf Projects
-
Ways To Effectively Analyze And Identify Bugs Using The Advanced Debugging Features
-
How To Automate Repetitive Tasks Using The Visual Studio 2008 Add-ins And Macros
-
Suggestions For Using Visual Studio Team System Components Coupled With Team Foundation Server
-
Techniquesfor Building More Secure Applications
who This Book Is For
this Book Is For Programmers Who Want To Become Proficient With The Latest Version Of Visual Studio And Are Interested In The Advanced Capabilities Of The Ide.
wrox Professional Guides Are Planned And Written By Working Programmers To Meet The Real-world Needs Of Programmers, Developers, And It Professionals. Focused And Relevant, They Address The Issues Technology Professionals Face Every Day. They Provide Examples, Practical Solutions, And Expert Education In New Technologies, All Designed To Help Programmers Do A Better Job.
Have access to all aspects of the C# programming language at hand with the C# 2008 Programmer’s Reference, the only comprehensive reference guide for C# programmers. Regardless of your experience with C#, you will appreciate the detailed code samples, which offer a quick and easy way to help you refresh your understanding of important concepts. In this ideal C# resource, you will find an introduction to the .NET Framework, a guide to using Visual Studio 2008, and explanations of classes, objects, types, delegates and events, strings and regular expressions, and threading.
Professional C♯ 2008 starts by reviewing the overall architecture of . NET in Chapter 1 in order to give you the background you need to be able to write managed code. After that the book is divided into a number of sections that cover both the C♯ language and its application in a variety of areas. Part I: The C♯ Language gives a good grounding in the C♯ language itself. This section doesn & rsquo;t presume knowledge of any particular language, although it does assume you are an experienced programmer. You start by looking at C♯ & rsquo;s basic .. Professional C# 2008 Updated for. NET 3. 5 and Visual Studio? 2008, this book is the ultimate guide to C# 2008 and its environment. Beginning with a look into the architecture and methodology of. NET, the team of superlative authors explains why the C# language cannot be viewed in isolation, but rather, must be considered in parallel with the.