FastAPI
minuta czytania
FastAPI to nowoczesny framework do tworzenia aplikacji internetowych. Został stworzony z myślą o prostym i szybkim tworzeniu aplikacji, a także o ułatwieniu pracy developerom.
Framework FastAPI stał się bardzo popularny w ostatnich latach ze względu na swoją szybkość i wysoki poziom kontroli nad pisanym kodem.
API budowane za pomocą FastAPI pisze się szybko ze względu na zwięzły kod, minimalną jego duplikację, a także dobrą dokumentację. FastAPI jest w pełni kompatybilne ze standardem OpenAPI.
Zbudowanie prostego API ogranicza się do 9 linijek kodu.
from typing import Optional
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
async def read_root():
return {"Hello": "World"}
@app.get("/items/{item_id}")
async def read_item(item_id: int, q: Optional[str] = None):
return {"item_id": item_id, "q": q}
FastAPI posiada wbudowany moduł dokumentacji
FastAPI posiada wbudowany moduł generujący automatycznie dokumentację zarówno w formacie Swagger jak i ReDoc. Dokonując zmian w modelach danych z wykorzystaniem klasy BaseModel z Pydantic dostajemy zaktualizowaną i opisaną dokumentację pod URLem: http://localhost:8000/docs.
FastAPI - szybkość, bezpieczeństwo i duża społeczność
Wykorzystując takie moduły jak oauth2, http, PyJWT możemy uzyskać zabezpieczenia aplikacji takie jak OAuth2, czy też zabezpieczenie tokenem JWT. Dodatkowo wykorzystując odpowiednie middleware'y możemy narzucić inne standardy bezpieczeństwa, należą do nich chociażby CORS (Cross Origin Resource Sharing).
Popularność rozwiązań open-source mierzy się za pomocą liczby osób współtworzących daną aplikację. W przypadku FastAPI jest to 284 aktywnych kontrybutorów, a także 50 tysięcy osób aktywnie śledzących zmiany w frameworku. Dla porównania niegdyś najbardziej popularny Django posiada społeczność 61 tysięcy osób aktywnie śledzących zmiany, a także 2156 osób aktywnie kontrybuujących do zmian we frameworku.
Dodatkowo w niezależnych testach przeprowadzanych przez https://www.techempower.com/benchmarks/#section=data-r20&hw=ph&test=composite&l=dbf0n3-7b&a=2&f=zik0zj-qmx0qn-zhwum7-zik0zi-z8kflr-yyku7z-zik0zj-zijunz-zik0zj-zik0zj-zik0zj-1kv uzyskuje jedno z najwyższych miejsc wśród framework'ów wokół których oparty jest rozbudowany ekosystem rozwiązań. Są szybsze rozwiązania, ale na pewno nie z taką społecznością programistów i dostępnych pluginów i wtyczek. Warto wspomnieć, że autor FastAPI, Samuel Colvin jest dostępny na Twitterze i nietrudno się z nim skontaktować w razie poważnych problemów związanych z narzędziem.
Nasza oferta
Web development
Dowiedz się więcejMobile development
Dowiedz się więcejE-commerce
Dowiedz się więcejProjektowanie UX/UI
Dowiedz się więcejOutsourcing
Dowiedz się więcejPowiązane artykuły
Czym są Azure Functions i jakie są ich główne zalety?
7 cze 2024
Azure Functions to usługa serverless od Microsoftu, która umożliwia tworzenie i uruchamianie małych fragmentów kodu w chmurze bez potrzeby zarządzania infrastrukturą serwerową. Dzięki swojej elastyczności i skalowalności, Azure Functions pozwalają programistom szybko reagować na zdarzenia, automatyzować procesy i integrować różne usługi. W tym artykule przyjrzymy się, czym dokładnie są Azure Functions oraz jakie są ich główne zalety dla programistów i przedsiębiorstw.
![related-article-image-chmura, Azure Functions](/_next/image?url=https%3A%2F%2Fd2ooyrflu7lhqd.cloudfront.net%2Fa3fb4e5_544b_4e1e_bc99_f294d1eadc7f_b4c557c718.jpg%3Fformat%3Dauto&w=3840&q=75)
Zastosowanie Cyklu Deminga w zarządzaniu jakością
7 cze 2024
Cykl Deminga, znany również jako PDCA (Plan-Do-Check-Act), to fundamentalne narzędzie w zarządzaniu jakością, które pomaga organizacjom w ciągłym doskonaleniu swoich procesów. Wprowadzony przez W. Edwards Deminga, cykl ten stał się kluczowym elementem strategii zarządzania jakością w różnych branżach na całym świecie. W tym artykule omówimy, jak skutecznie zastosować Cykl Deminga w praktyce, aby osiągnąć lepsze wyniki i stałe ulepszanie procesów biznesowych.
Strategie pull i push w marketingu: Podstawowe definicje i różnice między nimi.
6 cze 2024
W dzisiejszym zróżnicowanym świecie marketingu, strategie pull i push odgrywają kluczowe role w kształtowaniu relacji między markami a ich klientami. Chociaż obie strategie mają ten sam cel — zwiększenie sprzedaży i widoczności — różnią się znacznie metodami osiągania tych wyników. Ten artykuł wyjaśni podstawowe definicje i różnice między strategiami pull i push, aby pomóc marketerom wybrać najlepsze podejście dla swoich unikalnych celów biznesowych.
Macierz Eisenhowera w pracy zespołowej: Jak poprawić efektywność zespołu?
6 cze 2024
W dzisiejszym szybkim świecie zarządzanie czasem i priorytetami staje się kluczowe dla efektywności każdego zespołu. Macierz Eisenhowera, narzędzie do klasyfikacji zadań według ich pilności i ważności, oferuje prostą, ale potężną metodę do optymalizacji pracy grupowej. W tym artykule przyjrzymy się, jak zastosowanie tej metody może pomóc zespołom w różnych branżach zwiększyć ich produktywność i skuteczność.
Inline CSS: Co to jest i jak różni się od stylów zewnętrznych i wbudowanych?
6 cze 2024
Inline CSS to metoda stosowania stylów bezpośrednio w tagach HTML, co różni się od zewnętrznych i wbudowanych arkuszy stylów. W tym artykule przyjrzymy się, jak inline CSS funkcjonuje, jakie ma zalety i ograniczenia, oraz kiedy jest najbardziej odpowiedni w stosunku do innych metod stylizacji.
Podstawy D-Tale: Wprowadzenie do eksploracji danych
5 cze 2024
D-Tale to narzędzie do eksploracji danych, które umożliwia użytkownikom łatwe i intuicyjne przeglądanie oraz analizowanie dużych zbiorów danych. Dzięki bogatemu interfejsowi graficznemu i integracji z Pythonem oraz Pandas, D-Tale staje się niezastąpionym narzędziem dla analityków danych i programistów. W tym artykule przedstawimy podstawowe funkcje D-Tale, pokażemy, jak zacząć pracę z tym narzędziem oraz omówimy jego kluczowe zastosowania w codziennej pracy analitycznej.
Multimodal Interaction: Co to jest i jakie są jej podstawowe założenia?
5 cze 2024
Multimodal Interaction to zaawansowane podejście do interakcji między użytkownikami a systemami komputerowymi, które wykorzystuje różnorodne formy komunikacji, takie jak głos, gesty, dotyk i wzrok. Celem tego podejścia jest stworzenie bardziej naturalnych i intuicyjnych interakcji, które naśladują sposób, w jaki ludzie komunikują się ze sobą. W niniejszym artykule przyjrzymy się, czym dokładnie jest multimodalna interakcja, jakie są jej podstawowe założenia oraz jakie korzyści i wyzwania z nią związane.
Zobacz wszystkie artykuły