IronPython
| Ten artykuł od 2011-01 wymaga uzupełnienia źródeł podanych informacji. Możliwe, że ten artykuł w całości albo w części zawiera informacje nieprawdziwe. Informacje bez źródeł w każdej chwili mogą zostać zakwestionowane i usunięte. Pomóż Wikipedii i dodaj przypisy do materiałów opublikowanych w wiarygodnych źródłach. Po wyeliminowaniu niedoskonałości prosimy usunąć szablon „Dopracować” z kodu tego artykułu. |
| IronPython | |
| Pojawienie się | {{{data}}} |
| Paradygmat | wieloparadygmatowy (obiektowy, imperatywny, funkcyjny) |
| Typowanie | dynamiczne |
| Implementacje | CPython, IronPython, Jython, PyPy |
| Pochodne | {{{pochodne}}} |
| Aktualna wersja stabilna | 2.7.3 (6 lipca 2012) |
| Twórca | Jim Hugunin[1] |
| Licencja | Apache License, v2.0[2] |
| Platforma sprzętowa | wieloplatformowy |
| Platforma systemowa | wieloplatformowy |
| [1] | |
IronPython – dynamiczny język programowania napisany w języku C# i stworzony na platformie programistycznej .NET Framework 2.0. Jest to pełnoprawna implementacja języka Python stworzona na bazie specyfikacji Common Language Infrastructure (CLI) i wykonywana pod kontrolą środowiska uruchomieniowego Common Language Runtime (CLR). Jego twórcą jest Jim Hugunin, który jest również twórcą implementacji Jython, napisanej w języku Java i uruchamianej pod kontrolą maszyny wirtualnej Javy.
Do najważniejszych cech implementacji IronPython należy zaliczyć jej pełną integrację z platformą .NET Framework, co wiąże się z możliwością wykorzystania olbrzymiej ilości standardowych i zewnętrznych bibliotek stworzonych dla tej platformy, przy zachowaniu pełnej zgodności z samym językiem Python. Implementacja ta odznacza się dodatkowo doskonałą wydajnością oraz posiada zaimplementowaną w kodzie zarządzanym większą część bibliotek standardowych dostarczanych wraz z językiem Python. IronPython posiada również wsparcie we flagowym środowisku programistycznym firmy Microsoft, czyli Visual Studio. Implementację IronPython można wykorzystywać również, tworząc rozwiązania w technologii internetowej Silverlight.
Rozwój implementacji IronPython przyczynił się do powstania uniwersalnego środowiska uruchomieniowego dla dynamicznych języków programowania o nazwie Dynamic Language Runtime (DLR), który stał się zarówno integralną częścią platformy .NET Framework 4.0, jak i samodzielnym, otwartym dla społeczności, projektem typu Open Source. Innym znanym projektem stworzonym na bazie środowiska DLR jest IronRuby, będący implementacja języka Ruby.
Spis treści
IronPython – przykłady integracji z platformą .NET Framework[edytuj | edytuj kod]
Poniższe przykłady ilustruję specyficzne dla implementacji IronPython przykłady użycia języka.
Rozszerzanie funkcjonalności języka[edytuj | edytuj kod]
W implementacji IronPython, własne metody, klasy, czy komponenty tworzy się tak samo łatwo jak w każdym innym, wspieranym przez tę platformę, języku programowania. Innymi słowy, każdy komponent stworzony np. w języku C# da się wykorzystać z poziomu języka IronPython bez najmniejszego problemu, a w dodatku bez żadnych dodatkowych warstw pośredniczących, czy konwersji typów danych, co ma bardzo pozytywny wpływ na wydajność i łatwość ich tworzenia.
Kod prostego komponentu w języku C#:
using System; namespace CSharpLib { public class SampleClass { public string SayHello(string name) { return String.Format("Hello, {0}!", name); } } }
Przykład użycia powyższego komponentu z poziomu języka IronPython:
import clr clr.AddReference("CSharpLib.dll") from CSharpLib import SampleClass sc = SampleClass() print sc.SayHello("IronPython")
Wykorzystanie bibliotek standardowych platformy .NET[edytuj | edytuj kod]
IronPython umożliwia łatwe wykorzystanie bibliotek standardowych dostarczanych wraz z platformą programistyczną .NET Framework.
Przykład:
import clr clr.AddReference('System.Windows.Forms') from System.Windows.Forms import (Application, Form) form = Form( Text = 'Hello, Windows Forms!' ) Application.Run(form)
Osadzanie języka IronPython[edytuj | edytuj kod]
Implementacja IronPython dostarcza również wiele mechanizmów umożliwiających osadzanie i wykonywanie tego języka we własnych programach i aplikacjach.
Przykład:
using IronPython.Hosting; namespace PythonHostingSamples { class Program { static void Main(string[] args) { var engine = Python.CreateEngine(); engine.CreateScriptSourceFromString("print 'hello IronPython'").Execute(); } } }
Zobacz też[edytuj | edytuj kod]
Linki zewnętrzne[edytuj | edytuj kod]
- Strona domowa IronPython
- Strona domowa platfromy DLR
- Cykl artykułów poświęconych językowi IronPython na stronach portalu MSDN
- Cykl spotkań wideo o IronPython
- http://pl.python.org/
Przypisy
|
|||||||||||
|
|||||

