Node.js: Разлика между версии

Изтрито е съдържание Добавено е съдържание
м Bot: Automated text replacement (- пък + )
Редакция без резюме
Ред 6:
| operating system = [[Microsoft Windows]] (по-стари версии изискват [[Cygwin]]), [[GNU/Linux]], [[macOS]], [[Solaris (операционна система)|Solaris]], [[FreeBSD]], [[OpenBSD]], [[webOS]], [[NonStop OS]]
| status = Активен
| released = 27 май 2009 г.<ref>{{cite web | url=https://github.com/joyent/node/tags?after=v0.0.4 | accessdate=2 август 2014}}</ref>
| latest release version = 14.14.0
| latest release date = 292 априлюни 2020 г.
| programming language = [[C (програмен език)|C]], [[C++]], [[JavaScript]]
| genre = [[Event-driven programming|Event-driven]] [[computer network programming|networking]]
Ред 44:
Node.js позволява създаването на [[уеб сървър]]и и мрежови инструменти, използвайки [[JavaScript]] и колекция от модули, които боравят с различните функционалности на ядрото. <ref name="b1"/><ref name="b2"/><ref name="b4"/><ref name="b5">[https://books.google.com/books?id=G1y_5kpmatUC&printsec=frontcover&dq=nodejs&hl=en&sa=X#v=onepage&q=nodejs&f=false Smashing Node.js: JavaScript Everywhere], John Wiley & Sons, 14-Aug-2012</ref> Модулите се грижат за входно-изходната система, работата в мрежа ([[HTTP]], [[TCP]], [[User Datagram Protocol|UDP]], [[Domain Name System|DNS]], или [[TLS]] / [[SSL]]), двоичните данни (буфери), [[Криптография|криптографските]] функции, потока от данни, както и други основни функции. <ref>[https://nodejs.org/api/ Modules], Nodejs Website</ref><ref name="b1"/><ref name="b4"/> Модулите на Node.js имат семпъл и елегантен приложно-програмен интерфейс, което от своя страна намалява сложността при писането на сървърни приложения. <ref name="b1"/><ref name="b4">[https://books.google.com/books?id=zl17BAAAQBAJ&dq=nodejs&hl=en&sa=X Node.js Essentials], Packt Publishing, 09-Sep-2014</ref>
 
Могат да бъдат използвани софтуерни рамки, с цел да бъде ускорено разработването на приложения – достъпни за публично ползване са софтуерните рамки Express.js, Socket.io и Connect. <ref name="b1"/><ref name="b7">[https://books.google.com/books?id=5eGRAwAAQBAJ&printsec=frontcover&dq=nodejs&hl=en&sa=X#v=onepage&q=nodejs&f=false Express.js Guide: The Comprehensive Book on Express.js], Azat Mardan, 28-May-2014</ref> Node.js приложения могат да работят под [[Microsoft Windows]], [[Unix]] и [[OS X|Mac OS XmacOS]] сървъри. Node.js приложения, като алтернатива, могат да бъдат написани с CoffeeScript (по-четима форма на JavaScript), Microsoft TypeScript (силно типизирана форма на JavaScript), или който и да е друг програмен език, на който може да се компилира JavaScript. <ref name="b6">[https://books.google.com/books?id=Oda-MgEACAAJ&dq=nodejs&hl=en&sa=X CoffeeScript on Node.js], O'Reilly Media, Inc., 15-Apr-2013</ref>
 
Node.js се използва предимно за изграждане на мрежови програми като уеб сървъри, което го прави подобен на [[PHP]] и [[Python]]. <ref name="b2">[https://books.google.com/books?id=KZQQAlhTOBgC&printsec=frontcover&dq=nodejs&hl=en&sa=X#v=onepage&q=nodejs&f=false Node.js for PHP Developers], O'Reilly Media, Inc., 2013</ref> Най-голямата разлика между PHP и Node.js е, че PHP е език за блокиране (командите се изпълняват само след като предишната команда е завършила с изпълнението си), докато при Node.js изпълнението протича по различен начин (командите се изпълняват паралелно и използват обратни извиквания, за да сигнализират своето завършване).<ref name="b2"/>
Ред 67:
V8 е двигателят за JavaScript, създаден специално за браузъра Google Chrome, чийто код Google отваря през 2008 година. Написан под С++, V8 компилира изходния код (JIT) до машинен код на момента, замествайки интерпретацията в реално време.
 
Node.js съдържа libuv, който от своя страна поема асинхронните събития. V8 осигурява средата за изпълнение за JavaScript. Libuv е слой за абстракция на мрежата, както и за функционалността на файловата система под Windows и POSIX-базирани системи като Linux, Mac OS XmacOS и Unix.
 
Главната функционалност на Node.js е внедрена в JavaScript библиотеката. Свързващите части на Node.js, писани на С++ свързват всички тези технологии една с друга, както и с операционната система.
Ред 113:
'''io.js''' е разклонение на Node.js, стартирало през декември 2014 г. от сътрудник на Node.js проекта. Очаква се през март 2015 г. io.js да бъде обявен за стабилен. Причината за разклоняването на io.js от Node.js, е че авторите са искали проект извън корпоративното управление, и по тази причина са създали система за „отворено управление“, състояща се от техническа комисия, от която са част авторите.
 
io.js подобно на Node.js, е мулти-платформена среда за изпълнение на сървърни и мрежови приложения с отворен код. Приложенията на io.js са написани на JavaScript, и могат да бъдат стартирани в io.js среда за изпълнение под операционни системи OS XmacOS, Microsoft Windows, Linux. io.js предоставя задвижвана от събития архитектура и неблокираща входно-изходна система за програмиране на приложенията (API), която оптимизира производителността и мащабируемостта на дадена програма. Използва JavaScript двигателя V8 на Google, за да изпълнява код.
 
=== Други езици ===