JavaScript na przyszłość

JavaScript na przyszłość
0

Cześć,
Przeglądam oferty na Java Developer i w większości oczekuje się frontu - JavaScript.
Nigdy się tym nie interesowałem ale przeglądając to forum ludzie raczej nie mówią o czystym JavaScripcie tylko o poszczególnych frameworkach opartych na tym języku.
Jak wygląda to w firmach? Czysty JS? Raczej powinni zaznaczyć czego oczekują.
I teraz pytanie do Was, jakiego frameworku najlepiej się nauczyć aby był dobrą inwestycją na przyszłość?
Wiele osób mówi o AngularJS ale chyba powstała druga wersja, która będzie wypierała pierwszą, to się zgadza? W takim razie będzie się odchodziło od tego pierwszego?
Chcę iść w kierunku fullstacka ale oczywiście powoli, nie zamierzam na raz zacząć uczyć się Kotlina, Javy, JS (kilku frameworków) i nic nie umieć dobrze.
Proszę Was abyście wskazali najlepszy "typ" JavaScriptu, który za szybko nie zniknie z projektów aplikacji webowych.
Oczywiście mogę rozumieć, że najlepiej znać kilka (tak jak w Javie odnośnie aplikacji webowych) więc prosiłbym najlepiej jakąś krótką listę: na wstępie to - potem to no i dołóż to.
Pozdrawiam

AL
Twoje pytanie troszkę brzmi jak: "zerknijcie w szklaną kulę i powiedzcie mi co będzie w JavaScripcie za rok" ;) Frontend to dziwne miejsce, w którym w ciągu 3 miesięcy potrafi się bardzo wiele zmienić :)
LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:8 minut
  • Postów:8398
3

I teraz pytanie do Was, jakiego frameworku najlepiej się nauczyć aby był dobrą inwestycją na przyszłość?

ŻADNEGO. Ż. A. D. N. E. G. O.

Żadny framework JavaScriptowy nie może być traktowany jako inwestycja na przyszłość, to nie Ruby, że masz Ruby on Rails i trzyma się przez lata. Każdy framework w JS ma chwilę popularności, a potem pojawia się kolejna mutacja tych samych albo nieco innych wzorców.

Dlatego warto się uczyć samego języka JavaScript (teraz standardem jest ES6, ale już powoli wchodzą kolejne wersje, transpilowane przez Babel), bo to ci przynajmniej zostanie.

Owszem, korzysta się z frameworków, ale są to tylko narzędzia, które mają za zadanie ułatwić pracę (w rzeczywistości ją często utrudniają, bo się zaczyna obchodzić ograniczenia frameworka, zamiast pisać prosto do celu). Jeśli nauczysz się Angulara, Reacta czy czegoś innego, co przestanie być kiedyś modne, to nic ci się nie stanie - przynajmniej zostanie ci w głowie wiedza z JavaScriptu czy z szeroko pojętej umiejętności programowania, rozwiązywania praktycznych problemów. Najbardziej liczy się moim zdaniem know how "jak coś zrobić, jak przekuć wymaganie biznesowe na rzeczywistość" a nie znajomość frameworków typu pamiętanie która funkcja co robi.

"typ" JavaScriptu, który za szybko nie zniknie z projektów aplikacji webowych.

zastanów się o co pytasz. Biorąc dosłownie to pytanie to powiedziałbym, że takim typem JavaScriptu który szybko nie zniknie będą toporne animacje w jQuery na stronkach Wordpressowych, ale nie wiem czy chcesz w to iść ;)


edytowany 2x, ostatnio: LukeJL
0

Rozumiem, dziękuję za odpowiedzi.
W takim razie czy różnice między frameworkami są takie duże?
Jeśli dobrze zrozumiałem, to migracja na nowy/inny znając jeden nie byłaby wielkim problemem.

Czy ucząc się od razu AngularJS pojmę JavaScript czy powinno się przerobić JavaScript a potem oddzielnie AngularJS?

DE
LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:8 minut
  • Postów:8398
0

Czy ucząc się od razu AngularJS pojmę JavaScript czy powinno się przerobić JavaScript a potem oddzielnie AngularJS?

To jest tak - generalnie to każdy framework został stworzony żeby rozwiązać jakiś problem, zaproponować jakieś rozwiązania na pewne bolączki programowania. Dlatego ludzie korzystają i uczą się frameworków, żeby rozwiązać jakieś problemy (np. Angular czy React rozwiązują problemy wynikające z pisania dużych aplikacji przeglądarkowych z zaawansowanym interfejsem)

Jeśli chcesz się jakoś przygotować do szukania pracy to najlepiej spróbować zrobić jakąś realną aplikację przeglądarkową, która coś robi konkretnego, używając JS i choćby Angulara (albo Reacta, czy nawet jQuery -- ewentualnie nawet dla treningu zrobić tę aplikację kilka razy, po kolei w kilku różnych bibliotekach).

Bo nauka frameworka, żeby tylko znać framework jest trochę bez sensu.

polecam:
https://www.quora.com/Which-is-the-best-JavaScript-framework-to-choose-in-2015
https://www.quora.com/Which-should-I-learn-Mithril-Vue-or-Angular


0

Aplikację w Springu potrafię przygotować i zależy mi na dobrym froncie. Dlatego jak mówisz o realnej aplikacji to takiej, której mógłbym połączyć backend + JS i Angulara? Bo zapewne można zrobić aplikacje działającą samą w sobie w JS ale czy z logiką biznesową?

1

JavaScript czysty i Node.js po stronie serwera to wydaje się mieć przyszłość. A jak już tego się nauczysz, wybierzesz dany framework jaki będzie modny w 2018, np Angular 3.

0

Dziękuję, czyli Node.js będzie zastępował aktualnie moje JSP (to samo działanie)? Na razie jeszcze nie do końca wiem jak to ze sobą połączę ale domyślam się że RESTowo wysyłając JSona. Bo już mi sie troche pomieszało... JavaScript służy do "płynnych" przejść i ogólnie cudownych fajerwerków, prawda? W każdym razie i tak będę musiał korzystać z HTML i CSS?

GI
  • Rejestracja:ponad 8 lat
  • Ostatnio:ponad rok
  • Postów:37
0

Z mojego punktu widzenia ostatnio jest wlasnie boom na Angular-a.

Wiele firm przenosi swoje stare aplikacje w do JAVA,spring,hibernate +Angular JS i tacy Full Stack JAVA Developer jest dosc rozchwytywany.

Procodawcy sie podoba ze moga zatrudnic jednego fachowca od Frontendu(Angular) jak i Backendu (Java) i tnac przy tym koszta zamiast ( JavaScript DEV + JAVA Dev )

pozdrawiam ;)


What is the difference between "hero" and "coward" ?
There is no difference - they feel the same
but hero do what coward doesnt
edytowany 1x, ostatnio: GoreIT
1

Ciekawa dyskusja o JavaScript i technologiach z nim związanych. Rozmawiają tam o tym że Angular jest dość skomplikowany i do dużych projektów w porównaniu z łatwym jQuery.
http://devstyle.pl/2014/10/24/devtalk01-o-javascript-z-jakubem-gutkowskim/

Maciej Cąderek
Maciej Cąderek
  • Rejestracja:ponad 9 lat
  • Ostatnio:około 3 lata
  • Lokalizacja:Warszawa
  • Postów:1264
0
aloha napisał(a):

Dziękuję, czyli Node.js będzie zastępował aktualnie moje JSP (to samo działanie)? Na razie jeszcze nie do końca wiem jak to ze sobą połączę ale domyślam się że RESTowo wysyłając JSona. Bo już mi sie troche pomieszało... JavaScript służy do "płynnych" przejść i ogólnie cudownych fajerwerków, prawda? W każdym razie i tak będę musiał korzystać z HTML i CSS?

W Node możesz tak jak w każdej innej technologii server-side wystawiać REST API (czy inny lekki backend np.GraphQL itp.), robić klasyczne aplikacje MVC z systemem szablonów i co tam jeszcze chcesz.
W JSie można robić "płynne" przejścia i ogólnie cudowne fajerwerki, ale to tylko ułamek jego zastosowań.

edytowany 1x, ostatnio: Maciej Cąderek
0

A możesz polecić jakiś dobry sprawdzony tutorial lub kurs do ES6 od podstaw, ewentualnie coś dobrego na youtube? Ktoś tu kiedyś się chwalił, że tworzy dobry własny kurs do ES6, coś na miarę tego:
https://php-kurs.gitbooks.io/phpkurs/content/

Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)