Microsoft .NET is an advance in programming technology that greatly simplifies application development both for traditional, proprietary applications and for the emerging paradigm of web services. The technology was designed to grow and evolve by providing us an option to add third-party products, such as plug-ins for Visual Studio and compilers for different languages. As part of an effort to integrate the popular Perl language into the Microsoft development environment in general and into the .NET family specifically, ActiveState has recently released a new product, PerlNET, which is part of the Perl Development Kit. With PerlNET it is now possible to use and create .NET components and to wrap existing Perl modules so that they are available to all .NET-compliant languages. PerlNET enables you to enjoy both worlds.NET and Perl. By combining their features you'll have an ability to develop powerful robust components that may be reused in other .NET applications.Audience
This book is intended for both .NET and Perl programmers to help bring these two rich worlds together. In Perl there is a saying: "there is always more than one way to do it." That is even more true now, as you can add "the .NET way." If you are a Perl programmer, this book will help you understand .NET and the vast array of services available to you. You will learn how, through Web services, you can connect to a wide variety of heterogeneous systems using standard Internet protocols. If you are a .NET programmer, you will learn why Perl has become one of the most popular languages in the world and how to access the vast CPAN archive of Perl modules.Overview and Organization
The book has been designed to make it easy for you to navigate to what you need to know. Part 1 is an introduction to .NET and Perl and should be at least skimmed by everyone, with different emphasis depending on your background. Chapter 1 introduces .NET and covers the fundamentals of the .NET Framework. It also guides you to setting up a testbed consisting of .NET, Perl, and the special tools provided by ActiveState. If you are an experienced Perl programmer, you can skip directly to Part 2.
If you are new to Perl, you can quickly come up to speed with the tutorial on Core Perl in Chapters 2 to 8. It includes an in-depth treatment of objects in Perl and introduces the CPAN Perl archive. The treatment of Core Perl is very generic, and you will easily be able to apply what you have learned to any system that supports Perl. You can read much more about Perl in the book Modern Perl Programming by Michael Saltzman (Prentice Hall PTR, 2002). In that book you can also learn how to program Perl in a Unix environment. In this book we focus on programming Perl in Windows. Part of the joy of programming Perl in Windows is Visual Perl, which is an add-on to Visual Studio .NET. We cover Visual Studio and Visual Perl in Appendix A.
Part 2 covers in detail the use of PerlNET to bring together the worlds of .NET and Perl. We show you how to use .NET classes in Perl programs and how to create .NET components using Perl. Important .NET classes are surveyed, and there is coverage of using .NET in specific areas, including graphical user interfaces, database programming, and using ADO.NET, ASP.NET, and Web services.
You can learn much more about .NET from other books in The Integrated .NET Series. Also, Appendix B, "C# Survival Guide for PerlNET Programmers," will help you get started with C#, and you can see how Perl interoperates with .NET languages, using C#, the language designed for .NET, as an example.Sample Programs
The only way to really learn a programming language is to read and write many, many programs. This book provides many programs that illustrate features of Perl and .NET. The sample programs are provided in a self-extracting file on the book's Web site. When expanded, a directory structure is created whose default root is c:\OI\NetPerl. The sample programs are in directories Chap01, Chap02, and so on. All the samples for a given chapter are in individual folders within the chapter directories. The names of the folders are clearly identified in the text. An icon in the margin alerts you to a code example. Visual Perl projects are provided for the sample programs, and they can also be built at the command line. There is also a stock management case study that illustrates many features of Perl and .NET working together in combination, as they would in a practical application. A special point is made of demonstrating the object-oriented features of Perl and .NET.A link is provided at that Web site for downloading the sample programs for this book.
Get the best of both worlds: Perl flexibility and .NET power!
ActiveState's new PerlNET combines the incredibly flexible and useful Perl programming language with the immense resources and power of Microsoft's .NET platform. Programming Perl in the .NET Environment will help you make the most of Perl and .NET togetherwhether you're already familiar with Perl, or .NET, or neither. Using extensive code examples and a running case study, this book gives you practical insight for building robust object-oriented PerlNET applications, graphical user interfaces, database applications, and a whole lot more.