Pylons projekat

S Vikipedije, slobodne enciklopedije
Pylons projekat
Veb-adresawww.pylonsproject.org
KomercijalnostNe
Tip
Pajton Frejmvork Veb Alikacije Razvoj softvera
RegistracijaNema
Dostupan naEngleski
VlasnikOtvorni kod
Pokrenut27. 12. 2010.
Trenutni statusAktivan

Pylons Projekat je projekat otvorenog koda koji donosi set frejmvorkova veb aplikacija napisanih u Pajtonu. Inicijalno projekat je bio malo više nego jedan veb frejmvork ali sa spajačem repoze.bfg frejmvorkom pod novim imenom Pyramid, Pylons projekat sada se sastoji iz višestrukih frejmvorkova veb aplikacija.

Pylons Frejmvork[uredi | uredi izvor]

Pylons Frejmvork
Programer(i)Ben Bangert, Džejms Gardner
Prvo izdanje09.2005.[1]
Stabilno izdanje
1.0.2[2] / 21.07.2015.
Napisan uPajton
Operativni sistemCross-platform
TipFrejmvork Veb Alikacije
LicencaBSD licence
Veb-sajtwww.pylonsproject.org/projects/pylons-framework/about

Pylons Frejmvork je frejmvork veb aplikacije otvorenog koda napisan u Pajtonu. Čini višestruku korist od WSGI standarda da promoviše mogućnost ponovnog korišćenja i da razdvoji funkcionalnost u posebne module.[3] Jak uticaj je imao od Ruby on Rails: dveju njegovih komponenti, Routes i WebHelpers, su Pajton reimplementacije Rails mogućnosti.

Struktura[uredi | uredi izvor]

Pylons je poznat po tome što ima skoro-potpunu gomilu alatki trećih lica, izbegavajući "nije-osmišljeno-ovde" fenomen.

Instalacija, zavisnosti, i postavka[uredi | uredi izvor]

Zvanični metod instalacije Pylons-a je kroz EasyInstall preko Python Package Index (pypi), i većina dodatnih alatki je tipično instalirano na isti način. EasyInstall takođe snosi zavisnost paketa kada je to potrebno. Neke distribucije takođe mogu sadržati Pylons i Paste, ali je vrlo moguće da bi bilo koji distribucijski paket imao nedostatak zvanične distribucije. Pylons može takođe biti instaliran ručno preimenovanjem njegovog .egg fajla u .zip i vađenjem sadržaja.

Paste se koristi za postavku projekta, testiranje, i raspoređivanje. Korišćenjem čestog INI konfiguracionog formata, Paste dozvoljava za višestruke "profile", tako da programeri mogu pokretati postavku razvoja i raspoređivanja iz iste baze koda bez prikazivanja osetljivih delova Pylons-a, kao što je interaktivni debager, produkcijskim korisnicima.

URL depeša[uredi | uredi izvor]

Trenutno jedini najkorišćeniji URL dispečer za Pylons je Routes, Pajton reimplementacija Ruby on Rails URL otpreme, iako bilo koji WSGI-kompatibilni URL dispečer može biti korišćen. Dok je Routes odvojena biblioteka, ona je programirana za korist u Pylons-u i njegov razvoj ostaje usko blizak sa Pylons-om.

HTML generacija[uredi | uredi izvor]

Još jedan deo Rails koji se prilagodio za Pylons je WebHelpers, koji obezbeđuje URL mapiranje bazirano na Routes konfiguraciji. WebHelpers takođe obezbeđuje neke funkcionalnosti za generisanje JavaScript koda čineći korist od script.aculo.us i Prototype biblioteka.

FormEncode i FormBuild su korišćeni za HTML forme validacija i generacija; bilo je neko korišćenje Mako-a za forme generacija korišćenjem modela nasleđa Mako-a.

Šabloniranje[uredi | uredi izvor]

Myghty je bio podrazumevani jezik šabloniranja Pylons-a, ali od verzije 0.9.6 on je zamenjen sa Mako-om.[4] Oba jezika šabloniranja su tekstualna (u suprotnosti sa XML-tipom), i podrška uključuje, nasleđe i ugradnju proizvoljnog Pajton koda.

Zbog lababih slojeva Pylons-a, drugi jezici šabloniranja mogu biti korišćeni. Genshi, XML-bazirani jezik šabloniranja, može biti korišćen u lieu od ili Mako-a ili Myghty.[5]

Baza podataka apstrakcije i objektno-relaciono mapiranje[uredi | uredi izvor]

Pylons nema podrazumevanu biblioteku baze podataka. Oba SQLObject i SQLAlchemy su korišćeni.

Spajač sa repoze.bfg i rođenje Pyramid Veb Frejmvorka[uredi | uredi izvor]

Pylons se razvio u Pylons Projekat, i stari kod iz Pylons-a 1.0 će biti podržan na neograničeno vreme. Kakogod, u skladu sa spajačem projekta sa repoze.bfg od novembra 2010., nove verzije Pylons-a su zapravo različite od originalnog Pylons-a 1.0. Pylons programeri su u početku planirali da napišu ponovo neke delove koda, ali su prevideli da se novi kod približavao do repoze.bfg, što je odvelo spajača Pylons-a i repoze.bfg.[6][7] Ovo je učinilo da repoze.bfg (deo Repoze Pajton-bazirani veb frejmvork) postane ponovo napravljen i izbačen kao Pyramid veb frejmvork.[8]

Pyramid[uredi | uredi izvor]

Pyramid
Logo
Logo
Programer(i)Kris MekDonou, Ben Bangert
Prvo izdanje08.07.2008.
Stabilno izdanje
1.5.7 / 28.04.2015.
Preliminarno izdanje
1.6a2
Napisan uPajton
Operativni sistemCross-platform
TipFrejmvork Veb Alikacije
LicencaBSD licence
Veb-sajtwww.pylonsproject.org/projects/pyramid/about

Pyramid je veb frejmvork otvorenog koda napisan u Pajtonu i baziran je na WSGI. Minimalističan je veb frejmvork inspirisan od Zope-a, Pylons-a i Django-a.[9]

Originalno nazvan "repoze.bfg", Pyramid je prikupio pažnju najviše u Zope-u[10] i Plone zajednici kao Fond za otvoreno društvo KARL projekta koji je migrirao sa Plone na BFG.[11] Tokom 2010. najavljeno je da će Pylons frejmvork biti premešten na korišćenje BFG kao osnovu u verziji 1.5.[12] Kao rezultat uključenja BFG u Pylons projekat, BFG je preimenovan u Pyramid.[13]

Mogućnost[uredi | uredi izvor]

Pyramid je minimalistični, platformski-zavisni MVC veb frejmvork objavljivanja objekta. Integrisana je i sa SQL bazama podataka preko SQLAlchemy, ali takođe ima integraciju sa Zope Bazom Podataka Objekta i ostalim NoSQL bazama podataka, kao što je CouchDB.[9]

Pyramid takođe dozvoljava da definišete putanje koje uzimaju regularne izraze koje mapiraju u objekte, kao većina drugih frejmvorkova. Kao njegov prijateljski frejmvork Zope, Pyramid takođe dozvoljava traversal hijerarhijskog objekta, gde je svaki deo URL-a objekat koji sadrži druge objekte, u vidu sličnom folderima.[14]

Vidi još[uredi | uredi izvor]

  • Comparison of web application frameworks
  • Zope: još jedan Pajton frejmvork veb aplikacije razvojni projekat
  • TurboGears: derivativni projekat, napravljen na vrhu Pylons-a
  • Django: Pajton frejmvork veb aplikacije

Reference[uredi | uredi izvor]

  1. ^ „History of Pylons”. Arhivirano iz originala 18. 05. 2012. g. Pristupljeno 15. 11. 2015. 
  2. ^ Pylons Changelog
  3. ^ The mod_wsgi project includes both Pylons and Pyramid in its list of supported major Python web frameworks.
  4. ^ Haas, Christoph Beginning Pylons Arhivirano na sajtu Wayback Machine (16. februar 2009).
  5. ^ Genshi Wiki Pylons with Genshi Retrieved July 5, 2007
  6. ^ Pylons Project FAQ.
  7. ^ Notes on the Pylons and repoze.bfg merger.
  8. ^ About Pyramid.
  9. ^ a b McDonough, Chris. „repoze.bfg introduction”. Arhivirano iz originala 30. 12. 2013. g. Pristupljeno 21. 9. 2010. 
  10. ^ Poster, Gary (17. 9. 2010). „Zope Summit, DZUG, repoze.bfg”. Pristupljeno 21. 9. 2010. 
  11. ^ Thomas Moroz, Chris Rossi & Calvin Hendryx-Parker (28. 10. 2009). KARL - large-scale Knowledge Management. Budapest, Hungary: Plone Conference 2009. Arhivirano iz originala 02. 06. 2010. g. Pristupljeno 23. 9. 2010. 
  12. ^ Bangert, Ben (18. 9. 2010). „Emails explaining the Pylons 2 structure”. Arhivirano iz originala 01. 04. 2022. g. Pristupljeno 21. 9. 2010. 
  13. ^ „repoze.bfg is now Pyramid”. Arhivirano iz originala 13. 11. 2010. g. Pristupljeno 3. 1. 2011. 
  14. ^ Wichert Akkerman (28. 10. 2009). Lessons from other frameworks. Budapest, Hungary: Plone Conference 2009. Korisna informacija se nalazi na: 25:50. Arhivirano iz originala 18. 04. 2013. g. Pristupljeno 21. 9. 2010. 

Literatura[uredi | uredi izvor]

Spoljašnje veze[uredi | uredi izvor]

Paketi korišćeni u podrazumevanim Pylons instalacijama, ili popularnim dodacima[uredi | uredi izvor]

  • Mako - Podrazumevano šabloniranje za Pylons
  • Myghty - URL Depeša, Kontroleri, Kešovanje, Šabloniranje i više
  • Python Paste - Postavka projekta, testiranje, i raspoređivanje
  • WebOb - Objekti Zahteva i Odgovora
  • EasyInstall - Zavisnosti instalacije i paketa
  • Routes - Implementacija putanja bazirana na Rails putanjama
  • FormEncode - Validacija i forma generacije
  • WebHelpers - HTML Pomoćnik funkcije
  • SQLAlchemy - Objektno Relaciono Mapiranje