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