Zaplanuj i utwórz tablicę, która będzie przechowywać komentarze do zdjęć. Każdy komentarz musi być przypisany do konkretnego zdjęcia poprzez id zdjęcia. Każdy komentarz musi mieć ocenę 1-5. Każdy komentarz musi mieć treść. Wygeneruj kilkanaście komentarzy.
Etap 2
Dokończ funkcję która przeszuka tablicę z komentarzami i wyświetli te dotyczące wybranego zdjęcia:
Niektóre problemy ze sprzętem komputerowym są typowe i ich rozwiązania warto zapamiętać. W internecie takie problemy są omawiane wiele razy – nie zawsze dobrze. Ten quest jest zachętą by w formie strony internetowej utworzyć katalog dobrze opisanych rozwiązań, a przy okazji przeczytać o typowych rozwiązaniach.
Opis
Strona ma być katalogiem. Najważniejsze jest więc znalezienie odpowiedniej ilości opisów problemów wraz z rozwiązaniami. Mogą to być artykuły, wątki na forach czy filmy.
W waszym katalogu każdy problem ma być odpowiednio opisany:
Tytuł – krótki i komunikatywnie wyjaśniający o czym będzie mowa
Opis – jedno lub dwa zdania na temat problemu
Link
Kategoria (komputer, peryferia, oprogramowanie,…)
Zdjęcie lub grafika ułatwiająca szybkie odnalezienie treści (opcjonalnie)
Imię osoby która wybrała daną treść i ją poleca
Strona internetowa może być prosta, ale ma wyglądać przyzwoicie. Istotna jest:
merytoryczna treść strony
logiczny podział problemów na kategorie
wybrana technologia i jakość wykonania strony
brak niewartościowego spamu
Technicznie stronę można wykonać na jeden z trzech sposobów omówionych w tutaj w sekcji „Możliwe rozwiązania” (pomijając githuba).
Na przygotowani strony jest miesiąc. Cała grupa otrzymuje identyczną ocenę. Jeśli ktoś z zespołu nie angażuje się, to rolą zespołu jest zaangażować niezaangażowanego lub zrobić za niego : )
Chcemy tworzyć aplikacje webowe z bogatym frontendem łatwiej niż w surowym JS. Jedną z opcji jest React. React wymaga użycie Node.js. Nowy projekt warto postawić przy pomocy Vite.
Git to system kontroli wersji, który umożliwia śledzenie zmian w kodzie, ułatwiając współpracę w zespołach programistycznych oraz zarządzanie różnymi wersjami projektu. Działa lokalnie na komputerze i pozwala między innymi na łatwe odzyskiwanie wcześniejszych wersji kodu.
GitHub to platforma do hostowania zdalnych repozytoriów Git, która umożliwia programistom współpracę, przeglądanie kodu i zarządzanie projektami w chmurze. Alternatywami dla GitHub są m.in. GitLab, Bitbucket czy SourceForge.
Podstawowe pojęcia
Repository (repozytorium) – Miejsce, gdzie przechowywane są wszystkie wersje projektu. Może być lokalne (na komputerze) lub zdalne (na serwerze).
Commit – Zatwierdzenie zmian w repozytorium. Każdy commit zapisuje migawkę stanu projektu w danym momencie.
Branch (gałąź) – Oddzielna linia rozwoju projektu. Umożliwia pracę nad różnymi funkcjami lub wersjami jednocześnie bez wpływu na główną wersję kodu (domyślnie master lub main).
Merge – Łączenie zmian z jednej gałęzi do drugiej. Zazwyczaj używane, aby scalić zmiany z gałęzi pobocznej do głównej (np. feature do main).
Staging (index) – Proces przygotowania zmian do zatwierdzenia. Pliki, które są w obszarze staging, będą uwzględnione w następnym commicie.
Pull – Pobieranie najnowszych zmian zdalnego repozytorium i scalanie ich z lokalnym.
Push – Wysłanie lokalnych commitów do zdalnego repozytorium.
Clone – Skopiowanie istniejącego zdalnego repozytorium do lokalnej maszyny.
Fork – Kopiowanie zdalnego repozytorium do własnego konta na GitHubie (lub innym hostingu Git), co pozwala na niezależną pracę nad projektem.
Origin – Domyślna nazwa dla zdalnego repozytorium, z którego projekt został sklonowany.
Remote – Zdalne repozytorium, z którym połączone jest lokalne repozytorium.
Szybki start
Najpierw zainstaluj Git na komputerze: git-scm.com.
Wszystkie typowe funkcje można łatwo wyklikać, ale warto przynajmniej przeczytać jakie polecenia są wykonywane w tle w czasie klikania. Na początek wystarczy rozumieć to co w filmie i umieć wyklikać to co poniżej.
Jeśli chcesz używać poleceń – wykonuj je w wierszu poleceń swojego systemu (cmd, terminal) lub w wierszu poleceń swojego edytora kodu. Na początek potrzebna jest minimalna konfiguracja:
git init # Inicjalizuje nowe repozytoriumgit clone <url> # Klonuje zdalne repozytoriumgit status # Pokazuje stan plikówgit add <plik> # Dodaje plik do staging areagit add . # Dodaje wszystkie zmienione plikigit commit -m "wiadomość" # Zapisuje zmiany z komentarzemgit push # Wysyła commity do zdalnego repogit pull # Pobiera i scala zmiany ze zdalnego repogit branch # Wyświetla listę gałęzigit branch <nazwa> # Tworzy nową gałąźgit checkout <gałąź> # Przełącza na inną gałąźgit checkout -b <nazwa> # Tworzy i przełącza na nową gałąźgit merge <gałąź> # Scala gałąź z obecnągit log # Pokazuje historię commitówgit diff # Pokazuje niezapisane zmianygit reset <plik> # Usuwa plik ze staging areagit rm <plik> # Usuwa plik i dodaje zmianę do staginggit stash # Tymczasowo zapisuje niezacommitowane zmianygit stash pop # Przywraca ostatnie stashgit remote -v # Pokazuje zdalne repozytoria
Zadanie
Wybierz prosty projekt z kilkoma plikami napisanymi w dowolnym języku.
Zainicjuj folder projektu w git.
Dodaj pliki.
Utwórz startowy commit. Pamiętaj o sensownym opisie.
Wprowadź zmiany w kodzie.
Utwórz kolejny commit. Pamiętaj o sensownym opisie.
Dodaj nowy plik do projektu i znów utwórz nowy commit. Pamiętaj o sensownym opisie.
Utwórz zdalne repozytorium (np. na GitHubie) i połącz je z lokalnym repozytorium.
Wprowadź zmiany w kodzie.
Utwórz kolejny commit. Pamiętaj o sensownym opisie.
Zsynchronizuj zdalne i lokalne repozytorium.
Ustaw repozytorium zdalne jako publiczne i wyślij mi linka Teraz możesz używać swojego konta na GitHubie jako quasi-bloga : )
Zbuduj swoją responsywną tabelę wykorzystując display: grid; Możesz do tego użyć AI, jednak pamiętaj, że to Ty masz rozumieć kod. Następnie osadź tę tabelę wewnątrz sekcji <article> w „Prostym kodziku #2” z questa HTML i CSS beginner tak by strona wyświetlała się poprawnie zarówno na telefonie, tablecie jak i na komputerze PC
Utwórz lub wygeneruj skrypt wyświetlający obrazy z tablicy w formie galerii. Prosta wersja galerii ma wyświetlać miniatury (3 w wierszu) wraz z opisem i kategorią, a po kliknięciu w miniaturę ma wyświetlać powiększony obraz wraz z opisem i kategorią. Ulepszona wersja ma dodatkowo po kliknięciu w kategorię wyświetlać galerię obrazów z tej kategorii. Poświęć czas na zrozumienie kodu i poeksperymentowanie z nim. Uprość go.
Dalszy etap to zintegrowanie galerii ze stroną z questa Prosta strona w PHP. Ten etap koniecznie zrób ręcznie. Galerię dodaj jak jedną z podstron w menu, tak by menu było widoczne zarówno na stronie kategorii jak i w widoku pojedynczego zdjęcia, ale tak, żeby nie była widoczna na wszystkich podstronach.
Dobrze byłoby rozdzielić kod na kilka plików:
dane.php – tablice z danymi
index.php główny plik strony
galeria.php – skrypt galerii
styl.css – arkusz styli
Przydatna będzie wtedy funkcja include() lub require().
A jeśli potrafisz, to czy uczysz się na zawsze, czy na tydzień? Moim zdaniem (i nie tylko moim) warto uczyć się trwale. Ciągle czegoś nowego, bo wtedy jest…
Ciekawość to energia nauki. Pytaj: „Dlaczego?” …i znajduj odpowiedzi, bo zapamiętujemy to, co racjonalne, logiczne.
Zamieniaj teorię w działanie. Praktyka i ruch wzmacniają ślady w pamięci.
Rób sobie proste i bezstresowe testy. Wtedy usilnie wydobywasz informacje i tworzysz trwały ślad pamięciowy.
Korzystaj z fiszek Regularnie wracaj do nich po dniach i tygodniach.
Dziel czas nauki na sesje z długimi przerwami. To eliminuje złudzenie, że już umiesz wynikające z bycia na świeżo z materiałem.
Zmieniaj miejsce nauki. To tworzy dodatkowe ślady pamięciowe.
Głębokie przetwarzanie informacji jest kluczowe. Inne spojrzenie, wypisanie punktów, znalezienie przykładów lub wyjątków, stworzenie grafiki to sposoby głębszego wgryzania się w tekst.
Samodzielnie twórz notatki. Organizuj i przetwarzaj treści samodzielnie. Podkreślanie czy zakreślanie to za mało.
Przeplataj treści zamiast uczyć się temat po temacie. To sprawi, że mózg będzie pracować na wysokich obrotach.
Robiąc notatki odfiltrowuj tylko ważne informacje. To wymaga wysiłku, ale przyczynia się do głębszego przetwarzania.
Wykorzystaj mnemotechniki. Czasem pomocne są sztuczki pamięciowe, takie jak metoda pałacu pamięci.
Otaczaj się bodźcami związanymi z nauką. Wykorzystaj pamięć utajoną. W ten sposób dziecko uczące się mówić poznaje gramatykę.
Ucz się przez nauczanie innych. Nawet jeśli uczysz się sam, wyjaśniaj informacje na głos.
Powyższe metody to streszczenie jednej książki o skutecznym uczeniu się. Polecam ją każdemu, kto nie lubi działać nieskutecznie.
Używanie AI do rozbudowy kodu (a nie do wygenerowania całego kodu).
Zadanie
Zrozum kod. Dodaj do niego tablicę z reklamami, tablicę z linkami do socjal mediów oraz tablicę z adresami obrazków. Dodaj kod php wyświetlający losową reklamę, zestaw linków do mediów społecznościowych oraz trzy losowe zdjęcia z tablicy (zamiast stałego artykułu). Nie wolno wklejać całego kodu do AI. Sam połącz kody!