Įvadas į „NodeJS + SailsJS“

Sveiki visai bendruomenei! Mano vardas Bruno, ir aš jame buvau DesdeLinux kaip vartotojas. Man atėjo laikas paskelbti pirmuosius įrašus šioje bendruomenėje 🙂

Šiandien aš jums pateikiu vadovą NodeJS y Burės.js

Node.js

Tai programavimo aplinka, paremta kalba Javascript su į įvykį orientuota architektūra, idealiai tinkama asinchroniniam programavimui. Mazgas, yra pagrįstas varikliu V8 „Google“.
Ji palaiko aktyvią atvirojo kodo bendruomenę, kuri parašė daug modulių, kad palengvintų mūsų plėtrą.
Vienas iš jų yra Lizdas.io (Leidžia serveriui realiuoju laiku siųsti klientui naujinimus, pavyzdžiui, GPS sekimą)

Kas tai yra?

„Node“ yra skirtas situacijoms, kai srautas yra per didelis, todėl serverio logika ir pralaidumas nebūtinai yra didesni. Ir ne tik tai, bet realiuoju laiku ir su dideliu masteliu!

Kodėl „Node“?

1 yra atviro kodo.
2) Jei kada nors galvojote naudoti vieną kalbą tiek serveryje, tiek kliente, štai koks sprendimas.
3) mastelis ir Sutapimas.
4) ir kt.

Burės.js

Bures pasirinkau dėl šių savybių, taip pat mano požiūriu skaitomiausių kodo prasme. Akis! egzistuoti DAUGELIS pagrindai „Node“, koks jis yra išreikšti, Kampinis, geddyIr tt

Ekrano kopija - 080913 - 13:21:50

Kas yra burės?

Ar yra MVC karkasas kad imituoja modelį rubinas ant bėgių (Taip, jūs girdėjote teisingai: D) mažų ar didelių programų kūrimui greitai, lengvai ir saugiai. toliau palaiko šiuolaikinius taikymo reikalavimus. Nesvarbu, kurią duomenų bazę naudojate, Burės suteikia abstrakcijos sluoksnį, todėl jo pasirinkimas tampa abejingas. Burės turi:

- Gebėjimas kurti RESTful JSON API automatiškai.
- Jame yra modulis Lizdas.io.
- Generuoti maršrutus automatinis savo valdikliams.
- Pateikia autentifikavimas vartotojų ir prieigos kontrolė vaidmens pagrindu.
- kriuksėti kaip „Task Runner“ (automatinės užduotys, tokios kaip suskaidymas, kompiliavimas, testavimas ir kt.)
- Turtas: visi failai atitinkamuose kataloguose (css, js) yra suvienyti vienoje byloje ir susumuoti, siekiant sumažinti gerokai puslapio įkėlimas ir ribotas naršyklės užklausų skaičius.

„Node.Js“ diegimas

Turitorius, kurį aš padariau „Xubuntu“ 13.04.

sudo apt-get install python-software-properties python g++ make
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs

Burės.Js montavimas

Naujausia stabili versija:
sudo npm -g install sails

Šiuo metu be klaidų kuriame naują projektą! 😀

Sukurkite katalogo skeletą:
sails new testProject

Dalyvaujame savo projekte:
cd testProject

Mes paleidžiame serverį:
sails lift

Yeeeeeeeeeeah! mes įėjome http://localhost:1337/

Ekrano kopija - 080913 - 13:02:34

Mūsų katalogo struktūra turėtų atrodyti taip:
Ekrano kopija - 080913 - 13:07:57

API:
- Vairuotojai
- Adapteriai
- Modeliai
- Politika
- Paslaugos

TURTAS:
- vaizdai
- js
- stiliai
favicon
robotai

PATIKRINTI:
- vietinis
404.js, 500.js… ..
route.js
session.js
sockets.js …… ..

NODE_MODULES:
- ejs (šablono variklis)
- niurzga
- optimistas
- burės-diskas

PERŽIŪRŲ:
- Pradžia (čia yra šakninis šablonas, vietinis šeimininkas)
- 404.ejs
- 500.ejs
- layout.ejs (Tiems, kurie naudojo bėgius, layouts.ejs elgiasi kaip nei maketai.html. *)

EJS („Embedded Javascript“) yra šablonų variklis, bet ne vienintelis. Man ypač patinka JADE

FIN

Iki šiol mano žinios ir tikiuosi, kad daugeliui padėjau ... Aš esu naujas šioje technologijoje, todėl bet kokia konstruktyvi kritika yra laukiame ????

Šis įrašas atsirado tai padaryti, nes kuriu savotišką psichosocialinį tinklą (Nieko iš kito pasaulio). Su mokymosi tikslaisir mažai išteklių. idėja taip pat sukurti namų serverį, kuris jį palaikytų (Tikrai padarykite tai pamoką) Kaip jau minėjau anksčiau, išteklių yra nedaug, todėl optimizavimas Tai labai svarbu. (ir net jei jie nebūtų per daug ^ ^)


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.

  1.   Artūras Šelbis sakė

    Tai mane stebina, kaip ištikimai jis mėgdžioja RoR, nors daugelis nekenčia RoR dėl prasto veikimo (nekonfigūruojant) kodo valymo.

    Tema labai įdomi, tikiuosi, kad ir toliau ją plėtosite, sveikinu.

    1.    nanotechnologijų sakė

      Aš neapkenčiu RoR, tiesa ta, kad rubino filosofija „tą patį padaryti yra daug būdų“ dažniausiai yra problema, nes ne visi jie yra efektyviausi ir kai norite atsakyti į klausimą, daugeliu atvejų atvejais turite tą mažą problemą, kai visi atsako kitaip, kaip daryti tą patį, ir jūs linkę labiau painiotis D:

      Kalbant apie šią „Node“ sistemą, kadangi ji nėra skirta didžiuliams ar dideliems dalykams, „Node“ yra naudojama kartu su kitais rėmeliais, tokiais kaip „Django“, tam tikriems dalykams, manau, kad „Mejorando.la“ pavyzdys yra toks: jie sukuria visą svetainę ir tvarko ją duomenų bazės su „Django“, tačiau realiu laiku problemos paliekamos „Node“, nors nesu tikras, todėl negaliu per daug apie tai kalbėti.

      1.    jaminas-samuelis sakė

        Manau, kad taip sakote, jie naudoja „Django“ svetainės bazei, o „Node“ - dalykams realiuoju laiku ... Na, bent jau tai aš visada girdžiu, kaip sako Fredis Vega

        1.    Bruno cascio sakė

          „NodeJS“ nėra panašus į Django ar PHP, ar rubiną. Bet tai yra toks serveris kaip „Apache“, „Nginx“ ir kt.

          „Sails“ yra sistema, kuri naudoja „nodejs“ ir „express“ (kitą sistemą) kartu su kai kuriais moduliais, tokiais kaip „socket.io“, kuriant žiniatinklio programas.

          Sveiki atvykę!

          1.    Arnoldo RLF sakė

            Taigi, jei norite įtraukti pokalbį, užmegztą su „nodejs“ su puslapiu „python“ su „Django“ (norėdami tęsti pavyzdį „paranting.la“), turėtumėte naudoti rėmelį arba priskirti apache (jei taip yra, aš neįsivaizduojate, kuris serveris naudoja pitoną) kelią http://miweb.com ya node.js http://miweb.com/chat ir juos bendrauti

  2.   jaminas-samuelis sakė

    Ei, labai įdomu ...

    Aš nebaigiau, kodėl „Node JS“ naudojamas žiniatinkliui?

    1.    Arnoldo RLF sakė

      tai yra „apache“ alternatyva, kurios pranašumas yra realusis laikas (programos, kurios bendrauja nuolat, o ne tik tada, kai pateikiama užklausa).

      1.    Deividas Gomezas sakė

        „NodeJS“ nėra „Apache“, „NGINX“ ar bet kurio kito žiniatinklio serverio alternatyva (ar pakaitalas). „NodeJS“ yra serverio „JavaScript“ vertėjas, leidžiantis šia programa kurti programas, kurioms priešingu atveju reikėtų naudoti tokias kalbas kaip „Java“, „Python“, „Ruby“ ar PHP.

        1.    Bruno cascio sakė

          Taip, galbūt aš išreiškiau save neteisingai. Norėjau perduoti, kad node.js valdo savo serverį ir jam nereikia trečiųjų šalių (apache, nginx, cherokee ir kt.)

          Sveiki atvykę!

  3.   Arnoldo RLF sakė

    labai gerai, tikiuosi, kad daugiau pamokymų galės sekti „node.js“ ir ką nors padaryti realiuoju laiku

    1.    Bruno cascio sakė

      Čia aš palieku jums 200 puslapių knygą su „Node.js“ įžanga per Koansą. Jis turi „to to Node.js“ ir „problemos“ išsprendimas (pavyzdys yra „twitter“), kai „Express“ yra antraštės sistema ...

      http://nodejskoans.com/

      PS: Burės gaminamos „Express“ pagrindu, dažniausiai dauguma jų yra.

      Sveiki atvykę!

  4.   gyvas sakė

    Puikus indėlis Bruno .. Sveiki atvykę 😀

    1.    Bruno cascio sakė

      Ačiū jums ir visai bendruomenei, kad leidote būti jos dalimi 🙂 Sveikinimai!

  5.   „AurosZx“ sakė

    Labai įdomus Bruno 🙂

    1.    Bruno cascio sakė

      Ačiū!

  6.   Kempinė moteris sakė

    Puikus straipsnis. Labai ačiū.

    Šiuo metu kai kuriuose savo projektuose naudoju bures. Norėčiau jūsų paklausti, kur galėčiau gauti daugiau informacijos apie vaidmenų pagrįstą burių prieigos kontrolę, jei įmanoma, ispanų, bet jei ne, anglų kalba. Norėčiau pridėti prieigos kontrolę prie vieno iš savo puslapių, bet noriu nustatyti leidimus vieniems vartotojams iš tam tikro maršruto ir kitiems iš kito maršruto. Ar tai įmanoma su burėmis? Negaliu rasti daug informacijos apie tai.

    Ačiū ir sveikinu už straipsnį.

    Sveikinimas
    Elvira.

    1.    Bruno cascio sakė

      Sveiki Elvira!

      Kalbant apie tai, ką jūs minite, ar tai būtų „Sailsjs“, ar bet kokia kita sistema, tai, ką jūs siūlote, yra susiję su duomenų modeliavimu ir sistemos nustatytais apribojimais.

      Galite sukurti kažką panašaus į „grupes“ (vaidmenis) su skirtingais leidimais ir susieti kiekvieną vartotoją su vienu iš jų.

      Ypač burėse jie vadinami „politika“ ir galite tai pamatyti čia: http://sailsjs.org/#/documentation/concepts/Policies

      Sveikinimai ir ačiū už jūsų komentarą!

      1.    Kempinė moteris sakė

        Labai ačiū Bruno. Su jūsų raginimais radau elegantišką sprendimą. sveikinimas