Koziołek
2018-06-15 17:01
GThoro

@Maciej Cąderek: React ma więcej pobrań bo jak coś się zwali to sugerują wywalenie node_modules i pobranie od nowa :D poza tym, wg tej strony jQuery deklasuje wszystkie inne frameworki, więc jQuery jest najlepszy :P.

Patryk27

@GThoro: jQuery nie jest frameworkiem.

DevEnv
2018-05-22 09:11

---> Fetch API <---
Fetch API jest interfejsem pozwalającym na asynchroniczne pobieranie zasobów. Dotychczas aby pobrać zasób z serwera, korzystało się z obiektu XMLHttpRequest (XHR). Fetch API powstało, aby uprościć sposób komunikacji z serwerem, a dzięki wykorzystaniu obietnic bardziej odpowiada dzisiejszym standardom programowania.

#devenv #technicalblog #blog #fetchapi #javascript

LukeJL

właśnie to chciałem napisać też - że promise to trochę jak prymitywna wartość, a observable to jak tablica wartości. Przy czym obecnie promise ma wsparcie w języku (włącznie z cukrem składniowym w postaci async / await), a do observabli potrzeba dodatkowych bibliotek (przy okazji Rx to do tej pory chyba najtrudniejsza biblioteka JS, jaką kiedykolwiek poznałem. Może poza D3).

LukeJL

Więc na dzień dzisiejszy moje zdanie jest takie, że observable są fajne, ale trzeba się zastanowić, czy ich potrzebujemy. Z drugiej strony mam wrażenie, że pewne problemy byłyby o wiele prostsze, gdyby ludzie używali observabli (np. te wszystkie Reduxy, zarządzanie stanem, efektami ubocznymi itp. To można by zrobić na observablach i byłoby bardziej deklaratywnie).

zyxist
2018-04-03 20:30

Dzisiaj na moim blogu kolejny artykuł poświęcony bibliotekom ReactJS i Redux zatytułowany "Redux: zaawansowane selektory". Zapraszam do lektury!

https://www.zyxist.com/blog/redux-zaawansowane-selektory

#javascript #reactjs #react #redux

DevEnv
2018-03-09 12:09

W obecnej wersji LTS node.js async/await jest już natywnie wspierany. Jeśli jeszcze nie miałeś z tym styczności to zapraszamy do zapoznania się z artykułem na ten temat.

http://devenv.pl/async-await-podstawy-jezyka-javascript/

#javascript #es6 #blog #technicalblog #devenv

Maciej Cąderek

Po prostu nie wiedziałem, że CSP to inna nazwa na "rozwiązanie pisane z użyciem generatorów". - bo nie jest, jeśli coś używa generatorów to nie oznacza to automatycznie, że mamy do czynienia z CSP ;)

LukeJL

w sensie, myślałem, że generatory właśnie po to są.

DevEnv
2018-02-07 09:26

Hej, przy okazji ostatniego posta o PWA wywiązała się dyskusja o buzzwordach - z tej okazji mam dla was inny gorący buzzword ze świata javascript ;-)

Web Assembly - nadciąga rewolucja
WebAssembly jest nowym rodzajem języka, który może być uruchomiony w nowoczesnych wersjach przeglądarek internetowych. WebAssembly, nazywany też WASM, to język niskopoziomowy, który działa z szybkością zbliżoną do rozwiązań natywnych i pozwala na kompilację kodu napisanego w C/C++ do kodu binarnego działającego w przeglądarce internetowej.

#javascript #webassembly #blog #technicalblog #buzzword #devenv

student pro

Wczoraj na reddit pojawiły się newsy o nowym frameworku Microsoftu "Blazor" do programowania front-endu w C# (kompilowanie do WASM). Tutaj mały szowcase: https://www.youtube.com/watch?v=Ta_qXpXQqGQ

Szalony Programista

Ciekawe czy sama architektura zawiera jakieś błędy implementacyjne do exploitacji, bo wiadomo użytkownik takie błędy może zrobić, ale pod bebechami też coś można znaleźć.
W dodatku każda przeglądarka ma swoją implementację, możliwa chwała i szczęście znalazcą bugów.

Visual Code
2018-02-01 12:55

C# to Javascript compiler. Zobaczcie sami jak wygląda poniższy kod w JavaScripcie ;)

using System;
using System.Threading.Tasks;
using System.Collections.Generic;
public class Program
{
    static Dictionary<int,string> dict = new Dictionary<int,string>();

    public async static void Main()
    {
        var msg = "Hello, 4P!";

        Console.WriteLine(msg);

        for(var i = 0; i < 5; i++){
            dict.Add(i, DateTime.UtcNow.ToString("ss.fff"));
            await Task.Delay(100);
        }

        foreach(var str in dict){
            Console.WriteLine($"4P {str.Key} : {str.Value}");
        }
    }   
}

#csharp #javascript

Azarien

JavaScript must die.

no_solution_found

ale takie kompilatory często robią sieczkę.... ktoś kto ogarnia JSa napisałby to dużo czytelniej

Maciej Cąderek
2017-10-20 18:20

Jak wiadomo (albo i nie) pojedynczy proces Node.js działa w jednym wątku (pomijając kryjącą się pod spodem pulę wątków do obsługi nieasynchronicznych interfejsów). Świetnie się to sprawdza w przypadku wszelkiego IO, ale nie bardzo sprawdza się w przypadku kosztownych obliczeniowo operacji (główny wątek jest blokowany).

Do tej pory najlepszym rozwiązaniem było wydzielanie zadań na zewnątrz (zwykle z pomocą task queue i workerów), ale często jest to overkill.

Na szczęście z pomocą przychodz nowy open sourcowy projekt M$ - Napa.js -> https://github.com/Microsoft/napajs/blob/master/README.md

Wielowątkowe środowisko uruchomieniowe JSa, oparte (a jakże) na silniku V8, w pełni współpracujące z Node.js (jako moduł), można je tez odpalić bez udziału Noda.

Po wstępnym przejrzeniu i odpaleniu przykładów powiem, że wygląda to dobrze.
Jest szansa, że na stałe trafi do mojego przybornika - brakowało czegoś takiego. W JSie robi się coraz ciekawiej ;)

Jaram się :D

#js #javascript #node #nodejs #napajs #opensource #brawomicrosoft

Napa.js

Desu

Mogli to zanazwac nap.js :P

Maciej Cąderek

@Laran Fakt, ale dobrych kandydatów chyba jeszcze mniej ;)

Maciej Cąderek
2017-10-11 22:43

Jak powszechnie wiadomo Javascript Fatigue może dać malkontentom w kość - by dać obraz tego w co warto inwestować swój czas powstał w zeszłym roku bardzo fajny projekt: The State of Javascript.

Aktualnie na stronie znajdują się tylko wyniki ankiety z 2016 roku, ale pierwsze podsumowania z tegorocznej ankiety można już obejrzeć tutaj:
https://www.youtube.com/watch?time_continue=5&v=FZw1j_tTSag

Trzeba w końcu napisać jakiś większą apkę w TypeScript i pobawić się GraphQL'em ;)

#javascript #nodejs #frontend #js

LukeJL

Czyli - coś co było nowatorskim eksperymentem w 2015, po dwóch latach (a pewnie i wcześniej) stało się skostniałym cargo cultem.

Maciej Cąderek

@LukeJL Dzięki za rozwinięcie - przeczytałem Twój artykuł i propozycję alternatywnej biblioteki. Mógłbyś w sumie zrobić o tym wątek na forum, można by podyskutować.