Python Tools for Visual Studio: Python na Microsoftovom .NET-u
-
Upload
nikola-plejic -
Category
Technology
-
view
548 -
download
0
Transcript of Python Tools for Visual Studio: Python na Microsoftovom .NET-u
![Page 1: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/1.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Python Tools for Visual StudioPython na Microsoftovom .NET-u
Nikola Pleji¢
[email protected]://nikola.plejic.com
DevUG Zagreb, 27.10.2011.
![Page 2: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/2.jpg)
![Page 3: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/3.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Outline
1 Python
Uvod
Kratak vodi£ kroz jezik
2 Python Tools for VS
Instalacija
3 DLR i IronPython
Dynamic Language Runtime
Uporaba IronPythona
![Page 4: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/4.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Python?
>�>�> print(�Hello, world!�)
Hello, world!
![Page 5: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/5.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Python?
• op¢eniti, objektno-orijentirani high-level jezik
• dinami£ki, strongly typed
• fokus na £itljivost i jednostavnost sintakse
![Page 6: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/6.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Python?
• op¢eniti, objektno-orijentirani high-level jezik
• dinami£ki, strongly typed
• fokus na £itljivost i jednostavnost sintakse
![Page 7: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/7.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Python?
• op¢eniti, objektno-orijentirani high-level jezik
• dinami£ki, strongly typed
• fokus na £itljivost i jednostavnost sintakse
![Page 8: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/8.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
The Zen of Python
>�>�> import this
The Zen of Python, by Tim Peters
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
![Page 9: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/9.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Kratka povijest
• nastao krajem 1989. godine
• Guido van Rossum (BDFL � �Benevolent Dictator For Life�)
• Python 2 vs. Python 3
![Page 10: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/10.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Kratka povijest
• nastao krajem 1989. godine
• Guido van Rossum (BDFL � �Benevolent Dictator For Life�)
• Python 2 vs. Python 3
![Page 11: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/11.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Kratka povijest
• nastao krajem 1989. godine
• Guido van Rossum (BDFL � �Benevolent Dictator For Life�)
• Python 2 vs. Python 3
![Page 12: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/12.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Implementacije
• referentna implementacija � CPython
• Jython, IronPython, PyPy
• raznorazni kompajleri (Pyjamas, Pyrex, Cython)
![Page 13: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/13.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Implementacije
• referentna implementacija � CPython
• Jython, IronPython, PyPy
• raznorazni kompajleri (Pyjamas, Pyrex, Cython)
![Page 14: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/14.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Implementacije
• referentna implementacija � CPython
• Jython, IronPython, PyPy
• raznorazni kompajleri (Pyjamas, Pyrex, Cython)
![Page 15: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/15.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Osnovni tipovi podataka
• sve je objekt
• string vs. unicode
• ne i u IronPythonu (string == unicode)
• liste, tuplei
• dictionaries
![Page 16: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/16.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Osnovni tipovi podataka
• sve je objekt
• string vs. unicode
• ne i u IronPythonu (string == unicode)
• liste, tuplei
• dictionaries
![Page 17: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/17.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Osnovni tipovi podataka
• sve je objekt
• string vs. unicode
• ne i u IronPythonu (string == unicode)
• liste, tuplei
• dictionaries
![Page 18: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/18.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Osnovni tipovi podataka
• sve je objekt
• string vs. unicode
• ne i u IronPythonu (string == unicode)
• liste, tuplei
• dictionaries
![Page 19: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/19.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Comprehensions
• list comprehensions
• dictionary comprehensions
• generatori
• generator comprehensions
![Page 20: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/20.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Comprehensions
• list comprehensions
• dictionary comprehensions
• generatori
• generator comprehensions
![Page 21: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/21.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Comprehensions
• list comprehensions
• dictionary comprehensions
• generatori
• generator comprehensions
![Page 22: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/22.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Objektni model
• klase
• klase su objekti
• metaklase
• �[...] deeper magic than 99% of users should ever worry about.If you wonder whether you need them, you don't (the peoplewho actually need them know with certainty that they needthem, and don't need an explanation about why).� ~ TimPeters
![Page 23: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/23.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Objektni model
• klase
• klase su objekti
• metaklase
• �[...] deeper magic than 99% of users should ever worry about.If you wonder whether you need them, you don't (the peoplewho actually need them know with certainty that they needthem, and don't need an explanation about why).� ~ TimPeters
![Page 24: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/24.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Objektni model
• klase
• klase su objekti
• metaklase
• �[...] deeper magic than 99% of users should ever worry about.If you wonder whether you need them, you don't (the peoplewho actually need them know with certainty that they needthem, and don't need an explanation about why).� ~ TimPeters
![Page 25: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/25.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
�to nam treba?
• distribucija Pythona
• standardni interpreter, ActiveState, IronPython, ...
• Visual Studio ili besplatni Visual Studio Shell
• ne i VS Express!
• Python Tools for Visual Studio1
• IPython2
• alternativni (ne-samo-)Python shell• potreban pyzmq 2.1.43
1http://pytools.codeplex.com/2http://ipython.org/3MSI na https://github.com/zeromq/pyzmq/downloads
![Page 26: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/26.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
�to nam treba?
• distribucija Pythona
• standardni interpreter, ActiveState, IronPython, ...
• Visual Studio ili besplatni Visual Studio Shell
• ne i VS Express!
• Python Tools for Visual Studio1
• IPython2
• alternativni (ne-samo-)Python shell• potreban pyzmq 2.1.43
1http://pytools.codeplex.com/2http://ipython.org/3MSI na https://github.com/zeromq/pyzmq/downloads
![Page 27: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/27.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
�to nam treba?
• distribucija Pythona
• standardni interpreter, ActiveState, IronPython, ...
• Visual Studio ili besplatni Visual Studio Shell
• ne i VS Express!
• Python Tools for Visual Studio1
• IPython2
• alternativni (ne-samo-)Python shell• potreban pyzmq 2.1.43
1http://pytools.codeplex.com/2http://ipython.org/3MSI na https://github.com/zeromq/pyzmq/downloads
![Page 28: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/28.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
�to nam treba?
• distribucija Pythona
• standardni interpreter, ActiveState, IronPython, ...
• Visual Studio ili besplatni Visual Studio Shell
• ne i VS Express!
• Python Tools for Visual Studio1
• IPython2
• alternativni (ne-samo-)Python shell• potreban pyzmq 2.1.43
1http://pytools.codeplex.com/2http://ipython.org/3MSI na https://github.com/zeromq/pyzmq/downloads
![Page 29: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/29.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
�to dobivamo?
• IntelliSense
• project management
• debugger
• pro�ling4
4samo u VS Ultimate :(
![Page 30: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/30.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
�to dobivamo?
• IntelliSense
• project management
• debugger
• pro�ling4
4samo u VS Ultimate :(
![Page 31: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/31.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
�to dobivamo?
• IntelliSense
• project management
• debugger
• pro�ling4
4samo u VS Ultimate :(
![Page 32: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/32.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
�to dobivamo?
• IntelliSense
• project management
• debugger
• pro�ling4
4samo u VS Ultimate :(
![Page 33: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/33.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
�to je DLR?
• skup libraryja nad CLR-om koji olak²ava hostanje dinami£kih
jezika
• izvu£en iz ranih verzija IronPythona
• zajedni£ka "podloga� za sve dinami£ke jezike na .NET-u
(IronRuby, IronScheme)
• pro²irenje postoje¢im stati£kim jezicima (dynamic dispatching
@ C# 4.0)
• .NET Framework 4.0 + Mono 2.8+ po defaultu
![Page 34: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/34.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
�to je DLR?
• skup libraryja nad CLR-om koji olak²ava hostanje dinami£kih
jezika
• izvu£en iz ranih verzija IronPythona
• zajedni£ka "podloga� za sve dinami£ke jezike na .NET-u
(IronRuby, IronScheme)
• pro²irenje postoje¢im stati£kim jezicima (dynamic dispatching
@ C# 4.0)
• .NET Framework 4.0 + Mono 2.8+ po defaultu
![Page 35: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/35.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
�to je DLR?
• skup libraryja nad CLR-om koji olak²ava hostanje dinami£kih
jezika
• izvu£en iz ranih verzija IronPythona
• zajedni£ka "podloga� za sve dinami£ke jezike na .NET-u
(IronRuby, IronScheme)
• pro²irenje postoje¢im stati£kim jezicima (dynamic dispatching
@ C# 4.0)
• .NET Framework 4.0 + Mono 2.8+ po defaultu
![Page 36: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/36.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
�to je DLR?
• skup libraryja nad CLR-om koji olak²ava hostanje dinami£kih
jezika
• izvu£en iz ranih verzija IronPythona
• zajedni£ka "podloga� za sve dinami£ke jezike na .NET-u
(IronRuby, IronScheme)
• pro²irenje postoje¢im stati£kim jezicima (dynamic dispatching
@ C# 4.0)
• .NET Framework 4.0 + Mono 2.8+ po defaultu
![Page 37: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/37.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
�to je DLR?
• skup libraryja nad CLR-om koji olak²ava hostanje dinami£kih
jezika
• izvu£en iz ranih verzija IronPythona
• zajedni£ka "podloga� za sve dinami£ke jezike na .NET-u
(IronRuby, IronScheme)
• pro²irenje postoje¢im stati£kim jezicima (dynamic dispatching
@ C# 4.0)
• .NET Framework 4.0 + Mono 2.8+ po defaultu
![Page 38: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/38.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Kratka povijest IronPythona
• Jim Hugunin, 2006.
• danas: Microsoft (razvoj na CodePlexu)
• open source (Apache 2.0)
• aktivno razvijan (zadnji release: 21.10.2011.)
![Page 39: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/39.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Kratka povijest IronPythona
• Jim Hugunin, 2006.
• danas: Microsoft (razvoj na CodePlexu)
• open source (Apache 2.0)
• aktivno razvijan (zadnji release: 21.10.2011.)
![Page 40: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/40.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Kratka povijest IronPythona
• Jim Hugunin, 2006.
• danas: Microsoft (razvoj na CodePlexu)
• open source (Apache 2.0)
• aktivno razvijan (zadnji release: 21.10.2011.)
![Page 41: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/41.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Kratka povijest IronPythona
• Jim Hugunin, 2006.
• danas: Microsoft (razvoj na CodePlexu)
• open source (Apache 2.0)
• aktivno razvijan (zadnji release: 21.10.2011.)
![Page 42: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/42.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Featurei
• ≈ CPython 2.7 uz manje razlike, npr.:
• string == unicode• Python podrºava vi²estruko naslje�ivanje, CLR ne podrºava
• integracija s .NET frameworkom
• Silverlight scripting
![Page 43: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/43.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Featurei
• ≈ CPython 2.7 uz manje razlike, npr.:
• string == unicode• Python podrºava vi²estruko naslje�ivanje, CLR ne podrºava
• integracija s .NET frameworkom
• Silverlight scripting
![Page 44: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/44.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Featurei
• ≈ CPython 2.7 uz manje razlike, npr.:
• string == unicode• Python podrºava vi²estruko naslje�ivanje, CLR ne podrºava
• integracija s .NET frameworkom
• Silverlight scripting
![Page 45: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/45.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Pri£anje s .NET-om
# deklaracija referenci
import clr
clr.AddReference(�System.Xml�)
# namespacevi
import System
from System.Xml import *
xmldoc = XmlDocument()
# alternativno:
# import system
# xmldoc = System.Xml.XmlDocument()
![Page 46: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/46.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Pri£anje s .NET-om (smjer #2)
• DLR Hosting API (= free scripting!)5
• kompajliranje IronPython aplikacije u .NET assembly
• �While the assemblies produced by the IronPython HostingAPIs are true .NET assemblies, the dynamic nature of thePython language makes it di�cult to use these from other.NET languages. In short, this means that attempting toimport Python types into other .NET languages such as C# isnot recommended.�
5http://dlr.codeplex.com/wikipage?title=Docs%20and%20specs&referringTitle=Documentation
![Page 47: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/47.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Pri£anje s .NET-om (smjer #2)
• DLR Hosting API (= free scripting!)5
• kompajliranje IronPython aplikacije u .NET assembly
• �While the assemblies produced by the IronPython HostingAPIs are true .NET assemblies, the dynamic nature of thePython language makes it di�cult to use these from other.NET languages. In short, this means that attempting toimport Python types into other .NET languages such as C# isnot recommended.�
5http://dlr.codeplex.com/wikipage?title=Docs%20and%20specs&referringTitle=Documentation
![Page 48: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/48.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
ASP.NET i IronPython
• WebForms uz ASP.NET Dynamic Language Support
• ASP.NET MVC
• http://www.codevoyeur.com/Articles/Tags/ironpython.aspx• Rubyja²i su bolje pro²li6
6http://github.com/jschementi/ironrubymvc
![Page 49: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/49.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
ASP.NET i IronPython
• WebForms uz ASP.NET Dynamic Language Support
• ASP.NET MVC
• http://www.codevoyeur.com/Articles/Tags/ironpython.aspx• Rubyja²i su bolje pro²li6
6http://github.com/jschementi/ironrubymvc
![Page 50: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/50.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Alternative
• Boo 7
• sintaksa inspirirana Pythonom• stati£ki tipiziran (type inferencing)• makroi
• IronRuby 8
• IronScheme? 9
• skoro-pa-R6RS Scheme
7http://boo.codehaus.org/8http://ironruby.net/9http://ironscheme.codeplex.com/
![Page 51: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/51.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Alternative
• Boo 7
• sintaksa inspirirana Pythonom• stati£ki tipiziran (type inferencing)• makroi
• IronRuby 8
• IronScheme? 9
• skoro-pa-R6RS Scheme
7http://boo.codehaus.org/8http://ironruby.net/9http://ironscheme.codeplex.com/
![Page 52: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/52.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Alternative
• Boo 7
• sintaksa inspirirana Pythonom• stati£ki tipiziran (type inferencing)• makroi
• IronRuby 8
• IronScheme? 9
• skoro-pa-R6RS Scheme
7http://boo.codehaus.org/8http://ironruby.net/9http://ironscheme.codeplex.com/
![Page 53: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/53.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Zaklju£ak
• ozbiljan, dobro podrºan dinami£ki jezik na CLR-u i Monou
• vrlo solidan toolchain u razvoju
• £emu sve to?
• brzi prototyping• testiranje .NET assemblyja• skriptiranje .NET i Silverlight aplikacija
![Page 54: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/54.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Zaklju£ak
• ozbiljan, dobro podrºan dinami£ki jezik na CLR-u i Monou
• vrlo solidan toolchain u razvoju
• £emu sve to?
• brzi prototyping• testiranje .NET assemblyja• skriptiranje .NET i Silverlight aplikacija
![Page 55: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/55.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Zaklju£ak
• ozbiljan, dobro podrºan dinami£ki jezik na CLR-u i Monou
• vrlo solidan toolchain u razvoju
• £emu sve to?
• brzi prototyping• testiranje .NET assemblyja• skriptiranje .NET i Silverlight aplikacija
![Page 56: Python Tools for Visual Studio: Python na Microsoftovom .NET-u](https://reader037.fdocuments.in/reader037/viewer/2022102815/55557b0eb4c9055f5f8b4ec9/html5/thumbnails/56.jpg)
Python Python Tools for VS DLR i IronPython Zaklju£ak
Zaklju£ak
Hvala na paºnji!
Nikola Pleji¢
http://nikola.plejic.com/