Jak “gadać” z lotniskiem? I to w dwóch językach 🤯

Ostatnio pisałem o stworzonej przeze mnie aplikacji API Spotify. Poznałem tam REST API od zewnątrz. Przyszedł czas na kolejny, naturalny krok: stworzenie własnego API od podstaw. W tym celu wróciłem do wcześniejszego projektu – symulatora lotniska.

🎯 Wyzwanie

Głównym zadaniem było dodanie do istniejącego już backendu warstwy API. Chodziło o to, by umożliwić zewnętrznym narzędziom komunikację z symulacją – monitorowanie jej stanu oraz sterowanie nią w czasie rzeczywistym.

Po kilku wieczorach kodowania, moje lotnisko wystawia teraz światu następujące endpointy:

Endpointy REST API

  • GET /status/uptime – sprawdza, jak długo działa serwer
  • GET /planes/count – zwraca liczbę aktywnych samolotów
  • GET /planes/active, /landed, /crashed – listy samolotów o konkretnym statusie
  • GET /planes/<id> – szczegółowe info o konkretnym samolocie
  • POST /control/pause, /resume, /shutdown – pełna kontrola nad symulacją!

🛣️ Droga i… coś ekstra

Projekt nie kończył się jednak na samym REST. Kolejnym zadaniem było zaimplementowanie tych samych funkcjonalności przy użyciu RPC. Pozwoliło mi to w praktyce porównać oba podejścia, ich wady i zalety oraz sprawdzić, która wersja mi bardziej pasuje.

Wynik

Nie tylko stworzyłem swoje pierwsze REST API od zera, ale też od razu porównałem je w praktyce z RPC. Ogromna dawka praktycznej wiedzy i kolejne poznane możliwości. 💪

Link do repo z obiema implementacjami API:

https://gitlab.com/DawDro/airport-automatic-landing-system

#Programowanie #Backend #RESTAPI #RPC #API #Portfolio #Projekty #Developer #NaukaProgramowania #Python #Projects #SoftwareDevelopment #LearningByDoing

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola oznaczone są *

*
*