Even for experienced developers, the Microsoft .NET Framework is a big leap forward for application development. With the enormous quantity of technical information, web sites, and books available, .NET can be bewildering.
This book distils the essence of .NET, readying you for future development projects with the .NET Framework.
What you will learn from this book
This book will show you:
What .NET is: the Framework, the infrastructure, and the products
Why Microsoft has revamped its development and runtime model, and how this will affect you
How the .NET Framework provides multi-language support, a common type system, memory management, garbage collection, and new deployment models
The tools that the .NET Framework's class library provides to develop Windows and web applications, and to access and manipulate data
How .NET supports middle-tier components with transactions, security, and messaging - and how to use existing DLLs and COM components
The vital role played by web services, and their role in future software development
The path to a successful career in .NET
What you need to know
This book is for developers who:
Have software development experience, preferably in Java or Visual Studio technologies
Want to learn about the possibilities and implications of the Microsoft .NET Framework
Welcome to Understanding the .NET Framework. When it comes to the .NET Framework there is a great deal that can be learned and must be understood before you can effectively begin to develop applications. What's more, unlike previous new releases of Microsoft's development tools, .NET is such a radical shift that most developers (even seasoned Microsoft guys) have to virtually start from scratch. There is also the potential for a great deal of confusion given Microsoft's sudden predilection for trying to brand everything .NET.
The aim behind this book is to help clarify exactly what all the fuss regarding .NET is all about. The decision to starting working in .NET should not be undertaken lightly, so this book serves to provide an overview to whole .NET fandango so that you can better understand the decision you are about to take.
Along the way, we hope to answer several basic questions:
What is .NET exactly?
What advantages does .NET bring?
Why should I choose .NET?
How do I use .NET?
What can I do with .NET?
By the end of the book you should have a clear idea of whether .NET is a worthwhile investment for your career and/or company, and be ready to start learning .NET development properly.
Who Is This Book For?
This book is for developers with experience in Java, C++, Visual Basic, or another modern general-purpose language who want to find out about .NET. It provides an overview of the technology for evaluating .NET's fit to your own business needs. It also gives a broad .NET grounding, enabling you to decide which areas on the .NET Framework to investigate further.
What You Need to Use This Book
You will learn a lot about .NET from simply reading this book. However to get the most from this book you will need to get your hands dirty with some .NET programming. To do this you will need:
Windows 2000 or Windows XP
The .NET Framework redistributable or SDK. Both of these are available for free download from MSDN at http://msdn.microsoft.com/netframework/prodinfo/getdotnet.asp.
Parts of the book also use the following products:
Visual Studio .NET 1.0. We have tested the code for version 1.0, although most of the code should work in late pre-release versions.
SQL Server 2000 - although most of the techniques we use could apply to any database system, including Access.
What Does This Book Cover?
The book starts with an introduction to .NET as a whole, followed by an overview of .NET's impact on developers. We then move on to look at some common development tasks, and how we'd carry them out using the .NET Framework. Finally we take a look back at what we've learned, and then look forward to the ways that .NET will change the world.
Here are the main points covered in each chapter:
Chapter 1, .NET in Perspective covers what .NET is, why it is here, and where it is going. We look at the components of Microsoft's .NET strategy, the circumstances that have caused Microsoft to create .NET, and some of its most likely effects.
Chapter 2, Developing with .NET examines the underlying infrastructure of the Framework including the runtime (Common Language Runtime, Common Type System, and Common Language Specification) and the basic class library. We will also cover some of the basics of .NET development from Visual Studio .NET to deployment.
Chapter 3, Web Development looks at the changes that ASP.NET makes to the way we build dynamic web sites. We will review how it builds on CGI and scripting languages such as ASP, and then see how to develop our own ASP.NET pages - in a text editor or Visual Studio .NET.
Chapter 4, Windows Client Development looks at Windows Forms, the .NET Framework's classes for creating Windows applications. We see how to create Windows applications using the built-in controls, and then how we can extend and combine controls to produce our own. We also see how to use visual inheritance to maintain common elements across several forms in an application.
Chapter 5, Working with Data explores different types of data, and how to process them using .NET. We cover relational databases, XML, and flat files, learning about ADO.NET, the .NET XML classes, and streams.
Chapter 6, Legacy and Enterprise Systems looks at integrating .NET with DLLs, COM components, and COM+ middle-tier services.
Chapter 7, Web Services are the new kid on the block in development possibilities and a big factor in the genesis of .NET itself. This chapter explores their significance, how they came about and how to develop them in .NET.
Chapter 8, Where Do We Go From Here? draws conclusions from everything we've learned, and then looks to the future. We look at the future of .NET - where it will lead, and what implications it will have. We also look at how to develop .NET skills and practices within your organization.
Conventions
We've used a number of different styles of text and layout in this book to help differentiate between the different kinds of information. Here are examples of the styles we used and an explanation of what they mean.
Code has several styles. If it's a word that we're talking about in the text - for example, when discussing a For...Next loop, it's in this font. If it's a block of code that can be typed as a program and run, then it's also in a gray box:
Sometimes we'll see code in a mixture of styles, like this:
Widget
$10.0 O
In cases like this, the code with a white background is code we are already familiar with; the line highlighted in gray is a new addition to the code since we last looked at it.
Advice, hints, and background information comes in this type of font.
Important pieces of information come in boxes like this.
Bullets appear indented, with each new bullet marked as follows:
Important Words are in a bold type font
Words that appear on the screen, or in menus like the File or Window, are in a similar font to the one you would see on a Windows desktop
Keys that you press on the keyboard, such as Ctrl and Enter, are in itMics
How to Download the Code from the Web Site
The code in this books tends to be short snippets do demonstrate concepts, rather than full applications. However, the code examples are available for download from the Wrox web site. To get the code, visit www.wrox.com and navigate to Understanding the .NET Framework. Click on Download in the Code column, or on Oownload Code on the book's detail page.
The files are in ZIP format. Windows XP recognizes these automatically, but Windows 2000 requires a de-compression program such as WinZip or PKunzip.
Customer Support
We want to hear from you! We want to know what you think about this book: what you liked, what you didn't like, and what you think we can do better next time. Please send us your comments, either by returning the reply card in the back of the book, or by e-mailing feedback@wrox.com- Please mention the book title in your message.
We do listen to these comments, and we do take them into account on future books.
Errata
We've made every effort to make sure that there are no errors in the text or in the code. If you do find an error, such as a spelling mistake, faulty piece of code, or any inaccuracy, we would appreciate feedback. By sending in errata you may save another reader hours of frustration, and help us provide even higher quality information--mail your comments to support @wrox.com- Your information will be checked and if correct, posted to the errata page for that title, and used in subsequent editions of the book.
To find errata for this title, go to www.wrox.com and locate Understanding the .NETFrarnework. Click o: the Book Errata link, which is below the cover graphic on the book's detail page.
E-mail Support
If you wish to directly query a problem in the book with an expert who knows the book in detail then e-mail support@wrox.com, with the title of the book and the last four numbers of the ISBN in the subject field of the e-mail. Please include the following things in your e-mail:
The title of the book, last four digits of the ISBN, and page number of the problem in the Subject field.
Your name, contact information, and the problem in the body of the message.
We won't send you junk mail. We need the details to save your time and ours. When you send an e-mail message, it will go through the following chain of support:
Customer Support - Your message is delivered to our customer support staff, who are the first people to read it. They have files on most frequently asked questions and will answer anything general about the book or the web site immediately.
Editorial - Deeper queries are forwarded to the technical editor responsible for that book. They have experience with the programming language or particular product, and are able to answer detailed technical questions on the subject.
The Authors - If even the editor cannot answer your problem, they will forward the request to the author. We do try to protect the author from any distractions to their writing, but we are happy to forward specific requests to them. All Wrox authors help with the support on their books. They will e-mail the customer and the editor with their response, and again all readers should benefit.
The Wrox support process can only offer support to issues that directly relate to the content of the book. Support for questions that fall outside the scope of normal book support is provided via the community lists of our http://p2p.wrox.com/forum.
p2p.wrox.com
For author and peer discussion join the P2P mailing lists. Our unique system provides programmer to programmerTM contact on mailing lists, forums, and newsgroups, all in addition to our one-to-one e-mail support system. If you post a query to P2P, you can be confident that the many Wrox authors and industry experts who use our mailing lists will examine it. At p2p.wrox.com you will find a number of different lists that will help you, not only while you read this book, but also as you develop your own applications.
To subscribe to a mailing list just follow these steps:
1. Go to http://p2p.wrox.com/.
2. Choose the appropriate category from the left menu bar.
3. Click on the mailing list you wish to join.
4. Follow the instructions to subscribe and fill in your e-mail address and password.
5. Reply to the confirmation e-mail you receive.
O. Use the subscription manager to join more lists and set your e-mail preferences.
Why This System Offers the Best Support
You can choose to join the mailing lists or you can receive them as a weekly digest. If you don't have the time, or facility, to receive the mailing list, then you can search our online archives. Junk and spam mails are deleted, and the unique Lyris system protects your e-mail address. Queries about joining or leaving lists, and any other general queries about lists, should be sent to listsupport@p2p.wrox.com.