Projektowanie stron i UI/UX
11 godz. 24 min · UI, UX i Webdesign
Grzegorz RógIdea ArchitectPoznasz podstawowe zagadnienia związane z funkcjonowaniem stron WWW w sieci - porozmawiamy o przeglądarce, domenach oraz DNS, wyborze odpowiedniego dostawcy usług hostingowych i najważniejszych parametrach na które należy zwrócić uwagę aby nasza strona WWW mogła skalować się wraz ze wzrostem ruchu. Powiem też o tym jak wygląda podział ról w procesie projektowania a także poznamy podstawowe pojęcia jak serwer i client-side oraz ich najważniejsze technologie html css js, pomówimy o blibliotekach i frameworkach, bazach danych i technologiach serwerowych jak asp net i php. Ta część głównie kierowana jest do osób które stawiają swoje pierwsze kroki w webdesignie i stanowi dopełnienie całego materiału.
Czy wiesz, że aż 25% ludzi na świecie korzysta wyłącznie z urządzeń mobilnych do przeglądania sieci? W tej części kursu będziesz miał okazję zainspirować się nowym podejściem do projektowania w związku ze zmieniającym się ekosystemem urządzeń i technologii mobilnych. Dowiesz się czym jest podejście mobile first oraz jakie są zalety rozpoczęcia procesu projektowego od małych ekranów. Poznasz też aktualne kierunki i trendy związane z wykorzystaniem IOT oraz VR i sensorów. Sprawdzimy statystyki i przygotujemy się do praktycznych aspektów projektowania na wiele ekranów, czyli…
Współczesny proces tworzenia serwisów, czy raczej aplikacji internetowych w ciągu ostatnich lat ewoluował w kierunku sprawnego dostarczania rezultatów i realizacji celów biznesowych w rekordowym czasie. W kursie omówimy dokładnie nowe podejście, wspominając także o metodologii Agile i podejściu Scrum, które z odpowiednimi modyfikacjami zastosujesz do każdego serwisu - niezależnie, czy tworzy go duży zespół osób, czy tylko grafik i programista. Jeśli słyszałeś o Agile UX i Lean UX to prawdopodobnie zainteresuje Cię to w jaki sposób zorganizować pracę tak aby przebiegała ona z nakierowaniem na rezultat. Powiem Ci też jak niemal całkowicie zrezygnować z przestarzałej dokumentacji na rzecz aktywnego angażowania zespołu i właściciela projektu.
Kurs, który masz przed sobą prowadzi Cię w sposób spójny i zrozumiały po kolejnych etapach procesu projektowania stron WWW. Ma on stanowić kompletne źródło wiedzy, do którego będziesz wracał w różnych fazach swoich projektów. Dlatego kolejnym działem jest wyjaśnienie zagadnienia pracy koncepcyjnej i jego pierwszego etapu jakim jest definicja celów oraz stworzenie modelu biznesowego dla powstającej witryny. Pokażę Ci jak zdefiniować cele, akcje oraz funkcje serwisu i jak powinien przebiegać podział tych elementów w fazie koncepcyjnej.
Kolejnym etapem pracy będzie zweryfikowanie tego, czy cele biznesowe serwisu odpowiadają zapotrzebowaniu oraz specyficznym wymaganiom użytkowników. Powiem Ci jak małym nakładem czasu przeprowadzić testy na użytkownikach i wyjaśnię, dlaczego są potrzebne w fazie koncepcyjnej. Zdefiniujemy także użytkowników, do których chcemy kierować swój serwis a także stworzymy persony, które będą towarzyszyć nam podczas kreowania strategii treści dla serwisu.
Ta obszerna część kursu obejmuje niezwykle ważny etap pracy koncepcyjnej, w ramach którego najpierw opracujemy schemat i architekturę treści dla naszego serwisu a następnie zbudujemy relację podstron witryny tworząc tym samym tzw. Sitemapę. Przy okazji pokażę Ci mnóstwo ciekawych narzędzi wspierających ten proces. Zajmiemy się kolejno hierarchią treści i podstron budując tym samym nawigację na naszej stronie. Pokażę Ci także szereg praktycznych, nowoczesnych rozwiązań związanych z nawigacją w serwisie.Kolejno zajmiemy się tworzeniem wizualnego schematu witryny a naszą pracę rozpoczniemy od prostych Wireframe'ów oraz projektowania w oparciu o tekst, by przejść do coraz bardziej zaawansowanych technik pracując nad mockupami oraz prototypami serwisu. Pokażę Ci szereg rozwiązań i narzędzi które będą pomocne również do tworzenia interaktywnych prototypów takich jak UX Pin, Invision czy Adobe Muse.Zbudujemy też tzw. Content Inventory, czyli repozytorium treści, które znajdą się w serwisie. Poznasz sposoby na jego łatwą aktualizację oraz narzędzia chmurowe, które pozwolą na zdalną współpracę nad treścią z innymi autorami.
Zamiast tworzenia klasycznych stron WWW opartych o podstrony, zaproponuję Ci zupełnie nowe podejście bazujące na tworzeniu systemów opartych o komponenty. Poznasz atomy oraz molekuły tworzące gotowy organizm i strony Twojego serwisu i odkryjesz mnóstwo zalet takiego podejścia, które znacznie odciąży Twój serwis i sprawi, że będziesz mógł go łatwo skalować. Pomówimy o graficznych bibliotekach komponentów oraz ich organizacji a także rozwiązaniach opartych o przeglądarkę i HTML oraz CSS. Dowiesz się czym jest Style Guide i jak stworzyć uniwersalne wytyczne do komponentów w Twoim serwisie. Pokażę Ci też najlepiej przygotowane przykłady Style Guide.
Kolejną część kursu poświęcimy na omówienie praktycznych zagadnień związanych z poszukiwaniem inspiracji stylistycznych do projektu. Pokażę Ci narzędzia, które pozwolą w łatwy sposób gromadzić inspiracje w postaci zasobów i tablic a następnie na ich podstawie stworzymy wytyczne do zaprojektowania graficznego UI serwisu. Dowiesz się czym są Style Tiles i dlaczego warto tą część procesu zaplanować w odpowiednim czasie.
To nie wszystko! Jako bonus do tego kursu otrzymasz ponad godzinną lekcję z przeglądem setek serwisów WWW, które zainspirują Cię do dalszej pracy. Przyjrzymy się aktualnym trendom w projektowaniu takim jak Flat UI czy Material Design. Będziesz miał okazję obejrzeć najlepiej zaprojektowane serwisy na Świecie i dowiedzieć się, co sprawia że ich UI i UX są wyjątkowe. To nie wszystko! W ramach kursu otrzymasz darmowe aktualizacje tego materiału w każdym roku tak, abyś mógł dopasować się do zmieniających się trendów!
W kolejnej części kursu porozmawiamy o nowych trendach w zakresie przygotowywania i optymalizacji na strony WWW. Dowiesz się jakie są popularne formaty grafiki, jak możemy zastąpić ją z pomocą typografii czy elementów CSS3 a także jak przygotować pliki na Twoją stronę WWW. Dowiesz się też jak pracować z formatem SVG i popularnymi bibliotekami wspomagającymi pracę z grafiką.Porozmawiamy także o projektowaniu w oparciu o zasoby - przekażę Ci mnóstwo linków do darmowych zasobów jak grafiki - zdjęcia, ikony, czy gotowe zestawy UI przygotowane dla Photoshop, Sketch czy Illustrator, tak abyś mógł pracować wydajniej mając do dyspozycji świetnej jakości źródła.
Kolejna część dotyczy kolorystyki na stronach WWW oraz siatki - poznasz właściwe zastosowania kolorów oraz dowiesz się jak działa psychologia kolorów. Pokażę Ci także szereg narzędzi, które ułatwią i pomogą w wyborze kolorystyki na stronę WWW. Poza tym będziemy także pracować w oparciu o siatkę jako jeden z kanonów projektowania, który łatwo zrozumiesz dzięki aplikacjom optymalizującym pracę na gridzie.
Z kursu dowiesz się także jak skutecznie pracować w zespole. Nieważne, czy jest to zespół składający się z kilkunastu osób pracujących zdalnie, czy z dwóch które ściśle ze sobą współpracują - pokażę Ci jak zautomatyzować procesy oraz jak zarządzać skuteczną komunikacją w zespole z wykorzystaniem nowych, ciekawych narzędzi. Automatyzatory zadań, repozytoria plików, praca w oparciu o chmurę czy biblioteki CC, Slack, OneDrive i wiele innych narzędzi pomoże Ci zrealizować sprawnie zadania projektowe w ramach nowego procesu Parallel Design.
Ostatnia część kursu stanowi wprowadzenie do nowoczesnego SEO, czyli optymalizacji strony pod kątem indeksowania w wyszukiwarkach. Poznasz elementarne składowe procesu zarządzania indeksowaniem oraz sposoby na monitorowanie i analitykę Twojej strony pod tym kątem. Poza tym, będziemy także mówić o promocji strony w sieci, gdzie poznasz podstawowe kanały, którymi warto obecnie docierać do Twoich odbiorców.Jako bonus do kursu znajdziesz również wzory prawidłowo skonstruowanych dokumentów!
Kurs jest przeznaczony dla wszystkich osób, które pracują ze stronami WWW - grafików, programistów, koderów, a także osób które kierują projektami webowymi lub odpowiadają za ich ousourcing w firmach. Jeśli chcesz dowiedzieć się, jak funkcjonują nowoczesne strony WWW - ten kurs jest właśnie dla Ciebie!
Witaj w kolejnej, praktycznej lekcji z Responsive Web Design, w której chciałbym zwrócić Twoją uwagę na dwa sposoby
osadzenia responsywnie obrazków oraz jeszcze jeden ciekawy sposób responsywnego tekstu, który obecnie zdobywa
popularność.
Myślę, że jest fajny pod kątem stosowania go na stronach, no i będę chciał też krótko podsumować całą część
dotyczącą RWD.
Pierwsza rzecz to responsywne obrazki i nie ma tu naprawdę zbyt dużej filozofii z tego powodu, że jeśli
zwrócisz uwagę na kod HTML, warto po prostu pamiętać o tym, że w kodzie HTML możemy umieszczać obrazki
na dwa różne sposoby.
Pierwszy sposób to jest podawanie specjalnego znacznika IMG, który pozwala nam zdefiniować w swoim
atrybucie SRC ścieżkę do pliku, konkretnego pliku, np. jpg czy png, który jest grafiką, którą sobie pobieramy.
I to jest pierwszy sposób.
Natomiast drugi sposób, jest to stworzenie kontenera, któremu zadamy w CSS'ie np. konkretne rozmiary,
czyli wysokość i szerokość, a następnie jako jego tło zrobimy to samo, czyli podamy ścieżkę do konkretnego
obrazka, no i możemy wskazać jeszcze jakieś parametry jak np. brak powtarzania, czyli to są dwa typowe sposoby,
z pomocą których wstawiamy obrazki na strony internetowe.
Teraz czy te obrazki są responsywne?
Spróbujmy przeskalować okno przeglądarki i zobaczmy co się stanie z tymi obrazkami.
No, nie powiększają się ani nie zmniejszają, tylko są przycinane.
Ten drugi obrazek też, ten który jest umieszczony w tym naszym div'e, są przycinane i pojawia się coś czego
mówiłem że nie chcemy mieć,
czyli ten poziomy scroll w przeglądarce. W związku z tym jak można włączyć responsywność obrazków?
Pierwszy rodzaj obrazków, czyli znacznik IMG, możemy włączyć responsywność bardzo, bardzo prosto w
CSS'ie adresując po prostu ten obrazek IMG, a następnie wpisując polecenie max-width, czyli maksymalna
szerokość, dwukropek, 100%. I w tym momencie, jeżeli skorzystamy z max-width: 100%; to pierwszy
nasz obrazek już jest responsywny, to znaczy, że w momencie gdy będę skalował w dół przeglądarkę jak widzisz,
on dostosowuje się i po prostu zmniejsza się, skaluje razem z moją przeglądarką.
No to teraz powinniśmy jeszcze zadbać o ten drugi obrazek, czyli drugi typ osadzania obrazków z pomocą
generowania dla nich kontenera i osadzania ścieżki w CSS'ie.
Otóż w tym przypadku posługujemy się taką właściwością jak background, a następnie określamy jej wartość,
na przykład na contain i sprawdźmy czy to zadziała.
Chyba muszę skorzystać z background-size, przepraszam. O i teraz działa, background-size to jest właściwość
która pomaga nam stworzyć responsywny obrazek, który jak widzisz skaluje się tak jak w pierwszym przypadku,
elegancko w dół, ale też dodatkowo skaluje się w górę. Jeżeli będziemy skalować, to do jego oryginalnych
rozmiarów będzie się skalował też w górę, ale de facto tutaj z powrotem działa tak samo jak pierwszy obrazek,
który zrobiliśmy, a więc max-width: 100%; oraz background-size: contain; to jest coś co pomaga nam zrobić
te responsywne obrazki.
Możemy zrobić także, i wykomentuję na moment ten pierwszy obrazek z kodu,
w przypadku tych obrazków, nie drugi tylko pierwszy wyłącznie, w przypadku obrazków osadzanych jako tło dla
kontenera,
możemy jeszcze skorzystać z jednej, fajnej wartości dla tej właściwości. Zamiast contain możemy użyć cover.
I w tym przypadku taki obrazek wypełni nam całe dostępne, całą dostępną przestrzeń w przeglądarce, czyli
background-size:
cover; sprawi, że ten obrazek po prostu będzie na 100 proc. szerokości i wysokości, przy czym zostaną zachowane
jego proporcje, więc nie zawsze musi być widać cały obrazek, ale zostaną zachowane jego proporcje, background-size:
cover;
często stosuje się do teł na stronie, które mają mieć 100% szerokości i wysokości, czyli
takie pełne tło na stronie. Nawet w przypadku wideo to też bez problemu zadziała.
A więc tak wygląda responsywność obrazków, to wszystko co powinieneś wiedzieć.
Druga sztuczka, którą chciałbym pokazać Ci jeśli chodzi o Responsive Web Design to responsywny
tekst. O tekście będzie jeszcze cała osobna część tego kursu i tam powiem ci na czym polegają emy i remy
też w kontekście responsywności.
Bardzo istotna rzecz, ale tutaj chciałbym zaznaczyć pewną ciekawostkę jaką jest tzw. viewport typography.
Na stronie CSS- tricks Chris Coyier, polecam tego autora, napisał bardzo fajny artykuł, który traktuje właśnie
o wykorzystaniu tego vievport size typography,
co znaczy, że nasz tekst może dostosować swoją wielkość do szerokości czy wysokości viewport'u, czyli naszej
przeglądarki, można powiedzieć w uproszczeniu. I można korzystać tutaj z dwóch typów jednostek czy raczej
nawet czterech, ale opiera się to o określenie vw, czyli szerokości viewport'u, vh, czyli wysokości viewport'u, ewentualnie
można skorzystać z vmin albo z vmax,
czyli wtedy będziemy korzystać z, jeżeli damy 1 to będzie 1% szerokości albo wysokości viewportu w zależności
od tego, która wartość jest mniejsza, a w przypadku vmax, w zależności od tego, która wartość jest większa.
Wiem, że nie jest to takie aż proste.
Zobacz jak to działa w praktyce.
Tu mamy przykład na css-tricks tekstu, który po prostu skaluje się elegancko i to nie jest opływanie, to nie
jest Fluid tylko zauważ, że po prostu zmienia się krój pisma, zmienia się rozmiar frontu,
de facto, nie krój pisma, zmienia się rozmiar frontu w zależności od tego jak szeroki czy wysoki jest
nasz viewport. To działa we wszystkich nowoczesnych przeglądarkach, co możesz sprawdzić na stronie caniuse.com, a w
praktyce możemy to zrobić w następujący sposób.
U mnie na CSS decku mam nagłówek, który jest ustawiony jako 10vw.
Co to znaczy? Ze będzie to 10% szerokości viewportu.
To znaczy, że jeżeli będę zmieniał wysokość strony, nic się nie będzie z nagłówkiem działo,
ale jeśli będę zmieniał szerokość, to wtedy on zawsze będzie 10% szerokości miał, miał wielkość 10%
szerokości
ten tekst. Tak samo w przypadku H2, tyle że w przypadku H2 bazujemy na vh, czyli na wysokości viewportu, która
jeżeli będzie się zmieniać, będziemy mieli 3,5%,
natomiast w przypadku akapitu, czyli tej treści mamy 1,5% vmin,
czyli chodzi o wysokość i w zależności od tego czy wysokość czy szerokość będzie mniejsza, to właśnie
będziemy brali 1,5% tej wartości.
Mam nadzieję, że to jest dla Ciebie zrozumiałe.
Tutaj mam zresztą wyjaśnienie jeszcze tych wartości, jeśli nie to zapraszam Cię, sprawdź sobie ten deck, zobaczcie
jak to działa.
Możesz pozmieniać tutaj wartości i zobaczyć jak będzie się to skalowało. I w zasadzie ja do przykładu Chrisa Coyiera
dodałbym tylko tyle, że zamiast zmniejszać tekst jeśli ten viewport będzie mniejszy, ja bym raczej starał się powiększać
trochę ten tekst, bo na urządzeniach mobilnych zależy nam żeby ten tekst był trochę bardziej czytelny,
a więc na desktopie może być trochę mniejszy, a później idziemy w drugą stronę niż Chris zaproponował, czyli
odrobinę powiększamy tekst. Jeśli chodzi o to czego nauczyliśmy się w tej lekcji odnośnie RWD to pamiętaj
o tym, żeby w przypadku Twojej strony zadać sobie ważne pytania. Przede wszystkim, które z break point'ów są
dla nas istotne i dlaczego?
To jest też w kontekście branży czy tego, kto będzie korzystał z Twojej witryny, jeżeli jest ona przewidziana
dla biznesmenów, którzy często korzystają np. z iPada, możesz powiedzieć, że dla Ciebie break point
iPadowy będzie akurat bardzo istotny i pod niego optymalizować trochę stronę, itd.
Czy zmieniać wielkość tekstu w zależności od urządzenia?
Dobre pytanie.
Warto by było zrobić to nawet nie w zależności od urządzenia, ale rozdzielczości i skorzystać z tych
technik, które pokazałem. Jak będzie wyglądać nawigacja na różnych rozdzielczościach? Czyli co zrobić z nawigacją?
Czy skorzystać z usunięcia nawigacji, tak jak pokazywałem Ci przy okazji Smashing Magazine czy ukrycia nawigacji
jak było na tej stronie Adobe Pluralist,
gdzie tam w wariancie telefonowym
taką dobrą praktyką jest właśnie ukrywanie nawigacji, żeby ona nie przeszkadzała.
To też warto sobie odpowiedzieć na takie pytanie. Jak ma zmienić się Footer. Często stopka na naszej stronie
jest bardzo rozbudowana i teraz pytanie - jak w różnych rozdzielczości będzie ona wyglądała, jakie elementy
chcemy tam zawrzeć?
Które z elementów mają być Fluid, a które Fixed? Fixed, czyli ustalone w tych jednostkach absolutnych, czyli
np. 300px, a które mają być, opływać, w których tekst ma się przelewać czy inne elementy, też
musisz zdecydować. Czy sekcje boczne, tzw. aside czy inaczej szpalty, ukrywamy czy zmieniamy ich pozycję?
Co z nimi robimy w zależności od konkretnej rozdzielczości?
No i w końcu kilka takich podsumowujących myśli. Przede wszystkim czym jest Responsive Web Design
myślę, że doskonale wiesz po wysłuchaniu tej części.
Pozwala on dopasować stronę do różnych ekranów i rozdzielczości.
Dwie podstawowe techniki RWD to technika Liquid, gdzie mamy opływanie oraz media queries, która pozwala
sprawdzić z pomocą instrukcji warunkowej, CSS'owej, jakiś warunek, a później w zależności od tego zastosować
blok kodu CSS, czyli w odpowiedni sposób oscylować naszą stronę.
Czego nie wiemy? To jest istotne.
Nie wiemy na jakim urządzeniu pracuje użytkownik. Znamy tylko rozdzielczości ewentualnie. Nie wiemy też
w jakim kontekście jest nasz użytkownik. Czy np. właśnie w autobusie, czy siedzi sobie w domu na kibelku, czy jest
np. gdzieś w zatłoczonym miejscu i ma ograniczoną podzielność uwagi w kontekście tego co przegląda na
naszej stronie.
Z jakiej odległości ogląda naszą stronę www, też nie mamy takich danych, a to też jest bardzo istotne, bo przecież
wtedy ewentualnie moglibyśmy np. powiększyć czy zmniejszyć tekst.
Musimy zdawać sobie sprawę z tych rzeczy, których nie wiemy.
Warto pomyśleć o responsywnych obrazkach i tekście.
Na pewno z pomocą media queries możesz sprawdzić nie tylko rozdzielczość, przypominam, na stronach MSDN Mozilli.
Tam było wszystko napisane co możemy sprawdzać, no i pamiętaj o popularnych rozdzielczości ,ale też o skalowaniu
względem DPI, o którym będzie trochę więcej w lekcjach o grafice i to już wszystko co chciałem powiedzieć Ci
o Responsive Web Design w tym kursie.
Do usłyszenia w kolejnych lekcjach.