Wydajne Tworzenie Stron WWW
2 godz. 2 min · Full-stack i Programowanie
Piotr PalarzWeb DeveloperNiezależnie od tego jak skomplikowana jest dana strona czy aplikacja internetowa, zawsze składa się ona z przynajmniej dwóch komponentów - struktury opisanej w HTML i wyglądu nadanego w CSS. Praca z tymi językami może czasami przyprawić o ból głowy, szczególnie wtedy, gdy tracimy czas na szukanie powodu "rozjeżdżającego się" layoutu lub złej wielkości fontu i miejsca, w którym został on nadpisany. W takich sytuacjach Chrome DevTools to nieoceniona pomoc. Dzięki temu narzędziu w mgnieniu oka znajdziesz zbyt szeroki element, zmienisz jego style "na żywo" i upewnisz się, że problem został rozwiązany. W kursie poznasz wszystkie techniki pracy z HTML i CSS, których wykorzystanie znacznie przyspieszy i uprości Twoją pracę.
Przygotowywanie stron na urządzenia mobilne nie należy do najłatwiejszych zadań. Składa się na to przede wszystkim fakt, iż do czynienia mamy z bardzo wieloma rozdzielczościami telefonów czy tabletów. W kursie zobaczysz, w jaki sposób skalować swoją stronę odwzorowując różne urządzenia, wyświetlać Media Queries czy emulować sensory ruchu. Dowiesz się również jak symulować wolniejsze połączenie internetowe, z którym mamy często do czynienia w mobilnych sieciach, a także jak spowolnić procesor, aby odwzorować słabszy sprzęt, jakim bez wątpienia są urządzenia mobilne.
Współczesne strony internetowe to nie tylko HTML i CSS. To także JavaScript - a nawet... sporo JavaScriptu. Z tego powodu narzędzia deweloperskie przeglądarek oferują i na tym polu wiele możliwości. Jedną z nich jest konsola, która pozwala wykonywać kod JavaScript w obrębie aktualnie otwartej strony. To właśnie tam możemy eksperymentować, podglądać logi czy błędy. Kiedy jednak stajemy przed rozwiązaniem trudniejszego problemu, często niezbędne jest skorzystanie z tzw. debuggera. Z kursu dowiesz się jak debugować swoje aplikacje, aby proces ich tworzenia był jak najprzyjemniejszy. Poznasz sposoby wykonywnania kodu linijka po linijce, gdzie na każdym etapie uzyskasz wgląd we wszystkie dane niezbędne do znalezienia problemu lub przetestowania tworzonego rozwiązania.
Nim dowolna strona internetowa zostanie wyświetlona, musi najpierw zostać do przeglądarki przesłana z serwera w formie kodu. Początkowo to tylko kod HTML, chwilę później CSS, JavaScript, fonty, obrazki, multimedia. Wszystkie te zasoby mają wpływ na szybkość ładowania się strony, a także jej renderowania. Tworząc serwis, bardzo łatwo "przesadzić" i stracić kontrolę nad wydajnością tego procesu.Tutaj z pomocą przychodzi panel Network, który omówimy w kursie. To tam znajdziemy wszystkie zapytania wysłane do serwera, dokładne dane na temat czasu pobierania każdego zasobu, statusy odpowiedzi ciasteczka i wiele więcej.
Choć zarówno komputery osobiste jak i urządzenia mobilne z roku na rok stają się coraz wydajniejsze, to i technologie tworzenia aplikacji internetowych idą do przodu. Oznacza to tylko tyle, że coraz bardziej zaawansowane aplikacje, wymagają do płynnego działania, coraz mocniejszych urządzeń. Trend ten można jednak w pewnym stopniu zatrzymać, skupiając się na tym, czy aby na pewno tworzone przez nas rozwiązania są dobrze przemyślane i wolne od błędów, które mogą powodować nadmierne zużycie pamięci czy czasu procesora. W kursie zobaczysz jak badać wydajność naszego kodu w kontekście CPU i pamięci RAM oraz na jakie pułapki zwracać szczególną uwagę.
Kurs ten jest dla wszystkich osób tworzących strony i aplikacje internetowe. Nieważne czy dopiero rozpoczynasz swoją przygodę z Web Developmentem czy jesteś już weteranem w tej branży. Materiał ten pokaże Ci nowoczesne techniki pracy, które przyspieszą i uproszczą proces tworzenia i testowania stron WWW. Kurs został podzielony w taki sposób, aby zarówno osoby znające wyłącznie HTML i CSS, jak i te korzystające już z języka JavaScript, znalazły porady odnośnie tych tematów.
W tej lekcji pokażę ci najważniejsze możliwości dostępne
w panelu elements natomiast zanim to zrobię chciałbym ci pokazać jeszcze dwa
triki i swoją drogą w niektórych lekcjach będą się takie triki przewijać
nie będę im dedykował osobnych lekcji pierwszy jest taki że możemy z
pomocą command i plus minus lub na windowsie control plus minus
zauważ powiększać cały ten interfejs więc możemy to zrobić w ten
sposób natomiast jeżeli chciałbyś przywrócić domyślną wielkość to naciskamy
command 0 lub control 0 więc na moim monitorze tak by
wyglądała domyślna wielkość stąd ja sobie to troszeczkę powiekkszę druga rzecz
którą chciałem ci pokazać jest taka że kiedy tutaj mamy aktywny ten panel
chrome devtools to mamy taki skrót klawiaturowy jak command shift p na
macu lub control shift p na windowsie czyli taki które możesz znać z edytora
na przykład vs code czy z sublime text jeżeli sobie coś takiego wciśniemy
to zauważ że mamy taki command palette gdzie możemy za pomocą komend
wykonywać bardzo wiele akcji lub przeskakiwać do różnych paneli więc
warto o tym pamiętać że tutaj możemy szybciej wykonać pewne akcje jedną
z akcji którą chciałem ci pokazać i jest zmiana domyślnego szablonu być może zauważyłeś
w lekcji poprzedniej że miałem ciemny szablon teraz mam jasny możemy
tutaj wpisać team w ten sposób i wybrać switch to dark team i
w ten sposób chrome devtools będzie wyglądać i tak sobie to pozostawimy w tym kursie
przejdź już zatem do panelu elements gdzie będę chciał ci pokazać
najważniejsze rzeczy z nim związane pierwsza rzecz jest taka że
to całe drzewo dom o którym mówiłem że jest ono aktywną czy żywą
reprezentacją tego co widzi przeglądarka to drzewo można modyfikować
i teraz co to oznacza oznacza to tylko tyle że jak
przyjdziemy sobie do jakiegoś przykładu może tutaj
nawet i będziemy chcieli edytować na przykład tekst żeby zobaczyć jak
on będzie wyglądał to możemy jak widzisz kliknąć taki element wybrać inspect
jest to element span tutaj go sobie rozwinę pokazuje nam w css takie
pseudoelementy jak before i after tutaj również możemy je modyfikować natomiast
ważna uwaga jeżeli usuniesz właściwość content tutaj przez przypadek to
wtedy te elementy całkowicie znikną i będziesz musiał odświeżyć
stronę natomiast sam tekst jeżeli kliknę dwukrotnie to zauważ że mogę
go modyfikować i
cokolwiek sobie tutaj dopisać teraz żeby z tego wyjść wystarczy że odkliknąć gdzieś na ten
element i na stronie na żywo zostało to zmienione oczywiście jak
odświeżę stronę to te zmiany już nie będą tutaj widoczne bo to jest tylko
tutaj u nas lokalnie na chwilę zmienione ale to pozwala
nam szybko zmienić jakiś tekst i zobaczyć jak zachowa się dany element na przykład tekst
na przycisku możemy zmienić i wtedy zobaczymy jak ten przycisk się rozciągnie jak będzie
wyglądał czy nie zaburzy to naszego layoutu i tak dalej przeszedłem
sobie teraz do przykładu 54 bo chciałbym ci pokazać jak możemy modyfikować
atrybuty i tutaj będzie to dobrze widoczne mamy tutaj takie oto przyciski
możemy sprawdzić jak one wyglądają zauważ że są to elementy li tutaj swoją
drogą możemy sobie te panele przesuwać i zmniejszać zwiększać
są to przyciski za pomocą elementów li zrobione i zauważ
że ten który jest aktywny ma klasę active i teraz co ciekawe jeżeli chciałbyś dodać
taką klasę do jakiegoś innego elementu wystarczy żetutaj gdzieś są jego atrybuty
klikniesz dwukrotnie i możesz dopisać klasę active wciskam
enter i zauważ że ten przycisk teraz też ma klasę active natomiast jeżeli chciałbyś
dostać nowy atrybut który tutaj nie istnieje to klikamy sobie w tym miejscu i możemy
za pomocą tab przeskakiwać po wszystkich atrybutach i jak przeskoczymy do końca zauważ
że tutaj się nam takie wolne pole pojawiło mogę kliknąć nacisnąć strzałeczkę
i tutaj sobie coś wpisać więc dowolny atrybut który chciałbyś tutaj napisać na
przykład title również możesz dodać
wciskam enter i taki atrybut został tutaj dodany jeżeli chciałbyś
tylko dodawać klasy to możemy to zrobić również w inny sposób kliknijmy sobie na ten przycisk
i teraz tutaj w tym panelu mamy coś takiego jak cls jeżeli
kliknę to od razu widzimy jakie klasy już ten element ma możemy je wyłączać
i włączać jak widzisz teraz ten przycisk już nie wygląda tak
jak powinien dlatego że pozbyliśmy się jego głównej klasy natomiast również
możemy tutaj dodać kasę i mamy tutaj auto completion to jest bardzo ważne że
chrome devtools pokazuje nam wszystkie klasy jakie są w naszych plikach css dostępne
wciskam teraz enter i zauważ że taka klasa również została tutaj
dodana no i oczywiście również będzie to odzwierciedlone
w tym miejscu czyli widzimy na żywo w drzewie dom że faktycznie taka klasa
na tym elemencie się znajduje kolejną rzeczą którą możemy robić
tutaj w panelu element w drzewie dom jest zmiana kolejności elementów
może ja tą stronę odświeżę żebyśmy mieli to tak jak było
na początku i zauważ jedną fajną rzecz mogę kliknąć dowolny element i przeciągnąć
go w inne miejsce i nie jestem pewny czy teraz to
zadziałało zobaczymy pierwszy był web design okej
teraz na pewno zadziałało mamy mobile design i tak dalej więc możesz
również taki element spróbować wyciągnąć dać go gdzieś indziej na przykład tą h2 gdybyśmy
chcieli zobaczyć jak to będzie wyglądać jeżeli ona by była w drzewie dom w innym
miejscu na przykład tutaj zobacz to
tak się zmienia to na naszej stronie czyli nie muszę tego w kodzie źródłowym zmieniać mogę na szybko tutaj zobaczyć
i jakie da to efekty kolejną rzeczą jest modyfikacja
kodu html wcześniej pokazałem ci że możemy zmodyfikować na przykład tekst ale
jeżeli sobie kliknę na dowolny element prawym przyciskiem i wybiorę edit as html
to mogę zmodyfikować cały ten kod oczywiście mogę dodawać klasy atrybuty cokolwiek
natomiast mogę również dodać jakieś nowe elementy i
później wystarczy odkliknąć czyli wyjść z tego elementu i zostanie do zaaplikowane
i teraz do czego może się to przydać oczywiście do bardzo wielu rzeczy ale
ja często wykorzystuje to po to aby na przykład powielić jakieś elementy tutaj mam
6 takich kafelków w tej galerii ale wyobraź sobie że tworzysz stronę
na przykład z użyciem jakiegoś CMS-a typu wordpress i dodałeś sobie jeden wpis na
stronie ten jeden wpis ci się wyświetla on może być w formie takiej galerii to zależy jaki
masz layout może to wyglądać inaczej i teraz chciałbyś zobaczyć jak twoja strona na
przykład taki grid zachowa się jak będziesz miał cztery pięć dziesięć takich elementów no
i naturalnie musiałbyś w tym systemie powielić taki wpis na przykład 10
razy odświeżyć stronę i dopiero wtedy zobaczyć efekty natomiast można to
zrobić tutaj dynamicznie czyli jeżeli mam taki element li to
mogę tutaj kliknąć jego rodzica wybrać edit ashtml
i zauważ że skopiujemy sobie taki element li i po prostu wkleję
go gdzieś poniżej odkliknę na ten element i jeden dodatkowy element pojawił mi
się na stronie więc gdybym miał tylko jeden skopiował bym sobie to na przykład sześciokrotnie
i dzięki temu mógłbyś sprawdzić w jaki sposób zachowa się nasza strona następną
przydatną rzeczą tutaj może odświeżę którą chciałbym ci pokazać polecenie
scroll into view jak masz jakąś długą stronę i tutaj w drzewie dom znajdziesz
jakiś element który cię interesuje ale nie wiesz gdzie on dokładnie jest na
przykład tutaj u nas akurat prawie wszystko widać ale powiedzmy że nie widać
footera to możesz kliknąć na taki element i wybrać tutaj scroll
into view i zauważ że widok został przescrollowany tak żeby
ten element był widoczny następnym fajnym trikiem który chciałbym ci tutaj pokazać
jest ukrywanie elementów klikniemy sobie na ten element i teraz możliwości
są dwie mogę ten element usunąć naciskając przycisk delete i
ten element nam zniknął całkowicie z drzewa dom został usunięty co ważne
możemy zrobić command z lub control z żeby taką zmianę wycofać ten element
się pojawi z powrotem ale czasami chcemy go tylko na chwilę ukryć bo nam przeszkadza
coś nam zakrywa i tak dalej to wystarczy że nacisnę kiedy tam będzie zaznaczony
przycisk H na klawiaturze zauważ że on został ukryty ale
nadal okupuje swoje miejsce i stało się tak dlatego że została do niego
dodana taka klasa jak web inspector hide shortcut i możemy
w panelu styles zobaczyć że ona dodała visibility hidden i tutaj flaga
important czyli ten element tak naprawdę został tylko ukryty z użyciem
visibility hidden jeszcze raz mogę nacisnąć H zanim to zrobię zauważ że tutaj
mamy taką kropkę która nam pokazuje że coś tutaj się dzieje i że
jeszcze raz nacisnę H to ten element pojawił się na nowo przedostatnią
sztuczką którą ci pokażę jest kopiowanie kodu jakiegoś elementu wyobraź sobie że
jesteś na swojej lub na przykład cudzej stronie i chciałby skopiować fragment kodu
który ktoś zastosował możesz zaznaczyć taki element wybrać prawy przycisk i
następnie copy i mamy coś takiego jak copy outer
html outer html jeżeli korzystałeś z javascript
z obiektowego modelu dokumentu to kopiuje po prostu cały ten element i jego kod html
kiedy inner html skopiowałby tylko to co jest wewnątrz i teraz
jeżeli byśmy gdziekolwiek sobie chcieli wkleić coś takiego jeżeli tutaj bym
sobie zrobię nowy plik zauważ że dokładnie kod html
tego elementu został skopiowany i na koniec jeszcze jeden trik w panelu
elements w tym drzewie dom otóż jeżeli wciśniemy sobie tutaj command f albo control
f na windowsie to mamy wyszukiwarkę która pozwala nam przeszukiwać to drzewo
dom i możemy szukać na przykład po zwykłym stringu czyli tekście wpiszę
wszystkie i zauważ że znalazło nam przycisk który
ma taki tekst ale również możemy skorzystać z selektora czyli mogę wpisać
na przykład klasę projects powiedzmy sort i
zauważ że znalazło mi ten element który ma taką klasę więc tutaj możesz z normalnych
selektorów css również korzystać to za tym tyle jeżeli chodzi
o drzewo dom pokazałem ci w zasadzie wszystkie najważniejsze rzeczy jak
możemy z nim pracować pod prawym przyciskiem możesz jeszcze znaleźć kilka innych opcji polecam
ci abyś sobie z nimi poeksperymentował natomiast w następnej lekcji skupimy się na panelu
css który znajduje się poniżej