• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Kurs INF.03/EE.09 | JavaScript

Object Storage Arubacloud
+1 głos
907 wizyt
pytanie zadane 27 marca 2022 w Nasze poradniki przez xVarmondx Początkujący (350 p.)
zmienione kategorie 27 marca 2022 przez ScriptyChris

Siemka.

Jeżeli ktoś nie wie, to tworzę kurs przygotowujący do egzaminu zawodowego z kwalifikacji INF.03/EE.09 w formacie filmów video na kanale YouTube. Szczerze mówiąc naprawdę się do niego przyłożyłem i opowiadam wszystko od podstaw od A-Z nawet jeśli chodzi o HTML, CSS, JavaScript, PHP czy MySQL czy nawet tworzenie grafik i multimedii - wszystko opowiadałem dokładnie i z punktu widzenia osoby, która wie co może sprawiać więcej trudności. Chciałem, żeby nie oglądało się nudnie, ponieważ dodałem interaktywne animacje, prezentacje w materiale video, które powinny lepiej uzmysłowić poznawany temat. Jeżeli jesteście ciekawi jak to wygląda to zapraszam do kliknięcia linka poniżej i ocenienia. W sumie nawet kurs może tyczyć się osób, które nigdy nie miały styczności z tymi językami (html, css, js, php, mysql) ponieważ jak pisałem wyżej opowiadam wszystko od zera. Nie chce się rozpisywać dalej, po prostu oceńcie i napiszcie swoje oceny lub uwagi - może akurat mój kurs Wam się przyda ;P

Do kanału: https://www.youtube.com/channel/UCSec5iS3dALaKdiyKqO91tg

Do pierwszego filmu (HTML): https://www.youtube.com/watch?v=xdIDZKxcgHk&t=8510s

Do drugiego filmu (CSS): https://www.youtube.com/watch?v=BOC5zQoQBvM

Do trzeciego filmu (Tworzenie Grafiki): https://www.youtube.com/watch?v=lOEMrzbp2Vk

Do czwartego filmu (Multimedia): https://www.youtube.com/watch?v=Bg0iu7Q1J8Q

Właśnie wyszedł piąty odcinek poświęcony programowaniu w javascript: https://www.youtube.com/watch?v=0mLX-ecYGyY

Pozdrawiam. Jeżeli się spodobało możecie zostać ze mną na dłużej na pewno nie zaprzestaniemy na kursie INF.03/EE09

1
komentarz 27 marca 2022 przez VBService Ekspert (253,340 p.)
edycja 27 marca 2022 przez VBService

BTW, masz błąd w linkach dwa ostatnie opisywane

Do czwartego filmu (Multimedia): https://www.youtube.com/watch?v=Bg0iu7Q1J8Q

Właśnie wyszedł piąty odcinek poświęcony programowaniu w javascript: https://www.youtube.com/watch?v=0mLX-ecYGyY

mają adres (href): https://www.youtube.com/watch?v=lOEMrzbp2Vk

 

w filmie o javascript literówk(i)a

 

P.S. Nie czepiam się, nic osobistego, sam pomysł, bardzo fajny, wykonanie, też ciekawe, wiadomo przy takiej ilości materiału, zawsze jakiś błąd się "zakradnie". Pozdrawiam.  smiley

2
komentarz 27 marca 2022 przez xVarmondx Początkujący (350 p.)
Dzięki za Twój komentarz. Oczywiście jestem świadomy, że podczas tworzenia materiałów mogły wystąpić literówki. Dla mnie nie jest to nic strasznego, ale było to spowodowane jak sam mówisz naprawdę ogromną ilością materiału do przerobienia, a żeby się z tym wyrobić pracowałem nawet po 16h dziennie, przez co czasami nawet nie dostrzegałem literówek, tylko skupiałem się na przygotowaniu materiałów i dobrego wytłumaczenia zagadnienia. Pozdrawiam.

1 odpowiedź

+1 głos
odpowiedź 27 marca 2022 przez ScriptyChris Mędrzec (190,190 p.)

Moim zdaniem lepiej by było rozbić taki kurs na osobne odcinki. Wygodniej by było go oglądać i ewentualnie wyszukiwać konkretne odcinki z Google czy wyszukiwarki YouTube-owej na Twoim kanale (można wtedy precyzyjniej otagować każdy odcinek). Pewnie dodatkowym plusem dla Twojego kanału było by, że zbierałbyś wyświetlenia z każdego odcinka osobno, więc sumarycznie miał byś ich więcej.

Poniżej rzeczy, które moim zdaniem nadają się do poprawy. Jako, że kurs jest długi, to nie obejrzałem go całego, a przeklikałem fragmentami. Jeśli więc któryś punkt został lepiej wyjaśniony lub sprostowany w innym miejscu, to przepraszam:

  • Gdzie najlepiej umieszczać skrypt na stronie [5:29]:
    Nie, to umieszczenie skryptu w <head> jest jedną z gorszych praktyk, ponieważ (jak słusznie zauważyłeś) blokuje renderowanie strony. Lepiej jest umieścić go pod koniec </body> lub dodać atrybut defer bądź async, albo pobawić się z <link> + prefetch/preload, żeby odpowiednio ustalić priorytet ładowania skryptu. Kod skryptu można też wywołać na zdarzenie DOMContentLoaded lub load (jeśli część skryptu musi poczekać na załadowanie wybranego fragmentu DOM lub nie ma się kontroli nad miejscem umieszczenia skryptu w HTML-u). Jeśli umieści się skrypt przed elementem, do którego chce się odnieść, to przeglądarka nie znajdzie elementu umieszczonego w DOM po skrypcie.
    Ostatecznie używasz async i dlatego Twój skrypt nie generuje błędu podczas operowaniu na DOM-ie, ponieważ skrypt ładuje się później (aczkolwiek async nie jest na tyle bezpieczny w kontekście operowania na DOM co defer, ponieważ przeglądarka nie czeka ze skryptem asynchronicznym na załadowanie się DOM-u). Argument, żeby nie dodawać skryptu w <body>, bo można tym samym modyfikować DOM na oczach użytkownika jest moim zdaniem nietrafiony. Przecież apki często modyfikują coś na stronie na oczach użytkownika. Poza tym, jeśli jakiś ciężki skrypt jest umieszczony w <head>, to przeglądarka niepotrzebnie czeka na jego pobranie i wykonanie, a użytkownik później uzyskuje dostęp do treści strony.
  • Zmienne [27:47]:
    Brakuje omówienia const i let (co jest jako tako usprawiedliwione w 4:50:50). Rozumiem, że kurs jest pod przygotowanie do egzaminu INF.03/EE09, ale w wytycznych nie znalazłem zawężenia wymogów do konkretnego standardu ECMAScript, więc nie wiem czy użycie let/const było by na takim egzaminie błędem. Natomiast na pewno przydało by się je omówić pod kątem nauki do pracy zawodowej czy ogólnie w ramach stosowania dobrych praktyk i omijania problemów, które generuje var.
  • Funkcje związane z pracą na tablicach [3:02:24]:
    length to nie jest funkcja, a własność. Zauważyłem, że (przynajmniej pod względem nazewnictwa) wrzucasz własności i funkcje do jednego worka, nazywając je funkcjami. O ile funkcje mogą być własnościami obiektu, to nie każda własność jest funkcją.
  • Zasięg zmiennych w funkcji (Zmienne lokalne i globalne) [4:49:46]:
    Nie, funkcje tworzone słówkiem function nie są tworzone w zasięgu globalnym. O tym, czy funkcja (a raczej dowolna zmienna) należy do jakiegoś scope, decyduje miejsce jej utworzenia.
    To, że funkcję tworzoną słówkiem function można wywołać przed miejscem jej utworzenia spowodowane jest hoistingiem. Nie ma to związku z zasięgiem - można bowiem utworzyć funkcję słówkiem function wewnątrz innej funkcji i ona będzie dostępna w zasięgu lokalnym, ale również będzie można ją wywołać przed miejscem deklaracji. Ten błąd jest powielony w 5:05:44.
    [4:56:29] Można dopowiedzieć, że w trybie 'use strict' przypisanie wartości do nieistniejącej zmiennej rzuci błędem, co zapobiegnie niejawnemu stworzeniu zmiennej globalnej.
  • Funkcje anonimowe [5:05:00]:
    Nie, wewnętrzna nazwa funkcji nie jest bezużyteczna. Jest dostępna wewnątrz funkcji (już nie na zewnątrz) i przydaje się do rekurencji oraz debugger przeglądarki powinien tę nazwę pokazać w call stacku.
    [5:05:17]:
     nie, nie musimy pamiętać o używaniu średnika w JavaScript z powodu obecności mechanizmu ASI (choć używanie średników pomaga ustrzec się przed niespodziewanymi efektami działania ASI).
  • Obiekty w JavaScript [5:50:44]:
    Można dodać przecinek przy ostatniej własności obiektu (podobnie jest z ostatnim argumentem w funkcji czy ostatnim elementem tablicy). To tzw. trailling comma i przydaje się np. przy zwiększeniu czytelności diffów w kodzie.
  • Czym jest DOM (Document Object Model) [6:37:17]:
    Przeglądarka ponownie renderuje tylko element (i jego potomków), na którym modyfikuje się innerHTML. Nie renderuje ponownie całej strony, chyba że zmodyfikuje się innerHTML dla całej strony. Całą stronę można wyczyścić i ponownie wyrenderować przy użyciu document.write.  Nie wiem czy to miałeś na myśli, ale z tłumaczenia wychodzi, że mówisz o ponownym renderowaniu całej strony przez innerHTML, a nie wybranego fragmentu.
  • Eventy [8:35:01]:
    Nie, to nie jest lista eventów, a event handlerów.

Taka ogólna rada: widać, że mówisz na spontanie, co z jednej strony jest spoko, bo mówisz z głowy, a nie czytasz z kartki. Tyle, że momentami słychać, że się plączesz lub powtarzasz, co może utrudniać zrozumienie omawianych zagadnień; również w kontekście całego kursu pewnie dało by się skrócić kilkanaście minut, gdybyś się niepotrzebnie nie powtarzał. ;) Więc, moim zdaniem, bardziej profesjonalnie było by, gdybyś sobie spisał scenariusz poszczególnego zagadnienia/odcinka i redukował powtórzenia. A ewentualne przejęzyczenia/zaplątania nagrywał od nowa. Ewentualnie przećwicz sobie kilka razy daną sekcję, razem z pisaniem kodu, żebyś się pewniej czuł prezentując ją na materiale. Pisanie kodu na żywo jest generalnie ryzykowne, bo ludziom zdarza się popełniać literówki - pół biedy, jeśli to nie spowoduje błędu w kodzie, który trzeba debugować w trakcie prezentacji, ale literówki też mogą utrudnić zrozumienie materiału przez odbiorców.

1
komentarz 27 marca 2022 przez xVarmondx Początkujący (350 p.)
Dzięki za Twój komentarz. Co to pewnych wymienionych przez Ciebie rzeczy nie jestem w stanie już tego poprawić jak i całego kursu ponieważ są już wrzucone i czekają na swoją premierę w następnych tygodniach. Chciałem wytłumaczyć bardzo prosto pewne zagadnienia, nie zagłębiając się w szczegóły: "rzeczy zapamiętać, że tak jest i na razie tyle", bo cały czas liczyłem się, że czas biegnie a egzamin w czerwcu i raczej większość nie będzie parzyła dlaczego to działa tak a nie inaczej i dlaczego działa to w taki czy śmaki sposób tylko działa i tyle i wiadomo jak dojść do tego, żeby działało. Również wiem, że czasami mogłem się powtarzać lub coś poplątać, ale jak pisałem koledze wyżej nie boję się to tego przyznać bo materiału było baardzo dużo, a czasu coraz mniej więc musiałem czasami nawet pracować 16h dziennie.

Mimo wszystko wielkie dzięki za zwrócone uwagi, na pewno w pewny sposób sprawią, że mogę stać się odrobinę lepszym niż byłem do tej pory. Niestety czasu nie cofniemy, jeżeli można by to nazwać błędami to niestety one już zostaną ale idziemy do przodu i stajemy się coraz lepsi. Pozdrawiam ;)

Podobne pytania

+2 głosów
1 odpowiedź 405 wizyt
pytanie zadane 13 marca 2022 w Nasze poradniki przez xVarmondx Początkujący (350 p.)
0 głosów
0 odpowiedzi 363 wizyt
pytanie zadane 18 kwietnia 2022 w PHP przez xVarmondx Początkujący (350 p.)
+1 głos
0 odpowiedzi 302 wizyt
pytanie zadane 10 kwietnia 2022 w PHP przez xVarmondx Początkujący (350 p.)

92,568 zapytań

141,422 odpowiedzi

319,638 komentarzy

61,957 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...