18.12 Implementacije Pythona za razne platforme
Da li si znao da postoje dva različita aspekta nekog programskog jezika? Jedan aspekt je sam taj programski jezik, a drugi aspekt je softver. Jezik je skup pravila koja nam služe da pišemo programe. Softver je ona stvar koja zapravo i pokreće te programe.
Kada se programski jezik poveže sa nekim softverom, i tako se dostavlja krajnjem korisniku, to se naziva implementacija. Mi smo pokretali sve programe koje smo koristili u ovom tutorijalu, pomoću softvera koji se naziva CPython. Ime Cpython potiče od skraćenice python – sam programski jezik i C - pisan je u C programskom jeziku, a sem toga, to je i Classical Python interpreter – uobičajeni interpreter Python programskog jezika.
Ali, Python je veoma popularan, tako da nismo ograničeni samo na ovaj jedan izbor i zato postoje i mnogi drugi softveri koji mogu da pokreću Python programe:
Jython - Implementacija Python-a za Java platforme. Sa njim ti možeš da koristiš različite Java biblioteke u kombinaciji sa svojim klasama u Python jeziku i obrnuto.
IronPython - Implementacija Python-a za .NET platforme. Sa njim možeš da koristiš različite .NET biblioteke i klase unutar Python jezika i obrnuto.
PyPy - Implementacija Python-a napisana u - Python-u! Ovo je mali istraživački projekat koji ima za cilj da bi se poboljšao Pythonov interpreter, jer je sam PyPy-ov interpreter napisan u dinamičkom programskom jeziku (za razliku od ostalih, koji su pisani pomoću statičnih jezicika kao što su C ili Java iz primera dve gornje implementacije).
Stackless Python - Implementacija Python-a koja se koristi u slučajevima kada su ti potrebna thread - bazirana poboljšanja performansi.
Postoje i mnoge druge implementacije, poput CLPython - implementacija napisana u Common Lisp-u ili IronMonkey koji je još nedovršeni port IronPython-a, prilagođen da radi unutar interpretera JavaScript jezika, što bi moglo da posluži da se Python koristi umesto JavaScript-a kako bi se pisali programi za web pretraživače (tzv "Ajax").
Svaka od ovih implementacija ima svoje specijalizovane oblasti za rešavanje problema u kojima mogu biti korisne.
18.11.1 Mogućnosti GUI alata | Indeks | 18.13 Funkcionalno programiranje |
Коментари
Постави коментар