Mike Vincent's Blog

Community, Software Architecture, Application Lifecycle Management

IronPython in Action is Released

"IronPython in Action" by Michael Foord and Christian Muirhead, Manning Publications Co. ISBN 978-1-933988-33-7 was released this week in ebook and will be available in print on March 26, 2009. If you are at all interested in Iron Python, this is the book to get your hands on. It provides a very complete reference of the broad capabilities of IronPython. If you are new to the Python language or how it is implemented with the .NET Common Language Runtime (CLR) and Dynamic Language Runtime (DLR), the book provides a great starting point to get your feet wet. From core development, agile testing, ASP.NET, Silverlight, integrating with other .NET languages, embedding the IronPython engine, to Windows system administration, there is a boatload of good information. And, it's well presented for both understanding concepts and to use as a development reference. Check out the Table of Contents for a more complete overview.

Table of Contents


foreword
preface
acknowledgments
about this book

Part 1 Getting started with IronPython

1 A new language for .NET

1.1 An introduction to IronPython

1.2 Python on the CLR

1.3 Live objects on the console: the interactive interpreter

1.4 Summary

2 Introduction to Python

2.1 An overview of Python

2.2 Python: basic constructs

2.3 Additional Python features

2.4 Summary

3 .NET objects and IronPython

3.1 Introducing .NET

3.2 Structures, enumerations, and collections: .NET types

3.3 Handling events

3.4 Subclassing .NET types

3.54 Summary

Part 2 Core development techniques

4 Writing an application and design patterns with IronPython

4.1 Data modeling and duck typing

4.2 Model-View-Controller in IronPython

4.3 The command pattern

4.4 Integrating commands with our running example

4.5 Summary

5 First-class functions in action with XML

5.1 First-class functions

5.2 Representing documents with XML

5.3 Reading XML

5.4 Handler functions for MultiDoc XML

5.5 The Open command

5.6 Summary

6 Properties, dialogs, and Visual Studio

6.1 Document observers

6.2 More with TabPages: dialogs and Visual Studio

6.3 Object serializing with BinaryFormatter

6.4 Summary

7 Agile testing: where dynamic typing shines

7.1 The unittest module

7.2 Testing with mocks

7.3 Functional testing

7.4 Summary

8 Metaprogramming, protocols, and more

8.1 Protocols instead of interfaces

8.2 Dynamic attribute access

8.3 Metaprogramming

8.4 IronPython and the CLR

8.5 Summary

Part 3 IronPython and advanced .NET.

9 WPF and IronPython

9.1 Hello World with WPF and IronPython

9.2 WPF in action

9.3 XPS documents and flow content

9.4 Summary

10 Windows system administration with IronPython

10.1 System administration with Python

10.2 WMI and the System.Management assembly

10.3 PowerShell and IronPython

10.4 Summary

11 IronPython and ASP.NET

11.1 Introducing ASP.NET

11.2 Adding IronPython to ASP.NET

11.3 ASP.NET infrastructure

11.4 A web-based MultiDoc Viewer

11.5 Editing MultiDocs

11.6 Converting the Editor into a user control

11.7 Summary

12 Databases and web services

12.1 Relational databases and ADO.NET

12.2 Web services

12.3 Summary

13 Silverlight: IronPython in the browser

13.1 Introduction to Silverlight

13.2 A Silverlight Twitter client

13.3 Videos and the browser DOM

13.4 Summary

Part 4 Reaching out with IronPython

14 Extending IronPython with C#/VB.NET

14.1 Writing a class library for IronPython

14.2 Creating dynamic (and Pythonic) objects from C#/VB.NET

14.3 Compiling and using assemblies at runtime

14.4 Summary

15 Embedding the IronPython engine

15.1 Creating a custom executable

15.2 IronPython as a scripting engine

15.3 Python plugins for .NET applications

15.4 Using DLR objects from other .NET languages

15.5 Summary
 
appendix A: A whirlwind tour of C#
appendix B: Python magic methods
appendix C: For more information
index