Modułowość

Nowoczesne podejście do projektowania aplikacji

Written By Coder Matthew

Last updated 6 months ago

1) Wprowadzenie

Platforma Bitfun została zbudowana w sposób modułowy. Oznacza to, że system składa się z wielu wymiennych bloków, które można samodzielnie aktualizować, testować i rozwijać. Każdy moduł odpowiada za osobny obszar — np. interfejs, SEO, nagłówki, stopki, obsługę API czy elementy gier.

Dzięki temu zmiana w jednym miejscu automatycznie odświeża wszystkie strony, które z danego modułu korzystają

2) Czym jest modułowość?

Modułowość to projektowanie oparte na mniejszych segmentach kodu, które można wymieniać i łączyć jak klocki.

Korzyści:
✔ prostsza edycja
✔ porządek w projekcie
✔ łatwe ponowne używanie kodu
✔ większa spójność

3) Require, Require_once, Include (PHP)

Bitfun opiera backend o moduły ładowane przez:

3.1) require_once

Najważniejsza funkcja w architekturze Bitfun.
Ładuje plik jednorazowo. Jeśli został już załadowany — drugi raz się nie wykona.

Używana do ładowania modułów takich jak:

  • konfiguracje

  • połączenie z bazą (db.php)

  • header + footer

  • SEO

Przykład ogólny:

Przykład użycia w BitFun:

3.2) require

Ładuje plik zawsze — musi istnieć, inaczej generuje błąd krytyczny.

3.3) include

Ładuje opcjonalnie.
Brak pliku = ostrzeżenie, strona dalej działa.

4) Moduły Frontend

CSS i JS w Bitfun są oddzielone na moduły:

  • animacje

  • układ strony

  • mechanika gier

  • formularze

  • efekty UI

Ładowanie odbywa się za pomocą:

Zmiana np. w jednym arkuszu CSS automatycznie wpływa na wszystkie podstrony.

5) Moduły w Bitfun

auth.js - Walidacja wszystkich formularzy
db.php - Połączenie z bazą danych
index.css - Główny motyw platformy
game.css - Główny motyw gier
game.php - Moduł zaciągania wybranej gry
footer.php - Moduł stopki
header.php - Moduł nawigacji
seo.php - Moduł SEO

6) Optymalizacja wyświetlania gier

Jednym z najważniejszych przejawów modułowości w Bitfun jest fakt, że wszystkie minigry korzystają z jednej strony: game.php.

Nie ma osobnych stron typu:

  • game_snake.php

  • game_flappy.php

  • game_clicker.php

Zamiast tego jedna strona pobiera dane gry przez argument GET, np.:

/game.php?id=1 
/game.php?id=2 
/game.php?id=7

Dzięki temu:

  • system jest ultralekki

  • dodanie nowej gry wymaga tylko dopisania jej w bazie

  • UI i layout pozostają wspólne i modułowe

  • leaderboards, statystyki, SEO i moduły graficzne działają z automatu

  • kod się nie duplikuje

Jak to działa?

  1. Użytkownik wchodzi na np. /game.php?game_id=4

  2. PHP pobiera $_GET['id']

  3. Na podstawie tego ID ładowane są:

    • dane gry

    • leaderboard

    • opis

    • skrypty JS konkretnej gry

  4. Interfejs jest ten sam, zmienia się zawartość modułów.

7) Zastosowanie

8) Podsumowanie

Modułowość w Bitfun obejmuje:

  • require_once / include do ładowania wspólnych komponentów

  • moduły CSS/JS

  • centralne pliki header/footer/seo

  • jedną stronę game.php dla wszystkich gier (GET → dynamiczny moduł)

  • minimalizację duplikacji kodu

  • łatwość utrzymania i dodawania nowych funkcji

Bitfun dzięki temu działa szybciej, jest prostszy w rozwoju i zachowuje pełną spójność.