spre deosebire de alte limbaje de programare, Python pune accentul pe lizibilitatea codului. Sintaxa sa simplă și expresivă permite dezvoltatorilor să adauge funcționalități aplicațiilor software fără a scrie cod lung și complex. De asemenea, Python este unul dintre cele mai dinamice limbaje de programare. Programatorii pot implementa Python în mai multe moduri. Ei au chiar opțiunea de a alege din mai multe implementări de Python. Implementarea implicită a limbajului de programare Python este CPython.în ciuda faptului că este scris în limbajul de programare C, CPython este distribuit ca o bibliotecă Python standard. Acesta compilează codul sursă Python la un bytecode intermediar. Bytecode-ul intermediar este executat de mașina virtuală CPython. Mulți programatori optează pentru CPython datorită compatibilității sale cu o gamă largă de pachete Python și module de extensie C. Dar compilare CPython face Python mai lent decât diferite limbaje de programare compilate și necesare resurse suplimentare de server.
prin urmare, mulți programatori optează pentru implementarea alternativă Python pentru a spori viteza de execuție a codului. Ei au chiar opțiunea de a alege din mai multe alternative la CPython — Jython, IronPython, Cython, PyPy și CLPython. Dar un procent mare de programatori Python preferă PyPy altor implementări datorită performanței și vitezei sale optime. Spre deosebire de alte implementări, PyPy este scris în limbajul de programare Python. Se folosește chiar și un interpret care este scris într — un subset de limbaj de programare Python-RPython.
PyPy crește viteza de execuție cod Python drastic prin just-in-time (JIT) compilare. Se foloseste metode de compilare JIT pentru a spori eficiența și performanța sistemului interpret. Compilatorul JIT face ca PyPy să ruleze atât programe Python scurte, cât și lungi mult mai rapid decât implementările similare. Mai multe studii sugerează chiar că PyPy este de aproximativ 7,5 ori mai rapid decât CPython. Fiecare nouă versiune de PyPy vine în continuare cu performanțe îmbunătățite și execută programe Python mai repede decât predecesorul său.
de ce dezvoltatorii prefera PyPy la alte implementari de Python?
JIT Compilation
PyPy își propune să optimizeze viteza de execuție a fiecărui program Python. Acesta este dotat cu un compilator JIT încorporat. Folosește chiar și metode de compilare JIT pentru a executa atât programe Python simple, cât și mari, mai rapid decât implementarea implicită Python. Prin urmare, mulți dezvoltatori optează pentru PyPy pentru a rula mai rapid aplicații Python mari și complexe.
consum redus de memorie
pe lângă creșterea timpului de execuție a codului, PyPy face ca programele Python să consume mai puțină memorie. Cu toate acestea, scăderea utilizării memoriei poate diferi de la un program la altul. Dar PyPy face ca programele Python să consume o memorie mai mică decât CPython.
Stackless Python Support
PyPy suportă în continuare o versiune îmbunătățită a limbajului de programare Python — Stackless Python. Stackless Python este executat programe bazate pe fir mai eficient decât Python. Ajută chiar programatorii să evite unele dintre problemele de complexitate și performanță legate de firele convenționale. În timp ce utilizați PyPy, programatorii pot accelera chiar și aplicațiile scriind cod în stil concurent.
O abordare diferită de Sandboxing
PyPy adoptă în continuare o abordare de sandboxing care permite programatorilor să ruleze mai eficient programe Python de încredere. Abordarea sandboxing nu cere programatorilor să restricționeze utilizarea caracteristicilor lingvistice care sunt considerate nesigure. În schimb, înlocuiește apelul efectuat din programul Python către biblioteci externe cu un ciot. Stubul interacționează cu bibliotecile terțe pe baza politicii de gestionare a proceselor. Cu toate acestea, abordarea sandboxing este încă un prototip de lucru.în general, PyPy este mult mai rapid decât alte implementări ale Python. După cum au subliniat mai multe studii, este de aproximativ 7,5 ori mai rapid decât CPython. De asemenea, fiecare nouă versiune de PyPy vine cu performanțe îmbunătățite. Dar timpul de execuție poate diferi de la un program la altul. Conform studiilor specifice, PyPy execută codul Python pur mult mai rapid programele de asteptare c funcții codificate. Prin urmare, dezvoltatorii Python trebuie să țină cont de avantajele și dezavantajele PyPy pentru a optimiza viteza de execuție a Codului Python.