•  

    pokaż komentarz

    Jakiś tydzień temu dla zabawy pracowałem nad projektem. W tym natłoku informacji nie mogłem znaleźć prostej odpowiedzi czego należy użyć do programowania. Znaleziona strona sugerowała mi połączenie Babel + Gulp + Typescript. Tutaj widzę, że Babel i Gulp są passe. Z każdym rokiem coraz gorzej to wygląda.
    Podobnie wygląda to aby znaleźć jakiś dobry projekt na jakim można się wzorować (boilplate). Pogubiłem się i zauwałem Yeoman z simple webapp czy jak mu tam - bazuje na Bootstrap.

    Czy ma ktoś link do jednej strony, która trzyma to jakoś w ryzach? Która jest poprawna merytorycznie, i promuje narzędzia które są stabilne (a nie modne)?

    •  

      pokaż komentarz

      @trzeci: mi sie wydaje że to po prostu taka specyfika branży, że wszystko szybko idzie do przodu i trzeba być na bieżąco, a jeśli się z czegoś uczyć, to na pewno nie z artykułów/książek sprzed paru lat. No, chyba ze planujesz kodzić w assemblerze/COBOLu ( ͡° ͜ʖ ͡°)

    •  

      pokaż komentarz

      @trzeci: Stabilny jest VanillaJS. Warto zaznajomić się z ES5 później ES2015 itd.
      Jeśli chodzi natomiast resztę, jak tylko poznasz VanillaJS sam dobierzesz sobie narzędzia do pracy.

    •  

      pokaż komentarz

      Komentarz usunięty przez autora

    •  

      pokaż komentarz

      @rasala: Pytałem się o narzędzia, nie pisz proszę poza tematem i staraj się aby każdy post jaki piszesz dodawał coś do tematu poza własnym ego.

      Nosz k#$$a, nawet zwykły - czysty JavaScript musieli nazwać VanillaJS.

    •  

      pokaż komentarz

      @trzeci: Chciałem tylko w delikatny sposób zasugerować, że łatwiej dobrać narzędzia jak znasz się na robocie. Moim zdaniem w webdev nie ma standardu którego oczekujesz. Zarówno gulp, babel jak i typescript, i wiele innych są uznawane jako narzędzia które nadadzą się do roboty.

      Warto nadmienić, że jak wybrałeś framework w którym chciałbyś pracować często masz już tzw. Quickstart przygotowany i gotowy do działania po prostym sklonowaniu z gita.

    •  

      pokaż komentarz

      @rasala: Dzięki za sprostowanie, koniec końców to ja zachowałem się jak burak.

    •  
      d............a

      -66

      pokaż komentarz

      @trzeci: Dlatego jeśli JS to tylko jako pierwszy język, by poznać ogólne zasady programowania. A później tylko skoczek do haskela, clojura albo c# i Hello World!

    •  

      pokaż komentarz

      @trzeci:
      @rasala: jakie języki programowania warto się uczyć teraz? w domu można? jakieś darmowe kursy i do przodu?

      zaczynam od zera koledzy ale chce w końcu ogarnąć coś na czasie, coś co się przyda, może jakąś gre zrobić internetową

    •  

      pokaż komentarz

      @trzeci: backendowiec u mnie w robocie trolluje nas codziennie pytając: "Co tam we frontendzie? Jakiś nowy framework powstał?" Tak to niestety wygląda

    •  

      pokaż komentarz

      @trzeci: Z mojej perspektywy - często do szybkiego prototypowania, żeby mieć wizualny interfejs, używam prostego zestawu: nodejs, nwjs, polymer. Nie trawię reactów, angularów i podobnych. Polymer narzuca tylko kilka konwencji, które mi nie wadzą. Reszta to ES6. Później łatwo przenieść to na web jeśli jest taka potrzeba.

    •  

      pokaż komentarz

      @Ambiwalentnik: naucz się c#.
      Jest to najlepszy język i mnóstwo zastosowań.
      Grę napiszesz w Unity, aplikację mobilną w xamarinie, serwer w .net core.
      Bardziej uniwersalny jest JS, ale mówiąc skrótowo to syf.
      Uzywam JS od ~15 lat i nadal nie mogę skumać dlaczego to jeszcze nie umarło zastąpione czymś sensownym.
      Jak nauczysz się c# to praktycznie znasz też Javę. Są tylko inna narzędzia i biblioteki, ale składnia i cechy praktycznie ta sama.

    •  
      daniel_em

      -1

      pokaż komentarz

      @trzeci: You made my day! :-)

    •  
      p.........y

      +7

      pokaż komentarz

      @fujiyama: webdev w C# praktycznie nie istnieje w polsce, chyba że ktoś chce pracować przy backendach dla banków. Natomiast przy kazdym webdevowym projekcie (php/c#/ruby whatever) zawsze jest zapotrzebowanie na dobrych ludzi z JS

    •  

      pokaż komentarz

      @podstawiony: Gość chce się nauczyć programować. A nie szuka roboty.

    •  

      pokaż komentarz

      @atax_bras: Wyrosłem na javowym backendzie. W angular2 + typescript się robi aplikacje całkiem przyjemnie - bo przypomina to mocno tworzenie aplikacji backendowych, które można utrzymywać. Nie wyobrażam sobie tworzenia aplikacji bez warstwy, która by nie przykrywała JSowego syfu.
      Do prototypów nie ma znaczenia framework, ale do rozwijania czegoś długie miesiąca już ma spore.

    •  

      pokaż komentarz

      @trzeci: "Nosz k?%#a, nawet zwykły - czysty JavaScript musieli nazwać VanillaJS." VanillaJS to jest w sumie API jakie wystawia przeglądarka (które jest ustandaryzowane) z którego później korzysta np. jQuery. Samo jQuery zdobyło popularność kiedy to API było różne dla różnych przeglądarek - a więc załatwiało sprawę kompatybilności - teraz jest o wiele lepiej z tym i nie ma tej niekonsekwencji między przeglądarkami. Nie przyrównywał bym "czystego Javacriptu" do VanillaJS bo "czysty Javascript" używa np. Node.js gdzie żadnego takiego API nie ma (bo nie ma drzewa DOM do którego głownie się VanillaJS odnosi).

      pokaż spoiler Pozatym VanillaJS to taki trochę troll z tych wszystkich frameworków :P

    •  

      pokaż komentarz

      VanillaJS

      @rasala: niezły trolling czysty javascript jako framework ( ͡° ͜ʖ ͡°)

    •  

      pokaż komentarz

      @trzeci: FreeCodeCamp ma wg mnie adekwatnie dobrany tok nauczania i jeśli przerobisz zagadnienia zawarte w kursie, na pewno będziesz miał odpowiednią wiedzę, żeby zrozumieć działanie większości frameworków. Zakres kursu obejmuje frontend, backend i prezentację danych.

    •  

      pokaż komentarz

      @mgrzaslewicz: Ja wyrosłem na C i paru innych wynalazkach. Java nigdy do mnie nie "przemawiała". Nie to, żebym był zaciekłym przeciwnikiem, doceniam jej zalety. Ale nie lubię.
      Angular i React w moim odczuciu wprowadzają śmietnik i brak logiki. Podobny do tego, jaki można obserwować w Javie. Śmietnik, który jest funkcjonalny, a kiedy się go pozna, przestaje się go zauważać.
      Mnie jednak on razi. Polymer ma dosyć zdrowy podział na warstwy abstrakcji. Minusem noda jest bajzel z repozytoriami, brak natywnej wielowątkowości i tym podobne. Jeśli się uprzeć, back-end może stać na czymkolwiek co człowiekowi pasuje. Jak wspomniałem, używam tego do prototypów, i w tej roli spisuje się świetnie.
      Polymer kryje JSowy bajzel całkiem nieźle, nie wprowadzając jednocześnie nowych udziwnień i zamieszania. Czy jest trudny w utrzymaniu - z praktyki zauważyłem, że utrzymanie softu częściej zależy od tego, kto go utrzymuje, niż języka, czy konwencji. To dosyć dyskusyjny pogląd, wiem, ale miałem do czynienia z wieloma projektami i bałagan zawsze wprowadzają i eskalują ludzie, nieistotne jest czy soft pisany jest w OCamlu, Eiffelu, Golangu czy Javie.
      Ale masz rację - co kto lubi i w czym się dobrze czuje.

    •  

      pokaż komentarz

      @atax_bras o jakim śmietniku piszesz jeśli chodzi o angulara? Pytam bo ciekaw jestem opinii.

    •  

      pokaż komentarz

      @trzeci: "prostej odpowiedzi czego należy użyć do programowania." na pewno VanillaJS. Rozumiem Twoje rozterki, ale jak nabierzesz rozeznania to sprawa jest prosta:
      - wybierasz na czym ma to działać - na jakich urządzeniach i w jakich najstarszych przeglądarkach
      - czy to tylko bajery na stronie czy SPA
      - dobierasz technologie

      Te wszystkie frameworki sa przydatne jak musisz zrobic full wypas w krotkim czasie. W czystym js (+ ew. jquery) tez zrobisz tylko mozesz sie narobic i po czasie ( w razie pisania chaotycznego) nie bedziesz wiedzial gdzie, co i jak.

      Od siebie dodam, ze warto sie uczyc co potrzebujesz, vue, react, angular, ember popatrzylem i olalem, jak bedzie trzeba - wroce.
      Popatrz, jakbym sie nauczyl Angulara 1.0 to w momencie wejscia Angular 2.0 wiedza leci do kosza. Dlatego nie lubie wynalazkow z google.

      Radzilbym Ci rzucic okiem na backbone (+ marionette). Backbone jest prosty, pomoze uporządkować wiekszy projekt, a jednoczesnie jest łatwy.

      Jezeli chodzi o sam js: mozesz korzystac na poczatek z klasycznego js, jak bedziesz mial sily przerobowe to zainteresujesz sie ES6, chyba, ze spodoba Ci sie Angular2, to wtedy chyba musialbys poznac typescript.

    •  

      pokaż komentarz

      @maciejze: Z Angular miałem styczność sporadycznie, ale traumatycznie.
      Lubię zwięzłość i prostotę. Tego mi w Angular brakuje (i nie tylko mnie).
      W poprzednim drażnił mnie $scope, jak wszystkich.
      Później dowiedziałem się, że to przepisali. Co właściwie nie działa na korzyść frameworku, bo zrobili to bardzo dogłębnie i bez wstecznej zgodności (a propos utrzymania kodu).
      W dwójce dalej drażni mnie składnia. I modele. I factories. I przegadana i przekomplikowana struktura. Nie, żebym nie lubił MVC, ale to nie bożek.
      Nie lubię narzucania TS (bo to potworek nieco), nie przepadam za przpypiętym na siłę bootstrapem.
      A2 jest przekombinowany. Jeżeli custom components wejdą na serio do przeglądarek zarówno A2, jak i React podzielą los JQuery. I dobrze.
      Powyższe to moje odczucia jedynie. Nie ma w nich fanatyzmu. Nie grzebię w tym na tyle często by mieć fanowskie podejście do czegokolwiek. Jednak jeśli mam wybierać to wezmę Polymer, który najlepiej emuluje custom components. I czysty JS, bez dziwacznych konwencji. A jak będę chciał MVC to rozbiję sobie elemencik na pliczki :) . Factory też napiszę, jeśli mi będzie do czegoś większego potrzebna.

    •  

      pokaż komentarz

      @podstawiony: "webdev w C# praktycznie nie istnieje" a gdzie istnieje? Silverlight jest martwy.

    •  

      pokaż komentarz

      @atax_bras:
      Chodziło mi o konkrety. Traumatyczne bo? Drażnił scope jak wszystkich (takie uniwersalne tezy się łatwo obala...) bo? Jaką masz alternatywę "zwięzłości i prostoty" dla angulara i co to właściwie dla ciebie znaczy?

    •  

      pokaż komentarz

      @fujiyama: czemu od 14 lat nie zmieniasz technologii?

    •  

      pokaż komentarz

      @orestlenczyk: przecież domyślne lody to śmietankowe, a nie waniliowe, wtf! ಠ_ಠ

    •  

      pokaż komentarz

      @maciejze: Pytałeś o opinie, nie o konkrety. Nie chce mi się pisać artykułu. $scope przeszkadzał mi ze względu na konieczność stałego pamiętania o zasięgu w danej sytuacji.
      Jaką mam alternatywę - custom components i vanilla JS w wersji es6. W dużej części Polymer implementuje cc dając 2-way binding bez angularowych dziwactw. To moja alternatywa. I moja opinia.

    • więcej komentarzy(21)

  •  

    pokaż komentarz

    I pomyśleć, że popularność jquery przyniosła łatwość i prostota w obsłudze: ot wrzucało się jedną linijkę kodu dla biblioteki jquery, a potem bardzo prostymi komendami (w stosunku do klasycznego javascriptu) tworzyło się fajne rozwiązania.

    A dzisiaj wracamy chyba znów do czasów analogicznych, gdy rządziło html 4 i "dynamic html" (czyli generalnie syf w kodzie dla amatorów pisania stron ;)).

    •  

      pokaż komentarz

      @simperium: Ja jestem ciekaw czy historia zatoczy koło i znów bedzie jak kiedyś(proste skrypty w jQuery a reszta na serwerze)

    •  

      pokaż komentarz

      Ja jestem ciekaw czy historia zatoczy koło
      @rasala: na pewno tak będzie, pytanie tylko, czy pierwsze zrobi to jquery, czy może piłeczkę spróbuje przejąć zapomniane mootools, czy może w ogóle powstanie "nowa" prosta w obsłudze biblioteka łącząca w sobie wiele różnych bibliotek. :)

    •  

      pokaż komentarz

      A dzisiaj wracamy chyba znów do czasów analogicznych, gdy rządziło html 4 i "dynamic html" (czyli generalnie syf w kodzie dla amatorów pisania stron ;)).

      @simperium: wiele rzeczy można JS zarzucić, ale takiego laickiego zdania dotyczącego rozwoju języka programowania jeszcze nie czytałem. To tak, jakby zarzucić producentom samochodów, że z roku na rok pchają tam coraz więcej elektroniki i zwykły Kazik mechanik nie jest tego w stanie ogarnąć w swoim przydomowych warsztacie.

      jQuery było popularne, bo JavaScript w 2006 roku spełniał inną rolę niż teraz. JS przez te 10 lat wyewoluował do stanu, gdzie możliwe jest tworzenie zaawansowanych interfejsów aplikacji internetowych - niezależnych od warstwy serwerowej. Niesie to ze sobą udogodnienia absolutnie dla wszystkich - programistów JS, bo mają nowe narzędzia do tworzenia lepszego internetu; programistów backendowych, bo mogą skupić się na wdrażaniu logiki; klientów oprogramowania - bo nie muszą czekać na aktualizację programu, tylko dostają update'y co tydzień.

      Paradoksalnie, problemem JS stał się jego dynamiczny rozwój, napędzany przez społeczność. Nie wiem czy był w historii programowania jakikolwiek język, który rozwijał się równie szybko, co JavaScript.

      Ja jestem ciekaw czy historia zatoczy koło i znów bedzie jak kiedyś(proste skrypty w jQuery a reszta na serwerze)

      Nie bardzo widzę tego sens. Kilka miesięcy temu pojawiło się jQuery 3.0. Ta biblioteka nadal sprawdza się świetnie tam, gdzie jej miejsce - przy tworzeniu prostych stron internetowych z niewymagającą logiką.

    •  

      pokaż komentarz

      @simperium: kto wraca? Chyba nikt Ci od jQuery odchodzić nie każe, a i w normalnej pracy jest powszechny. To że banda frontendowych hipsterow codziennie wymyśla po dwa frameworki nie oznacza że ma to przełożenie na realia biznesowe.

    •  

      pokaż komentarz

      To tak, jakby zarzucić producentom samochodów, że z roku na rok pchają tam coraz więcej elektroniki i zwykły Kazik mechanik nie jest tego w stanie ogarnąć w swoim przydomowych warsztacie.

      @krejdd: tak. Bo tutaj Kazik chce naprawic malucha a pyta specjaliste z fabryki Tesli

    •  

      pokaż komentarz

      @krejdd: Rozwój JS? ( ͡° ͜ʖ ͡°) Przecież sam język stoi w miejscu od wielu lat? Rozwija się środowisko wokół JS. Wymyślono setki zastosowań dla tego języka, ale sam język się nie rozwija.

    •  

      pokaż komentarz

      @krejdd: > Nie bardzo widzę tego sens. Kilka miesięcy temu pojawiło się jQuery 3.0. Ta biblioteka nadal sprawdza się świetnie tam, gdzie jej miejsce - przy tworzeniu prostych stron internetowych z niewymagającą logiką.

      No nie do końca się zgodzę. jQuery robi to do czego zostało stworzone. Pozwala szybciej i wydajniej operować na DOMie.
      Nie uzależniasz logiki aplikacji od zastosowanego freameworka. Jasne że jeśli oprzesz wszystko np na angularze wymusi on architekturę aplikacji. Natomiast w moje ocenie jest to ślepy zaułek. Ludzie zaczynają pisać o frameworkach tak jak by to był osobny język programowania. Natomiast prawda jest taka, że właśnie w rozbudowanych aplikacjach biznesowych takie wymysły jak Angular/React nie są wdrażane lub wdrażane są z wielkim opóźnieniem. Ponieważ są za młode i niestabilne. Jeśli ktoś w dużym projekcie webowym wszedł w Angulara to ma przej??%ne aktualnie. Google wydał ostatnie wersję 2.0 i jak ona mia się do pierwszej wersji? Jak długo Google będzie utrzymywał i rozwijał specyfikację 1.x? Własne przez takie zagrywki wg mnie jeszcze długo będzie ceniony VanilaJS on też się rozwija Wystarczy zobaczyć różnice mieczy ES5 a ES6.

    •  

      pokaż komentarz

      @krejdd:

      o tak, jakby zarzucić producentom samochodów, że z roku na rok pchają tam coraz więcej elektroniki i zwykły Kazik mechanik nie jest tego w stanie ogarnąć w swoim przydomowych warsztacie.

      Bardzo zla analogia. Producenci pchaja mnostwo elektroniki i gadzetow do najnowszych modeli, ale nadal masz kierownice, kluczyki, sprzeglo i pedal gazu.
      I nie potrzebujesz 16 narzedzi zeby wejsc do samochodu, odpalic go i poprowadzic.

      Ba, nawet robia to juz latwiejsze - nie musisz juz nawet wyciagac kluczyka zeby wejsc do samochodu i go odpalic.

      Gdyby brazna IT kierowala tym czym kieruja sie producenci samochodow czy producenci smartphonow (np. Apple) to wiele rzeczy byloby duzo bardziej latwiejszych/sensowniej rozwiazanych.

      Oczywiscie swiat pedzi szybko i trzeba sie dostosowac, ale czasami widac jak (nie)doswiadczeni wpadaja w pulapke "new kid on the block".

      Paradoksalnie, problemem JS stał się jego dynamiczny rozwój, napędzany przez społeczność.

      Sam jezyk az tak dynamicznie sie nie rozwija. Za to narzedzia i spolecznosc wokol jezyka - tak.

      Nie bardzo widzę tego sens. Kilka miesięcy temu pojawiło się jQuery 3.0. Ta biblioteka nadal sprawdza się świetnie tam, gdzie jej miejsce - przy tworzeniu prostych stron internetowych z niewymagającą logiką.

      Chyba nie bardzo wiesz po co wogole powstalo jQuery i z czym to sie je.

    •  

      pokaż komentarz

      wiele rzeczy można JS zarzucić,

      @krejdd: Przede wszystkim to, że już kilkanaście lat temu był uznawany powszechnie za prymitywną atrapę "prawdziwego" języka programowania. Ale historia bywa złośliwa, dojrzalsze technologie typowane na jego następców bankrutowały jedna po drugiej(Java, Flash, Silverlight. No i mamy to, co mamy.

    •  

      pokaż komentarz

      @simperium: widać że za frontend wzięli się Javowcy i przenieśli swoje pakietowe nawyki do JavaScriptu.

    •  

      pokaż komentarz

      @michnic Co za bzdury. W ES6 class let yield => i odwrotne apostrofy, w ES7 async await. To tak tylko z samej składni. Pod spodem jest dużo więcej.

    •  

      pokaż komentarz

      ale takiego laickiego zdania dotyczącego rozwoju języka programowania jeszcze nie czytałem. To tak, jakby zarzucić producentom samochodów, że z roku na rok pchają tam coraz więcej elektroniki i zwykły Kazik mechanik

      @krejdd: Może zacznijmy od tego, że producenci samochodów oprogramowanie produkują i testują latami, a nie piszą na kolanie jakieś zabugowane gówno, które po miesiącu wypuszczają na npma, żeby nabić popularność wśród dzieciaków jarających się "modnymi" frameworkami.

    •  

      pokaż komentarz

      @dex4er: Panie, to takie zmiany, że implementowane są co ciekawsze elementy z różnych frameworków. Nic nowego raczej nie wnoszą, bo jak ktoś nie koduje w czystym JS, to ma to wszystko od dawna w swoim frameworku.

    •  

      pokaż komentarz

      @simperium: jQuery w porównaniu do frameworka MVC jest jak słoń w składzie porcelany.
      Separacja widoku od logiki i mozliwość renderowania html-a ma wiele zalet zarówno dla samego programisty jak i dla zespołu.
      Składnia Angulara czy React-a jest nieszczególna, ale przy większym projekcie wychodzi wiele zalet takiego podejścia, a sam JavaScript przestaje być aż tak męczący.
      Ja polecam RiotJS. To jest narzędzie, którego można się nauczyć w 1 dzień, jego narzut jest minimalny (składnia, ilość funkcji).

      Im większy projekt tym podejście z jQuery traci, a MVC lub pokrewne zyskuje.

    •  

      pokaż komentarz

      @michnic: Czy ty odróżniasz język od jego implementacji a ten z kolei od jego modułów? A translator od kompilatora? Co z tego, że były jakieś moduły dodające np. nowe słowa kluczowe. Nie było tego w języku. Było być może jako draft do nowej wersji, i ktoś sobie zrobił proof-of-concept jako moduł. To cecha jezyków dynamicznych: można je zmieniać za pomocą modułów. To, że mam w Perlu nową obiektówkę (Moose) albo w Pythonie nową składnię do BDD (Mamba) to nie znaczy, że język się zmienił. Jak dodadzą te zmiany do definicji samego języka, to powiem, że język się zmienił.

    •  

      pokaż komentarz

      i znów bedzie jak kiedyś

      @rasala: Strony na tabelkach... i .dhtml

    •  

      pokaż komentarz

      @simperium: Poziom skomplikowania aplikacji rośnie to i frameworki się robią coraz bardziej skomplikowane. Widziałem kilka webowych projektów gdzie uważano, że jquery to wszystko czego potrzeba. Mocno ugryzło to później w dupę.

    • więcej komentarzy(7)

  •  

    pokaż komentarz

    Czy jest gdzieś jedna strona opisująca modę JS na teraz? Najlepiej samo odświeżająca się by nie klikać refresh.

  •  

    pokaż komentarz

    I właśnie dlatego zawsze uciekam jak najdalej od frontendu ( ͡° ͜ʖ ͡°)( ͡° ͜ʖ ͡°)( ͡° ͜ʖ ͡°)

  •  

    pokaż komentarz

    Czyli jeśli nauczyłem się czystego JS, potem najpopularniejszych jQuery i potrafię stworzyć zgrabny responsywny frontend (z Bootstrapem lub bez) to wszystko to jednak jak krew w piach, bo "mamy 2016 rok" i nikt już nie pisze stronek w tradycyjny sposób? ( ͡° ʖ̯ ͡°)