Pereiti prie turinio

Kaip mokytis web programavimo 2018 metais, kai visur frame'workai ant frameworko?


Rekomenduojami pranešimai

Sveiki,

Noriu patarimu is programuotoju, galbut labiau is tu, kas dirba ir su front'u ir back'u.

 

Noriu jusu paklaust, kaip teisingai pasirinkt ka mokytis ?

Pradejau nuo php. Sukuriau keleta paprastu puslapiu, tada pradejau mokytis python. Susipazinau su django, bet pasirode labai sudetinga, kai ziuriu pamokas ir nesupranti kas vyksta... :D Tai perejau prie nodeJS. Is pradziu buvo keblu, bet per pamokas viska gerai isaiskino. Net pradejau suprasti ka dariau ant django.. Visgi MVC pattern'as ?

 

Moke ir front'o siektiek.

jQuery, bootstrap.

 

 

Viskas kaip ir butu gerai. Jau kazka neblogo galeciau su buildint ant nodeJS/express/mongodb/jquery/bootstrap.

 

Bet vat dabar pasidaro keblu. Skaitau naujienas, ziuriu vaizdo irasus youtubei, kai kalbama apie ateiti.

 

Labai placiai naudojami react/vue/angular.

 

Atrodo vat ismoksti vieno dalyko. Jau matai ,kad dar truksta daug ko. Ir nezinai ka reikia pasirinkt.

Pradejau mokytis react'o.

O tam reactui reikia dar 10 dalyku... :D

 

vakar perskaiciau vat sita naujiena: How it feels to learn JavaScript in 2016 naujiena sena, bet grinai vat taip ir jauciuosiu. Atrodo galima padaryt paprasciau, bet skaitai jau, kad niekas taip nebedaro...

 

Noreciau, suzinoti jusu nuomones, rekomendacijas. :)

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Sveikas, tipinis blaškymosi ir ieškojimų pavyzdys. Pirmiausias patarimas ateinantis į galvą tai nuspręsti pasirinkti vieną dalyką ir prie jo apsistoti.

 

Panašu, kad jau nusprendei nodejs ir javascriptus mokytis. Lygiai taip pat gerai būtų ir Python + Django arba PHP + vienas iš frameworkų, tarkin Laravel ar Symfony.

 

Dabar atėjai prie antrų "spąstų". Galvoji, kad tau reikia žinias plėsti, o ne gilinti. Gali susipažinti su visom pasaulio programavimo kalbom ir frameworkais, bet netapti programuotoju, gali gerai pramokti vieną ir būti job ready.

 

Ar jau esi ką nors parašęs su nodejs (ar bet kuria kita technologija)? Jei taip šaunu, dalinkis - hostink savo projektą, rodyk jį kitiems, rodyk jo kodą GitHube, appylink į darbus arba ieškokis klientų, kas jau tau labiau miela.

 

Jei ne, dabar pats laikas mokytis į gylį, o ne čiupinėt vis kitą naują blizgutį apie kurį paskaitysi. Reikia imtis ir daryt kokį nors projektą. Pasitelk fantaziją, svarbu, kad rezultatas būtų viešai prieinamas ir juo galėtų naudotis visi.

 

 

Viskas kaip ir butu gerai. Jau kazka neblogo galeciau su buildint ant nodeJS/express/mongodb/jquery/bootstrap.

 

 

Šių technologijų pilnai užtenka pirmam projektui. Taip, žinoti Reactą (arba Vue) yra naudinga ir tikriausia prireiks, bet pirmai pradžiai kuo puikiausiai apseisi su jQuery.

 

Svarbiausi dalykai kuriuos turėtų turėti tavo projektas:

 

- Vartotojai gali prisiregistruoti ir prisijungti

- Vartotojai gali kažkaip kurti turinį, net jei tai būtų reitingų davimas, komentarai ar žinutės kitiems vartotojams

- Turi būti kažkur pahostintas ir viešai prieinamas. Jei bus tik tavo kompe, bus nelabai ko vertas ir neišmoksi visų hostinimo džiaugsmų

- Geriau tegul turi mažiau funkcionalumo, bet veikia nepriekaištingai. Pradėk nuo mažo projektėlio, paskui galėsi plėsti.

 

Bonus taškai:

 

- Emailų siuntimas, pvz patvirtinti vartotoją, resetinti slaptažodžiui, notificationams

- Galimybė uploadinti failus, tarkim nuotraukas

 

Man visad labiausia patinka idėja daryti kokio nors žinomo saito kloną, tarkim Twitterio, Instagramo arba kokio skelbimų portalo. Darydamas kloną neturėsi išradinėti dviračio, turėsi labai aiškų planą ir funkcionalumo sąrašą.

 

Twitteris tikriausia idealus pasirinkimas, padarai, kad vartotojai galėtų prisijungti ir palikti trumpą žinutę, tada padarai, kad kiti galėtų juos sekti ir matyti žinutes, tada pridedi atsakymus/komentarus. Lengva vis plėsti funkcionalumą.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

 

Nuoseklus planas, dekui!

 

 

Sveikas, tipinis blaškymosi ir ieškojimų pavyzdys. Pirmiausias patarimas ateinantis į galvą tai nuspręsti pasirinkti vieną dalyką ir prie jo apsistoti.

 

Panašu, kad jau nusprendei nodejs ir javascriptus mokytis. Lygiai taip pat gerai būtų ir Python + Django arba PHP + vienas iš frameworkų, tarkin Laravel ar Symfony.

 

Dabar atėjai prie antrų "spąstų". Galvoji, kad tau reikia žinias plėsti, o ne gilinti. Gali susipažinti su visom pasaulio programavimo kalbom ir frameworkais, bet netapti programuotoju, gali gerai pramokti vieną ir būti job ready.

 

Ar jau esi ką nors parašęs su nodejs (ar bet kuria kita technologija)? Jei taip šaunu, dalinkis - hostink savo projektą, rodyk jį kitiems, rodyk jo kodą GitHube, appylink į darbus arba ieškokis klientų, kas jau tau labiau miela.

 

Jei ne, dabar pats laikas mokytis į gylį, o ne čiupinėt vis kitą naują blizgutį apie kurį paskaitysi. Reikia imtis ir daryt kokį nors projektą. Pasitelk fantaziją, svarbu, kad rezultatas būtų viešai prieinamas ir juo galėtų naudotis visi.

 

 

 

Šių technologijų pilnai užtenka pirmam projektui. Taip, žinoti Reactą (arba Vue) yra naudinga ir tikriausia prireiks, bet pirmai pradžiai kuo puikiausiai apseisi su jQuery.

 

Svarbiausi dalykai kuriuos turėtų turėti tavo projektas:

 

- Vartotojai gali prisiregistruoti ir prisijungti

- Vartotojai gali kažkaip kurti turinį, net jei tai būtų reitingų davimas, komentarai ar žinutės kitiems vartotojams

- Turi būti kažkur pahostintas ir viešai prieinamas. Jei bus tik tavo kompe, bus nelabai ko vertas ir neišmoksi visų hostinimo džiaugsmų

- Geriau tegul turi mažiau funkcionalumo, bet veikia nepriekaištingai. Pradėk nuo mažo projektėlio, paskui galėsi plėsti.

 

Bonus taškai:

 

- Emailų siuntimas, pvz patvirtinti vartotoją, resetinti slaptažodžiui, notificationams

- Galimybė uploadinti failus, tarkim nuotraukas

 

Man visad labiausia patinka idėja daryti kokio nors žinomo saito kloną, tarkim Twitterio, Instagramo arba kokio skelbimų portalo. Darydamas kloną neturėsi išradinėti dviračio, turėsi labai aiškų planą ir funkcionalumo sąrašą.

 

Twitteris tikriausia idealus pasirinkimas, padarai, kad vartotojai galėtų prisijungti ir palikti trumpą žinutę, tada padarai, kad kiti galėtų juos sekti ir matyti žinutes, tada pridedi atsakymus/komentarus. Lengva vis plėsti funkcionalumą.

 

Dekingas!

 

Taip ir jauciuos, atrodo daug ka zinau, ismokau, bet nieko dar "pilnai neismokau".

Pabandysiu dabar pakurt klonu. O tada jau mokysiuos React.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Maziau gaudyk naujus trend'us tarp frontend ir ypac JS. Gan ilgai egzistuojantis anekdotas yra jog tarp JS atsiranda naujas major framework'as kas kelis menesius ir visi dabar turetu ji naudoti, nes visi kiti yra pasene ir useless.

 

Pasirink dabar esanti major framework'a, kuris idealiausiu atveju butu remiamas kokios nors major imones (pvz. Angular -> Google, React -> Facebook) ir gerai perprask ir naudok ji. Jeigu ir jis pasens ir nebebus naudojamas, tiesiog nauja ismok, ne tokie jie jau stipriai skirtingi. Svarbiausias skill'as programuotojui yra spresti problemas, o ne naudotis kazkokiu specifiniu framework'u.

 

 

Taip ir jauciuos, atrodo daug ka zinau, ismokau, bet nieko dar "pilnai neismokau".

 

M4sJVCx.png

 

Btw, labai geras dalykas yra FreeCodeCamp (HTML, CSS, JS basics, tada pereina i React, ivairius kitus js frameworkus ir manrodos net backend dev su node.js)

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Dabar stack'ai pagrinde yra tokie, Backendas (api) - python, nodejs, c#, bet tik ne php, na ir front end - react, vue, angular. Pats šiuo metu naudoju tokį stack'ą nodeJs back end ir Vue ant front end, labai viskas paprastai kodinasi, nėr labai sunku išmokt tiek vieną, tiek kitą, Vue yra šiek tiek paprastesnis už React, tai siūlau pabandyt pirma Vue, išmokęs jį ant React irgi nesunkiai pereit galėtum jeigu bus poreikis, nors kaip rimtas dev, turėtum bent jau 2 front end framework mokėt labai gerai. Link ko eina visas programavimas dabar tai ant kodo pernaudojimas (component based), pasiekt kuo greičiau tam tikrą rezultatą parašant kuo mažiau kodo ir dar svarbiau jog tas kodas būtų kokybiškas ir kitam žmogui nereiketų perrašyt. O dabar ką siūlau tai išsirinkti stacką ir bandyt kažką sukurt veikiančio :D

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Dar vienas patarimas OP. Nekreipti dėmesio į madas ir rekomendacijas ką mokytis.

 

Nuomonės yra tik nuomonės, svarbiausia yra tavo parašytas kodas. Nesivelk į jokias diskusijas, sėsk ir rašyk. Ilgainiui pats galėsi susidaryt nuomonę iš savo patirties rašant kodą. Iki tol, nelabai verta klausytis, nes kiekvienas iš savo varpinės kalbam.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Nu taip, dabar frontende neužtenka su HTML prirašyti, includinti jQuery ir porą skriptų, uploadinti į shared hostą per FTP iš desktopo ir be done with it.

 

  1. susidiegi Node.js ir npm, gali npm install -g yarn
  2. mkdir my_project, git init, npm init
  3. pats laikas susidiegti dev dependencies, pradedant nuo Babel.js, nes šiais laikais niekas nerašo JavaScripto, rašai TypeScript arba patiurbintą JS (kad bent JSX palaikytų, dar būtinas class-properties babelio pluginas, kad nereikėtų funkcijų bindinti), pvz iš dabartinio projekto su Mithril.js (React, tik geresnis):
    import m from 'mithril';
    import throttle from 'lodash/throttle';
    
    class ScrollBar {
    ScrollBar2;
    ScrollSlab;
    
    updateOnScroll = () => {
    	// ...
    }
    
    updateOnResize = () => {
    	// ...
    }
    
    updateOnBoth = () => {
    	// ...
    }
    
    oncreate(vnode) {
    	this.ScrollBar2 = vnode.dom.children[0];
    	// ...
    }
    
    view(vnode) {
    	return (
    		<div class="scroll-bar1">
    			<div class="scroll-bar2">
    				{vnode.children}
    			</div>
    			<div class="scroll-line">
    				<div class="scroll-slab"></div>
    			</div>
    		</div>
    	);
    }
    }
    
    export { ScrollBar };
    


  4. reikės webpacko, kuris suhandlintų visus importus ir subundlintų vieną failą
  5. patiurbinti webpacką - reikės dev buildų su sourcemapais, kad lengvai debugintųsi, ir prod buildo - išmest komentarus, minimizint
  6. CSS irgi niekas nerašo, tai webpackas dabar turės mokėti transpilinti SCSS į CSS. Nu ir aišku minimizint išmetant komentarus, \n, spaces ir pan.
  7. pasirenki frontend frameworką - React arba jei nesi hipsteris, Mithril.js (klausimas, kas didesnis hipsteris)
  8. kokį state containerį pasirenki
  9. susikonfigūruoji test ir prod serverius - kokį nginx, enablini HTTP2, susikonfigūruoji HTTP2 push, kad nusiųstų css ir js failus, paveiksliukus, kokį startup api callsą.
  10. aišku, dabar reikės CI pipelino
  11. laimingas rašai kodą
  12. prisimini, kad reikia unit testų, dar pakonfigūruoji stuffą
  13. kolega supushino kodą su spaces vietoj tabs - nu jo, eslint pamirštas, konfigūruoji ir integruoji eslint
  14. pasitikrini, kaip google indexuoja tavo puslapį - blank page. jptvjmt. Įsidiegiam es2015 babel presetą, subuildinam į senesnę JS versiją - vis tiek blank page. jptvjmt. Sudiegiam es6-shim, app.js pačiam viršuj `import 'es6-shim';`, pasitikrinam - viskas čiki piki.

 

Darbo ir žinių prieš pradedant reikia daug, bet paskui - rašai ir pushini kodą. Viskas. Ir pats kodo rašymas jėga. Iš dizaino pusės - naudoji SCSS, grid, flexbox, tai CSS šiais laikais nėra atmata, kokia buvo prieš 5+ metų. Frontendas irgi easy peasy - lengvai rašomi reusable komponentai. Ne jQuery ir random copypaste HTML betvarkė kaip seniau. React/Mithril (ir Redux?) irgi normalūs frameworkai, o ne kaip gūdžiais gaidiškais Angular/Ember laikais - evenetai, watchai, double kažkokie bindingai, nu nach. React/Mithril dead simple - turi state, turi HTMLą, kuris piešia state. State pasikeitė - viską nafik perpieši. Simple. Dead simple. Zjbs, palyginus kai su Angularu tekdavo dirbti.

Redagavo wurm
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

  • Prisijunk prie bendruomenės dabar!

    Uždarbis.lt nariai domisi verslo, IT ir asmeninio tobulėjimo temomis, kartu sprendžia problemas, dalinasi žiniomis ir idėjomis, sutinka būsimus verslo partnerius ir dalyvauja gyvuose susitikimuose.

    Užsiregistruok dabar ir galėsi:

    ✔️ Dalyvauti diskusijose;

    ✔️ Kurti naujas temas;

    ✔️ Rašyti atsakymus;

    ✔️ Vertinti kitų žmonių pranešimus;

    ✔️ Susisiekti su bet kuriuo nariu asmeniškai;

    ✔️ Naudotis tamsia dizaino versija;

    ir dar daugiau.

    Registracija trunka ~30 sek. ir yra visiškai nemokama.

  • Naujausios temos

  • Karštos temos

×
×
  • Pasirinkite naujai kuriamo turinio tipą...