Czy jest sens nauki JavaScript bez html'a?

0

Witam, stoję przed dylematem czy zaczac nauke JavaScript'u. Średnio interesuje mnie tworzenie stron internetowych a wiem, że głównie na tym polaka js i chciałbym używać tego języka bez jakiegokolwiek używania html, bardziej interesuje mnie tworzenie jakiś prostych skryptow/aplikacji lub także jakiś botów etc. Jednak mimo to zdaje mi się że js będzie lepszym wyborem niż python że względu na wielka ilość dostępnych frameworkow. A wy co uważacie?

4

(…) bardziej interesuje mnie tworzenie jakiś prostych skryptow/aplikacji lub także jakiś botów etc.

To brzmi dość ogólnie. Czy możesz podać przykład tego, co chciałbyś tworzyć za pomocą JavaScriptu bądź Pythona? Jakiś przykładowy program, biblioteka (już stworzone przez kogoś)?

1

Warto.

2

Jeśli to mają być proste skrypty, to ja bym wybrał Pythona (zakładając, że żadnego z tych języków bym nie znał).
Robi się w nim rzeczy bardziej prosto/intuicyjnie niż w JavaScript / Node.js.

4

do skryptowania masz do wyboru:

  • js: jezyk-paradoks, bardziej prototyp który ktoś wrzucił na produkcje
  • typescript: js z poprawionymi typami
  • python: całkiem zgrabny język używany w wielu obszarach, prawdopodobnie obecnie najpopularniejszy w domenach nie-web
  • bash: język do zaawansowanych skryptów shellowych (patrz rowniez PowerShell)
  • php (używany głównie jako backend do web)
  • perl: język poprzednich epok, ponoć wygodny ale dla to laika nieczytelny
  • rexx: tez wiekowy, do prostych zastosowań spoko, mało popularny, ja używałem do...generowania htmla
  • ruby: język do beckendu, używany tez jako baza do plików Vagranta
2

Odpowiadając na pytanie, czy warto się uczyć języka (np JavaScript) bez HTML'a: Oczywiście że tak.

Moim zdaniem właściwie nauka JavaScript powinna być bez HTML'a. Pracowanie jednocześnie z wieloma elementami na raz (np JavaScript+HTML+DOM) tylko miesza koncepty, i kończy się na masie antypatternów. Tak samo jest jak ktoś się uczy PHP+HTML. Druga jeszcze wada jest taka, że potem ludzie myślą że w JavaScript się nie da pisać nie w przeglądarce. Także, jeśli masz się uczyć JavaScript - to polecam najpierw bez HTML'a.

Oświadczenie

Odpowiedź na pytanie "Czy warto się uczyć JS'a bez HTML'A" to taka sama odpowiedź jak na pytanie "Czy warto się uczyć Haskella bez HTML'a", albo "Czy warto się uczyć C# bez HTML'a". Oczywiście że tak; to że webówka jest zdominowania JS nic nie zmienia; w kontekście nauki samego języka.

Odpowiadając na pytanie, czy JavaScript jest dobry do skryptowania i pisania tool'i i botów, to ja bym raczej poszedł w Pythona.

2

Gdy mam do napisania jakiś skrypt, to wybieram Pythona. Gdy mam do napisania web aplikację, to wybieram JS. Oczywiście jest to moja osobista preferencja. Znam ludzi, którzy wszystko piszą w JS.

0

Nie ma, a html mozna sie nauczyc w 1 dzien.

0

Hmm ja znów słyszałem, że poleca się zapoznac z html i css, a następnie przejść do js.

0

@TomRiddle: Dobrze wiedzieć, a co jeśli znów osoba jest bardziej zainteresowana tworzeniem stron? W jakiej kolejności warto się uczyć?

1
mechlech napisał(a):

@TomRiddle: Dobrze wiedzieć, a co jeśli znów osoba jest bardziej zainteresowana tworzeniem stron? W jakiej kolejności warto się uczyć?

Chodzi mi o to; że kiedy zaczynasz się uczyć wielu technologii na raz; zwłaszcza jak jesteś początkującym, to może Ci się wszystko pomieszać. To jest bardzo częsty przypadek, podczas tworzenia stron; ludzie się zabierają za PHP, JavaScript, HTML, CSS i czasem i SCSS; ewentualnie + Laravel i React; i wtedy łatwo jest sobie pomieszać co jest czym, i jak co ma działać.

To ma bardzo negatywne skutki; ponieważ prowadzi do masy nieutrzymywalnych aplikacji, błędów w bezpieczeństwie, powstania masy miskoncepcji i błędów; nie mówiąc o pośrednich skutkach; np takiej "ślepoty" na dobre rozwiązania przez niepotrzebyn coupling zależności.

Więc, moja propozycja:

  • Naucz się dowolnego języka, ale samego: C#, PHP, JavaScript, Java, Python. Jak zrozumiesz jak się tworzy dobrze w nich aplikacje, z klasami, funkcjami, testami, modularyzacją, clean codem, etc. wtedy zabierz się za coś ambitniejszego; wcześniej Ci to tylko namiesza.
  • Potem ogarnij statyczne strony, z samym tylko HTML'em i CSS; to może być albo webówka taka normalna, albo np electron.
  • Kiedy już wiesz że umiesz zarówno JS osobno i HTML/CSS osobno; możesz zacząć budować aplikacje webowe, pamiętając oczywiście że to JavaScript sam w sobie jest Twoją aplikacją a HTML/CSS jest tylko interfejsem użytkownika; takim samym jak XAML dla C#, Swing dla Javy, czy Tkinter dla Pythona.
  • Potem możesz dorobić do tego backend, który jest inną aplikacją tak na prawdę.

Jesli chcesz się nauczyć dobrze oczywiście. Webówka to dosyć zwodnicza dziedzina; bo z jednej strony musisz pracować z wieloma techonologiami (backend, frontend, persystencja, protokoły, cache, cors), i to jest od razu na starcie. Więc należałoby się spodziewać, że trzeba już mieć spore doświadczenie żeby zrobić coś dobrego;

natomiast z drugiej strony jest pierdylion tutoriali jak "prosto" można sobie zrobić swoją pierwszą stronę (że "wystarczy" tylko index.html, albo "tylko" npm react-scripts); co jest w ciul zwodnicze, bo to wcale proste nie jest; bo to kłamstwa. Jakikolwiek tutorial mówi Ci że możesz "łatwo" zrobić aplikację webową kłamie, bo to nie jest łatwe :D No chyba że ktoś jest geniuszem i jest w stanie ogarniać temat z dziesięciu technologii po jednym artykule. Tzn, owszem, możesz postawić prosto jakiś prototyp i zobaczyć jak coś działa, ale to jest zła droga bo:

  1. Po pierwsze to że zrobisz prototyp, to nie znaczy ze umiesz od razu zrobić dobrą apkę z tego
  2. Rzuca Cię na głebokie wody, bo od razu musisz siedzieć w wielu technologiach od startu
  3. Od razu musisz ogarniać co jest serverem i klientem
  4. Zaleca Ci się ogarnianie projektu złożonego ze zbyt wielu technologii; w której dodatkowo żadnej nie znasz dobrze

Żeby łatwo zrozumieć jak poważne mogą być w skutkach takie "mieszanie" technologii, spytaj dowolnego początkującego w stronach jaka jest różnica między "\n", "\\n" a <br/> :D Bo to nie jest wina tych ludzi że tego nie rozumieją; tylko tutoriali które rzuciły delikwenta w zbyt duży zakres technologii na raz.

Jesli chcesz być amatorem, to możesz robić wszystko na raz; ale wtedy jak pokarzesz komuś swoją apkę to złapie się za głowie i powie "Panie, kto to Panu tak spie".

1 użytkowników online, w tym zalogowanych: 0, gości: 1