Czas realizacji
6-8 tygodni
Cały semestr na realizację - planujcie mądrze i pracujcie systematycznie!
Projekt semestralny to pełnoprawna aplikacja webowa, którą tworzysz wspólnie z partnerem. W przeciwieństwie do miniprojektu, masz większy zakres funkcjonalności, ale też wsparcie drugiej osoby i możliwość podziału zadań.
Czas realizacji
6-8 tygodni
Cały semestr na realizację - planujcie mądrze i pracujcie systematycznie!
Forma
Praca zespołowa (2 osoby)
Razem planujecie, razem kodujecie, razem odpowiadacie za efekt.
Tematy
20 tematów do losowania
Temat jest losowany przez nauczyciela dla zespołu.
Warianty
3 poziomy trudności (A/B/C)
Wybieracie wspólnie - zadeklarujcie na początku pracy.
| Element | A (3.0) | B (4.0-5.0) | C (5.0-6.0) |
|---|---|---|---|
| Formularz HTML | ✓ | ✓ | ✓ |
| Walidacja PHP | ✓ | ✓ | ✓ |
| Zapis do JSON/TXT | ✓ | ✓ | ✓ |
| Odczyt i wyświetlanie | ✓ | ✓ | ✓ |
| Podstawowy CSS | ✓ | ✓ | ✓ |
| Min. 2 elementy JS | ✓ | ✓ | ✓ |
| README.md | ✓ | ✓ | ✓ |
| Historia operacji (log) | ✓ | ✓ | |
| Filtrowanie / sortowanie | ✓ | ✓ | |
| Podział na pliki PHP | ✓ | ✓ | |
| Komunikaty sukcesu / błędu | ✓ | ✓ | |
| Rozbudowana walidacja | ✓ | ✓ | |
| Sesje PHP | ✓ | ✓ | |
| System ról (admin/user) | ✓ | ||
| Autoryzacja (hasła hashowane) | ✓ | ||
| MVC-lite | ✓ | ||
| Raporty i statystyki | ✓ | ||
| Zaawansowana walidacja biznesowa | ✓ |
Dobierzcie się w zespół (2 osoby)
Otrzymajcie temat (losowanie przez nauczyciela)
Zadeklarujcie wariant (A, B lub C)
Zaplanujcie strukturę aplikacji
Podzielcie zadania
Zaimplementujcie funkcjonalność
Przetestujcie projekt
Przygotujcie dokumentację
Oddajcie w terminie
[KLASA]_projekt_[temat]_[nazwisko1]-[nazwisko2].zipPHP
htmlspecialchars() przy wyświetlaniuHTML + CSS
JavaScript
Dane
| Kryterium | Punkty | Co to znaczy? |
|---|---|---|
| Realizacja wymagań | 35 | Czy aplikacja działa zgodnie z tematem i wariantem? |
| Poprawność kodu | 20 | Czy kod jest czytelny, logiczny, bez błędów? |
| Walidacja i bezpieczeństwo | 15 | Czy dane są walidowane? Czy output jest zabezpieczony? |
| JavaScript | 10 | Czy są min. 2 sensowne elementy JS? |
| Dokumentacja (README) | 10 | Czy README jest kompletne i pomocne? |
| Współpraca w zespole | 10 | Czy podział pracy był sprawiedliwy? Czy obaj rozumieją kod? |
| SUMA | 100 |
Jak dobrze współpracować?
Komunikacja:
Podział pracy:
Integracja:
Osoba A:
Osoba B:
Wspólnie:
Osoba A:
Osoba B:
Problem:
Wykorzystajcie cotygodniowe lekcje!
Nie czekajcie do ostatniego dnia! Podczas każdej lekcji możecie:
Tydzień 1-2: Otrzymanie tematu, planowanie, podział pracy, struktura projektu
Tydzień 3-4: Implementacja wariantu A (podstawowa funkcjonalność)
Tydzień 5-6: Rozbudowa o wariant B (jeśli wybraliście), integracja kodu
Tydzień 7: Funkcje wariantu C (jeśli celujecie wysoko), dopracowanie
Tydzień 8: Testowanie, dokumentacja, przygotowanie do obrony