Python a Django

Python je pro Eluviany denním chlebem

Pythonové backendy jsme vytvořili a dodnes provozujeme u mnoha našich klientů z oblasti automotive, např. e-commerce řešení odbavující tisíce objednávek denně; event managementu, např. synchronizace tisíců kalendářových událostí denně napříč velkou korporací; nebo financí, např. internet banking pro správu cizoměnových (forexových) účtů. Python máme fakt rádi, proto ho využíváme i u vlastních projektů a interních aplikací, které dennodenně usnadňují rutinní práci našim vývojářům.

Python nás oslovil především pro jeho ohromné vyjadřovací schopnosti, rozsáhlou bázi knihoven i nevídanou podporu komunity. Díky tomu je vývoj v tomto jazyce velice efektivní a rychlý, výsledný kód pak snadno pochopitelný a přehledný. Navíc se hodí pro různé typy aplikací, od jednoduchých servisních skriptů až po komplexní backendy databázových aplikací, REST API, integrační služby, zpracování dat nebo AI a machine-learningové komponenty.

Jenže samotný programovací jazyk bez silného frameworku by byl jako zbloudilý vesmírný modul bez mateřské základny. My Eluviané rádi kombinujeme Python s frameworkem Django. To nám umožní ještě efektivněji využít hotových řešení, architektury, návrhových vzorů a knihoven, které daný framework nabízí. Kdybychom to hodně zjednodušili, nesnažíme se vynalézt kolo, ale necháme se vést zkušenostmi, které open source komunita za bezmála 15 let (v případě Djanga), resp. 30 let (v případě Pythonu), nasbírala a nesčetněkrát ověřila v praxi.

Co nám Django konkrétně dává

Django je open-source webový framework pro Python s ověřenou architekturou a hotovými komponentami pro typické části webových aplikací – práci s databází a datovým modelem, autentizaci a správu uživatelů, oprávnění, administrační rozhraní, formuláře a validaci dat, bezpečnostní mechanismy i API. Framework ale vždy vybíráme podle konkrétního problému: když se lépe hodí lehčí řešení (například FastAPI nebo Flask) nebo úplně jiná technologie, sáhneme po ní. Technologie má sloužit produktu, ne naopak.

Python a Django pohánějí i naši platformu Habarico

Python a Django nepoužíváme jen na klientských projektech – stojí na nich také Habarico, naše model-driven platforma pro rychlejší vývoj podnikových informačních systémů. Habarico je sada implementačních knihoven a volitelných hotových mikroslužeb: habarico převede byznysová data do datového modelu – tedy popisu toho, co aplikace ukládá, v jakém formátu, pod jakými názvy a v jakých vztazích – a z něj automaticky vygeneruje informační systém včetně moderního, reaktivního uživatelského rozhraní. Změny v datovém modelu se do UI promítají prakticky okamžitě, takže odpadá velká část frontendové práce a mizí nutnost kooperace backendového a frontendového týmu. V praxi to znamená méně vývojářů, rychlejší dodání a méně chyb (řádově až o třetinu nižší náklady na vývoj).

Na frontendu Habarico generuje rozhraní v Reactu (s Material UI) – viz JavaScript, TypeScript a React. Na backendu nativně podporuje právě Python + Django; alternativně umí i Ruby on Rails – viz Ruby (možné jsou i porty pro Java, .NET a další backendové jazyky). Součástí jsou i hotové mechanismy jako autentizace a oprávnění nebo mikroslužby pro transakční e-maily a notifikace.

Zjistit více o platformě: habarico.com

Časté dotazy

Python je open-source programovací jazyk používaný pro vývoj webových aplikací, backendů, automatizaci, integrace a práci s daty. Oblíbený je především díky čitelnosti, velkému množství knihoven a rozsáhlé komunitě.

Django je open-source webový framework pro Python. Poskytuje architekturu a hotové komponenty pro vývoj komplexnějších webových aplikací, například práci s databází, správu uživatelů, autentizaci nebo administrační rozhraní.

Ne univerzálně. Django je velmi vhodné pro komplexnější webové a databázové aplikace, pro některá řešení se ale hodí lehčí framework (například FastAPI nebo Flask) nebo jiná architektura. Framework se vybírá podle konkrétního produktu a jeho požadavků.

Na webové aplikace, podnikové informační systémy, backendy, API, integrační vrstvy, automatizaci nebo práci s daty. Vhodnost vždy závisí na charakteru konkrétního projektu.

Ano. Samotná velikost projektu není důvodem Python nepoužít. U velkých systémů je podstatnější správná aplikační architektura, infrastruktura, práce s databází, testování a způsob dalšího vývoje.

Ano. Python je open-source programovací jazyk a také velká část jeho ekosystému včetně frameworku Django je vyvíjena jako open-source software.

Ne. Běžně vznikají aplikace složené z více technologií. Python může tvořit backend nebo jednu službu většího systému a komunikovat s dalšími částmi prostřednictvím API nebo integrační vrstvy.

Ano. Python a Django používáme například v naší model-driven platformě Habarico (viz sekce výše).
Máte zájem o spolupráci?

Kontaktujte nás

Adresa

Pláničkova 445/13
162 00 Praha 6

Telefon

+420 777 646 771

E-mail

info@eluvia.com
Vývoj v Pythonu a Django | Eluvia