A keretrendszerek megkönnyítik a fejlesztők életét azzal, hogy struktúrát kínálnak az alkalmazásfejlesztéshez. Automatizálják a gyakori megoldások megvalósítását, csökkentik a fejlesztési időt, és lehetővé teszik a fejlesztők számára, hogy a rutinelemek helyett az alkalmazás logikájára koncentráljanak.
Ebben a cikkben megosztjuk a tizenkét legjobb Python webes keretrendszer listáját, amelyek hasznosak lesznek a professzionális backend-fejlesztővé váláshoz vezető úton, illetve a meglévő készségeinek fejlesztésében.
Miért Python keretrendszerek? A Stack Overflow nemrég tette közzé éves fejlesztői felmérésének 2019-es eredményeit, amely a Pythont a leggyorsabban növekvő fő programozási nyelvnek nyilvánította.
A legnépszerűbb Python keretrendszerek messze a Django és a Flask. Ez azonban nem jelenti azt, hogy le kellene zárni a többi keretrendszerben rejlő lehetőségeket. Mindegyik olyan funkciókkal rendelkezik, amelyek tökéletesen illeszkedhetnek az Ön webes projektjéhez.
Ne feledje, hogy a Python keretrendszerek, amelyekről itt szó lesz, nem egy meghatározott sorrendben vannak felsorolva: arra összpontosítottunk, hogy megmutassuk, mire képes, nem pedig arra, hogy megmondjuk, mit kell tennie.
- Néhány dolog, amit figyelembe kell vennie
- Full-stack keretrendszerek
- Django
- Pyramid
- TurboGears
- Web2py
- Mikrokeretrendszerek
- Flask
- Flask
- CherryPy
- A CherryPy néhány alapértelmezett funkciója a következő:
- Falcon
- Hug
- FastAPI
- Aszinkron keretrendszerek
- Sanic
- Tornado
- Egyéb
- Dash
- Python webes keretrendszer kiválasztása
Néhány dolog, amit figyelembe kell vennie
Egyrészt, amikor eldönti, melyik keretrendszert használja, nézze meg a projekt méretét és összetettségét. Ha amit fejleszteni szeretne, az egy nagy rendszer, tele funkciókkal és követelményekkel, akkor egy full-stack keretrendszer lehet a megfelelő választás. Ha az alkalmazása a kisebb és egyszerűbb oldalon áll, akkor valószínűleg egy mikro-keretrendszert kell fontolóra vennie.
Másrészt meg kell vizsgálnia, hogy az Ön által fontolóra vett keretrendszer képes-e a vertikális és horizontális skálázásra. Ez elengedhetetlen az olyan projektek esetében, amelyeknek több szerveren kell futniuk, nagy mennyiségű forgalmat kell kezelniük, és támogatniuk kell a funkciókat bővítő új funkciók hozzáadását.
Ha kiválasztott egy keretrendszert, vegye fel a kapcsolatot egy fejlesztőcsapattal, és kérjen tőlük információt az alkalmazás fejlesztésének becsült költségeiről.
Az egyes keretrendszerek típusáról és fókuszáról itt talál információkat. A végső döntést azonban a saját projektjének és az egyszerűsíteni kívánt feladatoknak a megértése alapján kell meghoznia.
A keretrendszerek azonban a fejlesztés útjába is állhatnak. Amikor egy full-stack keretrendszert választ, gyakran egy sor korlátozásra is aláíratja magát. Természetesen találhatsz módot arra, hogy ezeket megkerüld, de vigyázz, hogy ne tölts több időt a saját szabadságodért való küzdelemmel, mint amennyit egy tisztán Pythonban írt alkalmazás megírásával töltöttél volna.
Full-stack keretrendszerek
A full-stack keretrendszer vagy vállalati keretrendszer egy minden egyben megoldás, amelynek könyvtárai úgy vannak konfigurálva, hogy zökkenőmentesen működjenek együtt. Támogatja a backend szolgáltatások, frontend felületek és adatbázisok fejlesztését. Egy full-stack keretrendszer mindent biztosít, amire a fejlesztőnek szüksége van egy alkalmazás felépítéséhez. A Python több full-stack keretrendszert is kínál.
Django
Hivatalos weboldal | GitHub | PyPI | Awesome
GitHub Stars: 44,077 | GitHub Forks: 18,949
A Django egy ingyenes, nyílt forráskódú, teljes körű Python keretrendszer. Igyekszik minden szükséges funkciót alapértelmezetten tartalmazni, ahelyett, hogy külön könyvtárként kínálná őket.
A Django néhány példaértékű funkciója a hitelesítés, az URL útválasztás, a sablonmotor, az objektum-relációs leképező (ORM) és az adatbázis-séma migráció (Django v.1.7+).
Ezek a funkciók teszik a Djangót rendkívül skálázhatóvá, nevetségesen gyors és rendkívül sokoldalúvá.
A Django az ORM segítségével objektumokat képez le adatbázis táblákra. Ugyanaz a kód működik különböző adatbázisokkal, és nem nehéz átvinni egyik adatbázisból a másikba. A fő adatbázisok, amelyekkel a Django működik, a PostgreSQL, a MySQL, az SQLite és az Oracle, de a harmadik féltől származó illesztőprogramok lehetővé teszik más adatbázisok használatát is.
A Django segítségével bármilyen webes alkalmazás elkészíthető a kis léptékű projektektől a komplex weboldalakig. Rugalmasságának köszönhetően a Djangót MVP-k készítésére is használják, így a startupok optimalizálhatják idejüket és költségvetésüket.
A Django felhasználói bázisa várhatóan növekedni fog, mivel sok fejlesztő ezt a keretrendszert tartja a legjobb választásnak a feltörekvő technológiákhoz, például a gépi tanuláshoz. Emellett 2020-ban a Django közösség további könyvtárak kiadását tervezi, hogy kielégítse a növekvő keresletet.
Itt a SteelKiwinél a Django-t használjuk elsődleges keretrendszerként a backend-fejlesztéshez. Ha szeretné megnézni a Django segítségével már kifejlesztett csodálatos alkalmazásokat, látogasson el a Projektek oldalunkra.
Pyramid
Hivatalos weboldal | GitHub | PyPI | Awesome
GitHub Stars: 3,215 | GitHub Forks: 866
A Piramid egy nyílt forráskódú – és a második említésre méltó – Python-alapú webes alkalmazás keretrendszer. Célja, hogy a lehető legtöbbet tegye a lehető legkevesebb bonyolultsággal. A Python 3-on futó Pyramid lépést tart a technológiai fejlesztésekkel. A Pyramid 1.10 a keretrendszer aktuális verziója, és 2010 óta a tizedik frissítés.
A Pyramid legszembetűnőbb tulajdonsága, hogy kis és nagy alkalmazásokhoz egyaránt jól használható. A Pyramid néhány nagyszerű jellemzője a következő:
- Egyfájlos alkalmazások
- URL generálás
- Bővíthető konfiguráció
- Mindenre kiterjedő templating és eszközspecifikációk
- Flexibilis hitelesítés és engedélyezés
- Tesztelés, támogatás, és átfogó adatdokumentáció
- Nézetpredikátumok és számos útvonalankénti nézet
- Funkciódíszítők
- Predikátumok
- Rendezők
A Pyramiddal a fejlesztő dönthet a templating nyelvről, a generáló könyvtárakról és az adatbázis rétegről.
A Pyramid közösség aktív és számos kiadással büszkélkedhet. A fejlesztők követhetik a keretrendszer fejlődését, ha csatlakoznak a hivatalos IRC-csatornához vagy a Google- és Twitter-csoportokhoz.
TurboGears
Hivatalos weboldal | GitHub | PyPI
GitHub Stars: 654 | GitHub Forks: 65
A TurboGears egy nyílt forráskódú, adatvezérelt full-stack webes alkalmazás keretrendszer. Rengeteg middleware-re és számos könyvtárra épül, és eredetileg más Python keretrendszerek legjobb összetevőinek ötvözésére készült.
A TurboGears segítségével gyorsan fejleszthet bővíthető adatvezérelt webes alkalmazásokat. Egy felhasználóbarát templating motorral és egy erős és rugalmas ORM-mel rendelkezik. A tervezők életét megkönnyítő nagyszerű sablonrendszerek mellett a TurboGears rengeteg rugalmasságot, az aggregátumok erős támogatását, erős ORM-et és újrafelhasználható snippeteket kínál.
A TurboGears néhány jellegzetes tulajdonsága a következő:
- Multi-adatbázis támogatás
- MVC-stílusú architektúra
- SQLObject és SQLAlchemy támogatása
- Kid és Genshi szerepel az előnyben részesített templating nyelvek között
- Validálás a FormEncode segítségével
- Pylons mint webszerver
- ToscaWidgets, egy alkalmazáskönyvtár, amely egyszerűsíti a frontend tervezés és a szerverfejlesztés összehangolását
- PasteScript sablonok
- Frontoldali WSGI-alapú szerverek (Paste HTTP szerver, CherryPy WSGI/HTTP szerver, stb.)
- Kommandósori eszközök
- MochiKit JavaScript könyvtár integráció
- Minden funkció függvénydekorátorként megvalósítva
A TurboGears jövőjét illetően a közösség jelenleg a keretrendszer képességeinek és általános stabilitásának javításán dolgozik, és hamarosan kiadják a “minimális kódot”. Ezt a kódot mikroframeworkként, vagy a TurboGears lecsupaszított változataként is emlegetik. A minimális kód segítségével a fejlesztők gyorsabban építhetnek alkalmazásokat, így pénzt és időt takaríthatnak meg.
Web2py
Hivatalos weboldal | GitHub | PyPI
GitHub Stars: 1,794 | GitHub Forks: 818
A Web2py egy skálázható, nyílt forráskódú, full-stack Python keretrendszer. Nagyon erős, ha az adatok kezeléséről van szó. A Web2py-t eredetileg oktatási eszközként kínálták, a könnyű használatra helyezve a hangsúlyt. Ez magyarázza, hogy miért nincsenek projekt szintű konfigurációs fájlok.
A Web2py-ben azonban az a nagyszerű, hogy saját webalapú IDE-vel rendelkezik, amely többek között tartalmaz kódszerkesztőt, hibakereső programot és egy kattintással történő telepítést.
A Web2py további értékes jellemzői közé tartozik:
- Nincsenek telepítési és konfigurációs követelmények
- A Windows, Mac, Linux/Unix, Google App Engine, Amazon EC2 és bármilyen webtárhelyen futtatható, amely támogatja vagy a Python 2.5-2.7 vagy Java+Python
- Másféle protokollok olvashatósága
- Adatbiztonság, amely megakadályozza az olyan sebezhetőségeket, mint a cross-site scripting, az injekciós hibák és a rosszindulatú fájlfuttatás
- Sikeres szoftverfejlesztési gyakorlatok alkalmazása, így a kód könnyen olvasható és karbantartható
- Hibakövetés, alapos hibanaplózás és jegykezelés
- Role-alapú hozzáférés-szabályozás
- A nemzetköziesítés támogatása
- A visszamenőleges kompatibilitás, amely biztosítja a felhasználó-orientált fejlődést anélkül, hogy a korábbi verziókkal való kapcsolatokat meg kellene szakítani
A Web2py fő jellemzője a jegyrendszer; Jegyeket állít ki, ha hiba lép fel. Így a felhasználók nyomon követhetik a hibákat és azok állapotát.
Mindezen előnyök ellenére a Web2py közössége kisebb, mint a Pyramidé vagy a Djangoé. Nem sok fejlesztő használja. Ez azt jelenti, hogy kisebb az esélye annak, hogy támogatást kapjon. Ráadásul a hivatalos levelezőlista sem túl aktív.
Mikrokeretrendszerek
A mikrokeretrendszer, vagyis egy minimalista webalkalmazási keretrendszer nem rendelkezik a teljes értékű keretrendszerek legtöbb funkciójával, például websablonmotorral, hitelesítési funkciókkal, fiókokkal, jogosultsággal, bemeneti érvényesítéssel és bemeneti szanálással. Egy mikro-keretrendszer csak az alkalmazás felépítéséhez szükséges komponenskészletet próbálja biztosítani. Az is előfordulhat, hogy egy adott területhez szükséges funkcionalitás biztosítására összpontosít.
Flask
Hivatalos weboldal | GitHub | PyPI | Awesome
Github Stars: 46,475 | GitHub Forks:
A Flask egy Python keretrendszer, amely a BSD licenc alatt érhető el. A Sinatra Ruby keretrendszer ihlette. A Flask a Werkzeug WSGI eszközkészlettől és a Jinja2 sablontól függ.
A Flask fő gondolata, hogy segítsen egy szilárd webalkalmazás alapjait felépíteni. Ettől kezdve bármilyen bővítményt használhatsz, amire szükséged lehet. A Flask-ot bármilyen és minden projekthez választják. Valójában ez az alapértelmezett választás minden olyan webes projekthez, amely nem illik a Djangóhoz.
A Flask könnyű és moduláris felépítése miatt könnyen alkalmazkodik a fejlesztők igényeihez. Számos hasznos out-of-the-box funkciót tartalmaz:
- Beépített fejlesztői szerver és gyors hibakereső
- Integrált támogatás a unit teszteléshez
- RESTful request dispatching
- Jinja2 templating
- Secure cookies support (client-side sessions)
- WSGI 1.0 megfelelés
- Unicode-alapú
- Minden ORM csatlakoztathatósága
- HTTP kéréskezelés
A Flask 2010-es indulása óta 27 alkalommal frissült. A mai napig a legjobban növekvő Python keretrendszer. Sok Flask-bővítményt azonban már nem támogatnak: a dokumentáció elavult, és már nem fejlesztik őket. Ha ebbe a helyzetbe ütközik, a Google-ban kell keresnie egy aktívan támogatott, hasonló funkcionalitású bővítményt.
Flask
Hivatalos weboldal | GitHub | PyPI
GitHub Stars: 6,348 | GitHub Forks:
Bottle egy mikro-keretrendszer. Eredetileg API-k építésére készült, a Bottle mindent egyetlen forrásfájlban valósít meg. A Python szabványos könyvtárán kívül nincsenek függőségei. A Bottle-lal való kódolás közelebb visz a fémhez, mint bármelyik full-stack keretrendszerrel való kódolás. A Bottle azonban csak akkor megfelelő, ha egy nagyon kis alkalmazást készítünk, legfeljebb 500 sornyi kóddal és semmilyen különleges követelménnyel.
Az alapértelmezett funkciói közé tartozik az útválasztás, a templating, a segédprogramok és egy alapvető absztrakció a WSGI szabvány felett.
- Routing – támogatja a kérések függvényhívás leképezését, lehetővé téve tiszta és dinamikus URL-ek elérését
- Sablonok – gyors és Pythonic sablonmotor a mako, jinja2 és cheetah teljes támogatásával együtt
- Utilities – kényelmes hozzáférés űrlapadatokhoz, fájlfeltöltéshez, cookie-khoz, fejlécekhez, és egyéb HTTP-vel kapcsolatos metaadatokhoz
- Server – beépített HTTP fejlesztői szerver, amely támogatja a fapws3, bjoern, GAE, СherryPy és bármely más WSGI-képes HTTP szervert
2009 óta a Bottle 73 alkalommal frissült, és mostanra tökéletes megoldás prototípusok készítésére, webes keretrendszerek szervezésének megtanulására és egyszerű személyes alkalmazások építésére.
A Bottle közösséghez való hozzájárulásokat a GitHubon keresztül fogadjuk. A felhasználók a Bottle levelezési listájához és blogjához is csatlakozhatnak, valamint a Twitteren követhetik a legújabb változásokat. Ha további vitafórumot keres, csatlakozzon a freenode chathez.
CherryPy
Hivatalos weboldal | GitHub | PyPI
GitHub Stars: 1057 | GitHub Forks: 259
A CherryPy egy nyílt forráskódú, minimalista webes keretrendszer. A Python webes alkalmazások építését nem különbözteti meg bármely más objektumorientált program építésétől.
A CherryPy-t úgy alkották meg, hogy bővíthető legyen. A keretrendszer még mechanizmusokat is kínál horogpontokhoz és bővítésekhez. például egy CherryPy-alapú webalkalmazás egy önálló Python alkalmazás, amely saját többszálú webkiszolgálót ágyaz be. A saját webszerverrel a bővítési pontok a kérés-válasz cikluson kívüli funkciókat tartalmaznak, így növelve a CherryPy bővíthetőségének szintjét.
A CherryPy által működtetett webalkalmazás valójában egy önálló Python alkalmazás, amely beágyazza saját többszálú webszerverét. A CherryPy alkalmazások minden olyan operációs rendszeren futnak, amely támogatja a Pythont (Windows, macOS, Linux stb.). Bárhol telepíthetők, ahol egy közönséges Python-alkalmazás futtatható. A CherryPy alkalmazásokhoz nincs szükség Apache-ra, de egy CherryPy alkalmazást ugyanúgy futtathatsz Apache mögött, mint Lighttpd vagy IIS mögött.
A CherryPy nem egy nagyon korlátozó keretrendszer, mivel lehetővé teszi, hogy bármilyen technológiát használj a templatinghoz, adateléréshez stb. Ennek ellenére képes kezelni a munkameneteket, statikákat, sütiket, fájlfeltöltéseket és minden mást, amire egy webes keretrendszer jellemzően képes.
A CherryPy néhány alapértelmezett funkciója a következő:
- A HTTP/1.1-kompatibilis WSGI thread-pooled webszerver
- Egyszerűen futtatható egyszerre több HTTP szerver
- Egy hatékony konfigurációs rendszer
- Egy rugalmas plugin rendszer
- Elérhető eszközök a gyorsítótárazás, kódolás, munkamenetek, hitelesítés, statikus tartalom és így tovább
- Beépített támogatás a profilozáshoz, lefedettséghez és teszteléshez
- Futtathatóság Python 2.7+, Python 3.1+, PyPy, Jython és Android
Minden funkciója és előnye ellenére sok fejlesztő úgy érzi, hogy a CherryPy dokumentációján lenne mit javítani. Ráadásul a CherryPy legalább egy kicsit könnyebben használható lehetne.
A legtöbb más keretrendszerhez hasonlóan a CherryPy mögött egy közösség áll, amely segítséget nyújt a kezdőknek és a haladó fejlesztőknek. A CherryPy rendelkezik levelezőlistával, és javasolja a fejlesztőknek, hogy csatlakozzanak a keretrendszer IRC-csatornájához vagy a Gitter- és Google-csoportokhoz.
Falcon
Hivatalos weboldal | GitHub | PyPI
GitHub Stars: 1057 | GitHub Forks: 259
A Falcon egy bare-metal Python web API keretrendszer nagyon gyors alkalmazás backendek építésére. A keretrendszer logója egy sólyom, ami azt szimbolizálja, hogy a Falcon milyen gyorsan dolgozik.
Ez a keretrendszer lehetővé teszi a fejlesztők számára, hogy tisztább terveket készítsenek, és a legtöbb kérést kezeli. A Falcon soha nem korlátozza a fejlesztőket az adatbázisokhoz és az engedélyezéshez szükséges könyvtárak kiválasztásában.
Más értékes Falcon funkciók:
- 100%-os kódlefedettség egy átfogó tesztcsomaggal
- Egy nagymértékben optimalizált kódbázis
- Előzetes kivételkezelés
- REST-ihlette erőforrás osztályok
- URI sablonok az intuitív rutinokhoz
- Egyszerű hozzáférés a kérés és válasz osztályokon keresztül
- DRY kérésfeldolgozás a middleware-en keresztül. komponensek
- Idiomatikus HTTP hibaválaszok
- Unitesztelés WSGI-segédprogramokon keresztül
A Falcon figyelmen kívül hagyja a felesleges műveleteket a webes keretrendszer fejlesztése során. Emellett választási szabadságot is biztosít: a fejlesztők szabadon hozhatnak olyan döntéseket, amelyek segítenek nekik az implementációk hangolásában és testreszabásában.
Két további említésre méltó előnye a kiterjedt dokumentáció és az aktív közösség.
Hug
Hivatalos weboldal | GitHub | PyPI
GitHub Stars: 5,905 | GitHub Forks: 347
A Hug egy Python 3 API fejlesztési keretrendszer. Úgy alkották meg, hogy a szoftvermérnökök egyszer fejleszthessenek egy API-t, és aztán újra felhasználhassák, amikor csak szükség van rá. A Hug keretrendszer különböző interfészek biztosításával egyszerűsíti az API-fejlesztést. Ez a fő oka annak, hogy ezt a keretrendszert a Python 3 egyik leggyorsabbjának nevezik.
A Hug főbb jellemzői:
- Az automatikus dokumentáció támogatása
- Jegyzetekkel támogatott érvényesítés
- Beépített verziókezelés
- Cython-kompatibilitás
- Python könyvtárként használható
A Hug keretrendszer a lehető legkevesebb integrációt és kódot tartalmazza, funkcionális marad és nagy teljesítményt nyújt. Ráadásul a Hug közössége jelenleg is növekszik. Ez a keretrendszer keresettségének jele, és annak bizonyítéka, hogy ha probléma merül fel, a fejlesztő segítséget talál.
FastAPI
Hivatalos weboldal |GitHub |PyPI
GitHub Stars: 4,835| GitHub Forks: 256
A FastAPI egy modern Python-alapú keretrendszer. Kezdetben úgy tervezték, hogy könnyen használható legyen a legjobb fejlesztési élmény biztosítása érdekében. A mai napig a FastAPI az egyik leggyorsabb keretrendszer API-k készítéséhez Python 3.6+ alatt.
A keretrendszer számos jellemzőt átvett a Flask-tól, többek között az egyszerűségét. A teljes keretrendszer a Starlette-re épül, és tartalmazza annak legtöbb funkcióját (sablonok, WebSockets és GraphQL-támogatás).
A FastAPI keretrendszer kínál:
- A fejlesztési sebesség 200-300%-os növekedését
- A hibák 40%-os csökkenését
- Kisebb hibakeresési időt
- A kódduplikáció minimalizálását
- Automatikus interaktív dokumentációt
A FastAPI nem kötődik szorosan semmilyen adatbázishoz. Mindazonáltal támogatja a szükséges adatbázisokat. A FastAPI-val szabadon felépítheti a projektjét úgy, ahogyan szüksége van rá, és akár ugyanazok a fájlok nagy részét is felhasználhatja valamelyik Flask projektjéből.
Az egyetlen hátránya a kis közössége. De ez azért van, mert a FastAPI egy viszonylag új keretrendszer.
Aszinkron keretrendszerek
Az aszinkron keretrendszer a Python keretrendszerek egy viszonylag új típusa. Ez egy olyan mikro-keretrendszer, amely lehetővé teszi a fejlesztők számára, hogy nagyszámú egyidejű kapcsolatot kezeljenek. Az aszinkron keretrendszerek nem blokkoló socketeket használnak, és a Python asyncio könyvtárából táplálkoznak.
Sanic
Hivatalos weboldal | GitHub | PyPI
GitHub Stars: 12,780 | GitHub Forks:
A Sanic egy Python webes keretrendszer, amely az uvloop-ra épül és kifejezetten a gyors HTTP-válaszokhoz készült aszinkron kéréskezelésen keresztül.
Python 3.5+-on fut. A Sanic támogatja az aszinkron kéréskezelőket, ami kompatibilissé teszi a Python 3.5 async/await függvényeivel. Ez növeli a sebességét, nem blokkoló képességeket kínálva.
A Sanicot a Python világában a legkedveltebb aszinkron keretrendszernek tartják az útválasztás, a middleware, a cookie-k, a verziókezelés, a statikus fájlok, a tervrajzok, az osztályalapú nézetek és a socketek miatt. Adatbázistámogatást és templatingot azonban nem kínál.
Egy benchmark tesztben egy processzel és 100 kapcsolattal a Sanic másodpercenként 33 342 kérést tudott kezelni, 2,96 ms átlagos késleltetéssel.
Tornado
Hivatalos weboldal | GitHub | PyPI
GitHub Stars: 18,292 | GitHub Forks:
A Tornado egy Python webes keretrendszer és aszinkron hálózati könyvtár, amely a sebességre és a nagy mennyiségű forgalom kezelésére összpontosít. Nem blokkoló hálózati I/O-t használ, és megoldja a C10k problémát (ami azt jelenti, hogy megfelelő konfiguráció esetén több mint 10 000 egyidejű kapcsolatot képes kezelni).
Ez nagyszerű eszközzé teszi a nagy teljesítményt és több tízezer egyidejű felhasználót igénylő alkalmazások építéséhez.
A Tornado főbb jellemzői a következők:
- A felhasználói hitelesítés beépített támogatása
- Valós idejű szolgáltatások
- Nagyszerű teljesítmény
- Python-alapú webes templating nyelv
- Nem blokkoló HTTP kliens
- Harmadik féltől származó hitelesítési és engedélyezési rendszerek (Google OpenID/OAuth, Facebook Login, Yahoo BBAuth, FriendFeed OpenID/OAuth, Twitter OAuth)
- Támogatás fordításhoz és lokalizációhoz
Népszerűségét tekintve a Tornado valahol a Django és a Flask között áll. Tegyük fel, hogy Flask-ban vagy Django-ban akarsz írni valamit a funkcióik és eszközeik miatt, de sokkal jobb teljesítményre is szükséged van. Ebben az esetben a Tornado-t kell választania.
Egyéb
Dash
Hivatalos weboldal | GitHub | PyPI | Awesome
GitHub Stars: 9,856 | GitHub Forks:
A Dash egy nyílt forráskódú Python keretrendszer, amelyet analitikus webes alkalmazások építésére használnak. Különösen jó a Python adattudósok számára, akik nem nagyon jártasak a webfejlesztésben.
A Dash két alapvető előnye van:
- Elérhetővé teszi, hogy nagymértékben interaktív alkalmazásokat építsünk csak Python kóddal.
- Egyszerűvé teszi a Python eszközök erejének használatát az adatok manipulálásához.
ADash alkalmazások olyan webszerverek, amelyek Flaskot futtatnak és JSON csomagokkal kommunikálnak HTTP kéréseken keresztül. Frontendjük a React.js segítségével rendereli a komponenseket.
A Dash segítségével fejlesztett alkalmazások a webböngészőben renderelődnek, és szerverekre telepíthetők. Ez azt is jelenti, hogy a Dash-alkalmazások eredendően keresztplatformosak és mobilkészek.
A Dash fejlesztői hozzáférnek a mögöttes Flask-példányhoz és annak minden konfigurálható tulajdonságához. A Dash-alkalmazások képességeinek bővítéséhez a fejlesztők a Flask bővítmények gazdag készletét is használhatják.
Python webes keretrendszer kiválasztása
A megfelelő keretrendszer lehet minden, ami egy sikeres projekt kifejlesztéséhez szükséges. Nagyon reméljük, hogy ebben a cikkben talált egy érdekes keretrendszert. Van egy másik cikkünk is, a 17 legjobb Python webes keretrendszer 2017-ben, ha további lehetőségeket szeretnél felfedezni.
Örülnénk, ha ellátogatnál a vállalati GitHub oldalunkra. SteelKiwi fejlesztőink keményen próbálnak újítani a technológia világában, és minél többen vesznek részt benne, annál jobb.