Przejdź do treści

"JavaScript" to nie to samo co "Java"

Podczas mojej pracy zawodowej przychodzi mi czasem rozmawiać z ludźmi, których domeną nie jest programowanie. Tym samym nie znają języków programowania oraz różnic jakie pomiędzy nimi występują a tym bardziej ich zastosowania.

Tym artykułem chciałbym nauczyć ludzi "nietechnicznych", o dziwnym zbiegu okoliczności jaki ma miejsce w świecie programowania, mianowicie kolizji nazw dwóch języków, wymienionych przeze mnie w tytule.

Na wstępie chciałem zaznaczyć, że tym artykułem nie mam zamiaru nikogo obrażać, a tylko naświetlić problem jaki występuje, kiedy nazwy różnych języków programowania stosowane są zamiennie.

Baner promujący artykuł

Skrót?

Niestety, ale "Java" to nie jest skrót od "JavaScript".

Dla ...rekrutera

Praca rekrutera to ciężki kawałek chleba. Musi wyszukiwać programistów na rynku pracy, umawiać się z nimi na spotkania, towarzyszyć w całym procesie rekrutacji.

Cały ten proces wymaga skupienia oraz kompletu informacji o profilu programisty jaki jest poszukiwany.

Poszukiwanie programisty to chyba najtrudniejszy etap w całym procesie zatrudniania nowej osoby. I tutaj popełnianych jest wiele błędów przez początkujących Human Resource Managerów.

Znalezienie stosownego kandydata wiąże się z wysyłaniem ogromnej ilości zapytań. Łatwo jest tutaj popełnić mały błąd, który może zaważyć na odbiorze firmy do której rekruterzy poszukują pracowników.

Nie ważne jest to, czy błąd został popełniony z pośpiechu, czy z niedbalstwa. My programiści szybko wyłapiemy błędy.

Może warto aby HR managerzy byli wykształcenia technicznego? Nie wiem. Można tylko gdybać.

Poszukiwanie osoby na stanowisko JavaScript Developera to nie jest to samo, co poszukiwanie kandydata na stanowisko Java Developera.

Nie chce tutaj omawiać innych błędów, które się zdarzają, np. gdy dostaje się maile z innym imieniem i nazwiskiem odbiorcy. Tutaj niech wytłumaczeniem będzie szum komunikacyjny jaki towarzyszy rekruterom.

Rada

Moja rada jest prosta. Przywiązujcie wagę do nazwy stanowiska na jakie szukacie programisty. Java to zupełnie inny język niż JavaScript. Nie należy tego mieszać. Nigdy.

Dla ...pracowników księgarni

Większość z nas, programistów, lubi czytać książki techniczne. Zawierają one (zwykle) poukładaną wiedzę na temat danej dziedziny.

Księgarnie mają to do siebie, że zawsze panuje w nich podział tematyczny. Taki stan rzeczy bardzo odpowiada programistom, których cechuje logiczne myślenie.

Moja historia

Wchodząc do księgarni, szukam regału z książkami dotyczącymi programowania. Gdy już znajdę, szukam tych, które interesują mnie najbardziej, tj. związanych z szeroko pojętym Front-end-em.

Moim oczom ukazuje się cała gablotka na pierwszy rzut oka interesujących dla mnie książek. Jednak gdy podejdę bliżej, widzę książki pt. "Java. Podstawy.", "Java. Kompendium". Na mojej twarzy zawsze maluje się wtedy uśmiech, gdy widzę jak książki o JavaScripcie mieszają się z książkami o Javie.

Chciałbym kiedyś wejść do księgarni i nie natknąć się na taką sytuację. Miałbym wtedy większe zaufanie, że osoby pracujące w księgarni wiedzą z jakimi książkami mają do czynienia.

Rada

Moja rada jest prosta. Jeżeli, koleżanko albo kolego, pracujesz w księgarni i masz za zadanie poukładać książki w dziale INFORMATYKA, to proszę abyś robił/a to uważnie. Programisty JavaScript nie interesują książki o Javie i odwrotnie. Zapamiętaj proszę.

Dla ...początkującego programisty

Jeśli zaczynasz swoją przygodę z programowaniem, to prędzej czy później dowiesz się, że Java i JavaScript to zupełnie inne języki. Ale jeśli zabraknie Ci dowodów, to chciałbym Co przedstawić podobieństwa i różnice tych dwóch języków powstałych w tym samym roku (1995).

Podobieństwa

  • Oba języki są multi-platformowe - uruchomią się na wszystkich konfiguracjach sprzętowych.
  • Obiekty wbudowane Math i Date są takie same w obu językach.
  • JavaScript zawiera listę zarezerwowanych słów prosto z Javy
  • Składnia języka JavaScript była wzorowana na języku Java.

Różnice

  • Autorem Javy jest Sun Microsystems.
    Autorem JavaScriptu jest Netscape Communications.
  • Java jest językiem programowania.
    JavaScript jest językiem (programowania) skryptowym.
  • Java jest językiem kompilowanym i uruchamianym w wirtualnej maszynie.
    JavaScript interpretowany i uruchamiany w przeglądarce.
  • Oba języki programowania są zorientowane obiektowo, jednak JavaScript zawiera obiektowość prototypową,
    natomiast Java obiektowość klasyczną.
  • W JavaScript nie ma klas (klasy z ES2015 to tylko syntactic sugar). W Javie są klasy.
  • W JavaScript, obiekty nie posiadają prywatnych i chronionych właściwości i funkcji. W Javie można zdefiniować tryb dostępu do właściwości albo metody.

Rada

Wielkim faux pas byłoby, gdybyś jako programista nie znał różnicy między tymi dwoma najpopularniejszymi językami programowania. Proszę przeczytaj ww. punkty i połowę z nich zapamiętaj. Nalegam.

Zabawne porównania

Jak już wspomniałem, te 2 języki programowania są zupełnie odmienne. W związku z tym powstało wiele zabawnych porównań wyśmiewających zestawianie ich nazw.

O to lista najpopularniejszych:

  • PL
    • koń i koniak
    • rum i rumak
  • EN
    • ham and hamster
    • car and carpet
    • grape and grapefruit

Więcej angielskich zwrotów znajdziesz na stronie javascriptisnotjava.io

Podsumowanie

Na koniec chciałem dodać, że pisząc ten artykuł chciałem zaznaczyć jasno, że istnieją duże różnice między tymi językami. Mieszanie nazw tychże języków, szczególnie wśród programistów, rodzi mnóstwo niepotrzebnych komplikacji i nieporozumień.