Wydaje mi się, że #nodejs ma dwie głowne zalety: - ten sam język ( #javascript ) na "froncie" i "backendzie" - asynchroniczność, a co za tym idzie wydajność Zastanawiam się nad przyszłością #nodejs. Owszem zyskuje on na popularności, ale nie wiem właściwie dlaczego. Przecież np. takie Pythonowe Tornado też całkiem nieźle sobie radzi z asynchronicznością, tak jak i Javowe Netty. Czy zaleta posiadania "full stack developers" i jednego "webowego" języka ogrywa aż tak wielką rolę?
@ufik78: Nie sądze aby znajomość Node dawała jakieś większe motywacje do bycia fullstackdeveloperemznającymwszystkieframeworkiJS. To bardziej kwestia podejścia, jak ktoś zna technologie backendową X na dobrym poziomie i zechce się zająć frontem to javascriptowy syntax mu raczej nie będzie robił żadnej różnicy. Poza tym sam sobie po części odpowiedziałeś na pytanie, ale nie przesadzajmy też z tą szaloną popularnością. Owszem, zyskuje ale nie ma jakiegoś szaleństwa... no może w Stanach to
@ufik78: Według mnie node.js będzie zyskiwać na popularności dzięki Reactowi. Zestaw React + Node pozwala na bardzo łatwe renderowanie JS po stronie backendu. Dodatkowo node jest popularny wśród frontów, którzy myślą że zostaną fullstackami ( ͡º͜ʖ͡º)
@lukasz1985m: tak jak mówi mirek wyżej, równie dobrze #!$%@? kod możesz tworzyć w innych językach, pusty argument. Zmiany koncepcyjne w sensie jakim? Asynchroniczność to główne założenie tego języka, krytyka wynika głównie z tego, że ludzie nie rozumieją, jak działa eventloop i jakie jest tak naprawdę jego znaczenie. IMO JS to wcale nie głupi język, natomiast dziwna jest jego społeczność, która próbuje z tego języka zrobić coś naprawdę dziwnego. Między innymi
@lukasz1985m: No nie, właśnie wywołania zwrotne nie do końca od razu wracają, na co przykładem są promisy. Ogólnie, dużo nowych ficzerów ecmascript pomaga lepiej zarządzać pisanym kodem, przykładowo - nie musisz już tworzyć klas operując bezpośrednio na prototypach, a rzeczy asynchroniczne możesz pilnować używając async functions. Co do wątków, to w sumie w JS też są, chociaż bardziej bym to nazwał ich protezą, w większości przypadków nie są potrzebne, bo
Promisy to tylko opakowane wywołania zwrotne, możesz sobie nimi opakować każdy callback; całość wciąż jest zawoalowana przez zbędne API.
Nie, nie zgodzę się. Handler w promisach jest zrzucany na stos wywołań zwrotnych, przez co każda jego obsługa jest w przeciwieństwie do zwykłych callbacków asynchroniczna (nie wspominam tutaj o odsyłaniu callbacków przez setImmediate, albo process.nextTick). Tutaj masz obrazek ilustrujący działanie takiego eventloopa. A tutaj mój skromny artykuł, który i tak
- ten sam język ( #javascript ) na "froncie" i "backendzie"
- asynchroniczność, a co za tym idzie wydajność
Zastanawiam się nad przyszłością #nodejs. Owszem zyskuje on na popularności, ale nie wiem właściwie dlaczego. Przecież np. takie Pythonowe Tornado też całkiem nieźle sobie radzi z asynchronicznością, tak jak i Javowe Netty. Czy zaleta posiadania "full stack developers" i jednego "webowego" języka ogrywa aż tak wielką rolę?
Liczę na ciekawą dyskusje.
#programowanie
Komentarz usunięty przez autora
@aryjskizyd: no niewiem newest na SO Survey Node.js był zarówno w most loved, w most wanted oraz w trending tech http://stackoverflow.com/research/developer-survey-2016#technology-most-loved-dreaded-and-wanted
@lukasz1985m: żartujesz?
@zebatykocur: no tak, z tym się zgodzę.
Komentarz usunięty przez autora
Komentarz usunięty przez autora
Komentarz usunięty przez autora
@casx: Java od JDK8 też na to pozwala.
Komentarz usunięty przez autora
Komentarz usunięty przez autora
Nie, nie zgodzę się. Handler w promisach jest zrzucany na stos wywołań zwrotnych, przez co każda jego obsługa jest w przeciwieństwie do zwykłych callbacków asynchroniczna (nie wspominam tutaj o odsyłaniu callbacków przez setImmediate, albo process.nextTick). Tutaj masz obrazek ilustrujący działanie takiego eventloopa. A tutaj mój skromny artykuł, który i tak
Komentarz usunięty przez autora