Брзи водич за Ноде.јс у 2019

Увод

Шта је Ноде.јс?

Ноде.јс је и отвореног кода и бесплатан, и користи се у разне сврхе. Да споменемо само неке, Ноде.јс је веома ефикасан за сервирање динамичког садржаја. Ако желите брз и ефикасан начин да покренете блог, Ноде.јс може да поједностави процес. Заснован на ЈаваСцрипт-у, Ноде.јс може да користи већина веб програмера који желе да обављају операције на страни сервера без потребе да уче потпуно нови језик. Ноде.јс је такође веома ефикасан у меморији, асинхроно рукује свим захтевима, а укључени менаџер пакета има приступ највећем репозиторијуму на свету.

Предности

Ноде.јс има неколико предности, као што су следеће:

  • Изворно подржава асинхроне задатке. На пример, када корисник упути захтев скрипти написаној за Ноде.јс, Ноде.јс наставља да буде доступан за нове захтеве док обрађује тренутни захтев.
  • Подржава већину Линук дистрибуција и има велики број унапред написаних пакета доступних за коришћење.
  • Има већину основних функција које ће вам требати уграђене. Ово укључује могућност уређивања, премештања или брисања датотека; као и да комуницирате са МиСКЛ, МонгоДБ и мноштвом других ствари без потребе да користите укључени менаџер пакета.
  • Користи највеће складиште пакета на свету: npm.
  • Синтакса кода слична ЈаваСцрипт-у. Ноде.јс је у суштини ЈС на страни сервера.

Недостаци

Нажалост, међутим, Ноде.јс има своје недостатке:

  • Пошто је то релативно нов језик, у поређењу са нечим попут ПХП-а, његова кодна база се често ажурира. То значи да позиви или методе које користите можда неће радити у претходној или будућој верзији Ноде.јс.
  • Ноде.јс може повремено трајати дуже за писање кода, јер не може лако да користи друге библиотеке. ИмагеМагицк, на пример, је популарна библиотека која се користи на ПХП-у и није подржана са Ноде.јс.
  • За разлику од Јаве, изузетке је тешко имплементирати. То значи да је скоро немогуће пронаћи грешке у вашем коду ако имате ЈС датотеку дугачку хиљаде редова.

Коришћење Ноде.јс

Предуслови

  • Било која модерна верзија Убунту, ЦентОС или Дебиан инсталирана. Овај чланак ће покрити само процес инсталације за ЦентОС.
  • Најмање 256 МБ РАМ-а. Имајте на уму да ова цифра зависи од апликације коју ћете покренути.
  • За овај водич ће вам такође требати уређивач текста, као што је Вим или Нано.

Инсталирање чвора

Ажурирајте свој менаџер пакета:

yum update -y

Инсталирајте Ноде.јс:

yum install nodejs -y

Ако се од вас затражи да увезете кључ, унесите Yда бисте наставили.

Уверите се да је инсталација била успешна:

node -v
npm -v

Основне конвенције о типовима датотека

Све датотеке Ноде.јс морају се завршавати са .js. На пример, једноставан квадратни решавач се може назвати Quadratic.js. Рекавши то, можете то назвати како год желите све док је први услов испуњен.

АПИ

Програмски језици обично имају на APIрасполагању, а Ноде.јс није изузетак. Ако сте изгубили или потреба да се пронађу синтаксу за функцију (или метод), погледајте Ноде.јс документе .

НАПОМЕНА: Као што је раније поменуто, Ноде.јс има базу кода која се стално ажурира и као такве, функције овде можда више неће радити у каснијим верзијама.

Креирање ваших првих програма

Здраво Свете!

У овом одељку ћемо учити о најосновнијем програму који можете да креирате. За почетак, идите на /~или /root. Креирање вашег првог пројекта је једноставно као креирање ЈС датотеке:

nano HelloWorld.js

Када сте у свом омиљеном уређивачу текста, унесите следеће:

// For reference, comments are made using '//' added before or after a line. Comments are ignored by the Node.js interpreter.
console.log("Hello, world!"); // console.log() simply outputs text to the terminal.

Изађите и сачувајте.

Сада покрените свој програм:

node HelloWorld.js

Видећете следећи излаз:

[root@test-server ~]# node HelloWorld.js
Hello, world!

Једноставна математика и променљиве

У овом одељку ћемо научити како да изводимо основне математичке операције. За почетак, поново идите до свог /rootдиректоријума и креирајте датотеку под називом MathTest.js:

nano MathTest.js 

Налепите следећи код у датотеку:

var a = 5; // Variables are declared using 'var variableName = value'. The value can be a string, integer, boolean value (ie. true/false) or an object. 
var b = 10;
var c = "Hello, world!";

console.log(c); // This line will output the contents of variable c.
console.log("a = " + a + ", b = " + b); // This line prints out the respective values for a & b.
console.log("a + b = " + (a + b)); // This line prints out the result of (a + b) or (5 + 10). The result should be 15.

Сачувајте и изађите.

Када извршите свој MathTest.jsпрограм, видећете следеће:

[root@test-server ~]# node MathTest.js
Hello, world!
a = 5, b = 10
a + b = 15

Покретање нашег првог веб сервера

У овом одељку ћемо научити како да покренемо Ноде.јс веб сервер. За почетак креирајте датотеку под називом WebTest.js:

nano WebTest.js

Налепите следећи код:

 // This line includes the HTTP module. Having it included allows us to use it's methods and functions to start a working webserver.
var http = require("http");
var a = 5, b = 10; 

http.createServer(function (request, response) {
    // This will simply output "Request received!" to your terminal when you visit your page.
    console.log("Request received!");

    // This line tells your browser that it should be expecting HTML content to be returned.
    response.writeHead(200, {'Content-Type': 'text/html'}); 

    // The following line adds "Hello, world! a + b = 15" to the body. The <i></i> tags will italicize the text. 
    response.write("<i>Hello, world! a + b = " + (a + b) + "</i>"); 

    // Finally, we'll tell the browser that we're done sending data with 'response.end()' below.
    response.end(); 
}).listen(8080);

Када сачувате датотеку, покрените нови програм:

[root@test-server ~]# node WebTest.js

Сада посетите http://(YOUR_SERVER_IP):8080. Уверите се да је ваш заштитни зид исправно конфигурисан да бисте дозволили захтев.

Видећете Request received!на свом терминалу и следеће у вашем претраживачу:

Hello, world! a + b = 15

НАПОМЕНА: Да бисте затворили (искључили) WebTest.js, користите следећу комбинацију тастера: CTRL+ C.

Сада када сте разумели неке од основа, следећи одељак ће вас упознати са коришћењем модула треће стране, инсталираних преко npm.

Инсталирање модула треће стране и његово коришћење у програму

У овом одељку ћемо продужити наш први „Здраво, свете!“ програм. За почетак ћемо инсталирати пакет који се зове цоло . Овај пакет нам омогућава да користимо боје на терминалу.

За почетак, користићемо npmза инсталирање пакета:

npm i colo  

За референцу, можете уклонити пакет са npm remove colo

Када се процес заврши, имаћете приступ coloпакету. Сада, када отворите HelloWorld.js, додајте следећи ред на врху:

var colour = require("colo");

Тамо где видите console.log(...), упишите "Здраво, свет!" са заградама. На почетку заграда додајте colour.red.bold:

console.log(colour.red.bold("Hello, world!"));

Ваш коначни код ће изгледати овако:

var colour = require("colo");
console.log(colour.red.bold("Hello, world!"));

Сачувајте, изађите и покрените свој програм. Излаз ће бити потпуно исти као и раније, осим "Здраво, свет!" ће сада бити црвено (и подебљано) у вашем терминалу.

Завршне напомене

Честитамо на завршетку свих основних програма. Ово би требало да вам пружи знање за тумачење (барем већине) кода који се користи у другим туторијалима. Надајмо се да се овде нећете зауставити — постоји много других ствари које можете да урадите са Ноде.јс!

Ако установите да Ноде.јс није језик за вас, његово уклањање је једноставно на следећи начин:

yum remove nodejs -y

Брзи водич за Ноде.јс у 2019

Брзи водич за Ноде.јс у 2019

Увод Шта је Ноде.јс? Ноде.јс је и отвореног кода и бесплатан, и користи се у разне сврхе. Да споменемо само неке, Ноде.јс је веома ефикасан за

Поставите Метеор апликацију на Убунту

Поставите Метеор апликацију на Убунту

Овај чланак ће вас провести кроз примену ваше Метеор апликације на Вултр ВПС који користи Убунту 14.04. Такође може да ради на другим дистрибуцијама Линука (покушај а

Подесите Саилс.јс за развој на ЦентОС 7

Подесите Саилс.јс за развој на ЦентОС 7

Користите другачији систем? Увод Саилс.јс је МВЦ оквир за Ноде.јс, сличан Руби он Раилс. То чини за развој модерних апликација вер

Како да подесите Ноде.јс трајне апликације на Убунту 16.04

Како да подесите Ноде.јс трајне апликације на Убунту 16.04

Ноде.јс апликације су популарне због своје способности скалирања. Покретање више истовремених процеса на више сервера даје мање кашњење и дуже време непрекидног рада

Инсталирање Ноде.јс из извора на Убунту 14.04

Инсталирање Ноде.јс из извора на Убунту 14.04

Инсталирајте алате за прављење Биће потребно неколико алата. Покрените следећу команду: апт-гет инсталл маке г++ либссл-дев гит Преузми Ноде.јс извор Ит и

Како инсталирати ГрунтЈС на Дебиан 9

Како инсталирати ГрунтЈС на Дебиан 9

ГрунтЈС је ЈаваСцрипт покретач задатака написан на врху НодеЈС-а. Може се користити за аутоматизацију задатака који се понављају за вашу апликацију као што су минификација, компилација

Инсталирајте Ноде.ЈС преко Ноде Версион Манагер-а на Убунту 14.04

Инсталирајте Ноде.ЈС преко Ноде Версион Манагер-а на Убунту 14.04

Лако инсталирајте и управљајте било којом верзијом Ноде.ЈС користећи Ноде Версион Манагер (НВМ). НВМ је сличан Рубис РВМ-у, омогућавајући вам да инсталирате и прелазите са једног на други

Како подесити ПМ2 на Убунту 16.04

Како подесити ПМ2 на Убунту 16.04

ПМ2 је веома популаран Ноде менаџер процеса који олакшава покретање НодеЈС апликација. ПМ2 олакшава поновно покретање апликација, аутоматски рестартује пад

Примена Јавасцрипт Уникернел-а у Вултр Витх Опс

Примена Јавасцрипт Уникернел-а у Вултр Витх Опс

Примена Јавасцрипт Уникернела у Вултр Уникернели су оперативни системи са једном апликацијом. За разлику од оперативних система опште намене као што је Линук, уникернел

Подешавање Екпресс.јс веб сервера на Убунту 16.04 ЛТС

Подешавање Екпресс.јс веб сервера на Убунту 16.04 ЛТС

У овом водичу ћемо инсталирати основни Екпресс.јс веб сервер, користећи Ноде.јс, Јавасцрипт рунтиме засновано на Цхромес В8 мотору, на нашем Вултр ВП

Подесите Саилс.јс за развој на Убунту 14

Подесите Саилс.јс за развој на Убунту 14

Користите другачији систем? Увод Саилс.јс је МВЦ оквир за Ноде.јс сличан Руби он Раилс. То чини за развој модерних апликација вер

Инсталирање ЈКСЦоре

Инсталирање ЈКСЦоре

ЈКСЦоре је форк Ноде.јс-а који уводи боље перформансе и вишенитност. Упркос томе што је у бета верзији, ЈКСЦоре је довољно брз и стабилан за човека

Креирајте веб апликацију Хапи.јс користећи Ноде.јс на Убунту 16.04

Креирајте веб апликацију Хапи.јс користећи Ноде.јс на Убунту 16.04

Хапи.јс је богат, робустан и моћан Ноде.јс оквир дизајниран за прављење веб апликација у екосистему Ноде.јс. Његов једноставан дизајн чини и

Поставите Ноде.јс апликацију користећи Доцкер

Поставите Ноде.јс апликацију користећи Доцкер

Овај чланак ће вам показати како да примените своју Ноде апликацију у Доцкер контејнеру. Напомена: Овај водич претпоставља да имате инсталиран и прочитан Доцкер

Како инсталирати Страпи на Убунту 16.04

Како инсталирати Страпи на Убунту 16.04

Увод Страпи је НодеЈС оквир за управљање садржајем отвореног кода посвећен изградњи сигурних и скалабилних АПИ апликација спремних за производњу и

Нгинк Реверсе Проки са Гхост-ом на Убунту 14.04

Нгинк Реверсе Проки са Гхост-ом на Убунту 14.04

Гхост је бесплатна платформа за блоговање отвореног кода написана у ноде.јс, потпуно прилагодљива и намењена за објављивање. Припремите сервер: ажурирање

Како применити Гхост на Федора 25

Како применити Гхост на Федора 25

Користите другачији систем? Гхост је платформа за блогове отвореног кода која постаје све популарнија међу програмерима и обичним корисницима од свог издања 2013. године. И

Инсталирање Руби он Раилс на Убунту 14.04

Инсталирање Руби он Раилс на Убунту 14.04

Руби он Раилс (РоР) је оквир написан у програмском језику Руби који вам омогућава да користите Руби у комбинацији са ХТМЛ, ЦСС и сличним програмом

Како подесити Коа.јс Ноде апликацију на Убунту 16.04 ЛТС

Како подесити Коа.јс Ноде апликацију на Убунту 16.04 ЛТС

У овом водичу ћемо научити како да подесимо Коа.јс веб апликацију за производњу, користећи Ноде.јс. Такође ћемо повезати узорак домена са

Инсталирање Ноде.јс и Екпресс-а на Убунту

Инсталирање Ноде.јс и Екпресс-а на Убунту

Покреће га Цхроме В8 Енгине, Ноде.јс је популаран језик који се користи за прављење брзих скалабилних апликација. Већ је покренуо бројне пројекте, укључујући

Успон машина: Примене вештачке интелигенције у стварном свету

Успон машина: Примене вештачке интелигенције у стварном свету

Вештачка интелигенција није у будућности, она је овде управо у садашњости. У овом блогу Прочитајте како су апликације вештачке интелигенције утицале на различите секторе.

ДДОС напади: кратак преглед

ДДОС напади: кратак преглед

Да ли сте и ви жртва ДДОС напада и збуњени сте методама превенције? Прочитајте овај чланак да бисте решили своја питања.

Да ли сте се икада запитали како хакери зарађују новац?

Да ли сте се икада запитали како хакери зарађују новац?

Можда сте чули да хакери зарађују много новца, али да ли сте се икада запитали како зарађују толики новац? Хајде да причамо.

Гоогле-ови револуционарни изуми који ће вам олакшати живот.

Гоогле-ови револуционарни изуми који ће вам олакшати живот.

Да ли желите да видите револуционарне изуме Гугла и како су ти изуми променили живот сваког људског бића данас? Затим читајте на блогу да бисте видели Гооглеове изуме.

Фридаи Ессентиал: Шта се десило са аутомобилима које покреће вештачка интелигенција?

Фридаи Ессентиал: Шта се десило са аутомобилима које покреће вештачка интелигенција?

Концепт самовозећих аутомобила који путују на путеве уз помоћ вештачке интелигенције је сан који већ неко време имамо. Али упркос неколико обећања, њих нема нигде. Прочитајте овај блог да сазнате више…

Технолошка сингуларност: далека будућност људске цивилизације?

Технолошка сингуларност: далека будућност људске цивилизације?

Како се наука развија великом брзином, преузимајући многе наше напоре, расте и ризик да се подвргнемо необјашњивој сингуларности. Прочитајте шта би сингуларност могла да значи за нас.

Еволуција складиштења података – Инфографика

Еволуција складиштења података – Инфографика

Методе складиштења података су се развијале можда од рођења података. Овај блог покрива еволуцију складиштења података на основу инфографике.

Функционалности слојева референтне архитектуре великих података

Функционалности слојева референтне архитектуре великих података

Прочитајте блог да бисте на најједноставнији начин упознали различите слојеве у архитектури великих података и њихове функционалности.

6 невероватних предности поседовања паметних кућних уређаја у нашим животима

6 невероватних предности поседовања паметних кућних уређаја у нашим животима

У овом дигиталном свету, паметни кућни уређаји постали су кључни део живота. Ево неколико невероватних предности паметних кућних уређаја о томе како они чине наш живот вредним живљења и једноставнијим.

Ажурирање додатка за мацОС Цаталина 10.15.4 изазива више проблема него што их решава

Ажурирање додатка за мацОС Цаталина 10.15.4 изазива више проблема него што их решава

Недавно је Аппле издао мацОС Цаталина 10.15.4 додатак за исправку проблема, али изгледа да ажурирање изазива више проблема који доводе до квара Мац машина. Прочитајте овај чланак да бисте сазнали више