日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 物聯(lián)網(wǎng) > 物聯(lián)網(wǎng)技術(shù)文庫(kù)
[導(dǎo)讀] 在一個(gè)以數(shù)字化為主導(dǎo)的世界中,物聯(lián)網(wǎng)(IoT)在改變我們的生活和開(kāi)展業(yè)務(wù)方式方面發(fā)揮著至關(guān)重要的作用。從智能生活到工作場(chǎng)所協(xié)作,以及與現(xiàn)場(chǎng)員工的聯(lián)系,物聯(lián)網(wǎng)將一如既往地節(jié)省時(shí)間和提高生產(chǎn)力。

在一個(gè)以數(shù)字化為主導(dǎo)的世界中,物聯(lián)網(wǎng)(IoT)在改變我們的生活和開(kāi)展業(yè)務(wù)方式方面發(fā)揮著至關(guān)重要的作用。從智能生活到工作場(chǎng)所協(xié)作,以及與現(xiàn)場(chǎng)員工的聯(lián)系,物聯(lián)網(wǎng)將一如既往地節(jié)省時(shí)間和提高生產(chǎn)力。

根據(jù)一份微軟物聯(lián)網(wǎng)研究報(bào)告,大約85%的受訪者表示他們目前正在采用物聯(lián)網(wǎng),四分之三的人處于項(xiàng)目計(jì)劃階段 。此外,有88%的受訪者認(rèn)為,物聯(lián)網(wǎng)對(duì)于其業(yè)務(wù)的成功至關(guān)重要。

在物聯(lián)網(wǎng)開(kāi)發(fā)方面,選擇編程語(yǔ)言與選擇傳感器和其他硬件設(shè)備的類型一樣復(fù)雜。

通常,物聯(lián)網(wǎng)生命周期涉及通過(guò)龐大的傳感器和設(shè)備網(wǎng)絡(luò)來(lái)收集和管理數(shù)據(jù)。接下來(lái),對(duì)這些數(shù)據(jù)進(jìn)行處理和分析以做出實(shí)時(shí)決策。為了執(zhí)行有效的IoT生命周期,您需要一種編程語(yǔ)言,該語(yǔ)言可讓您輕松地在不同設(shè)備之間建立高級(jí)通信并在整個(gè)生態(tài)系統(tǒng)中保持無(wú)縫連接。

這就是JavaScript出現(xiàn)的地方!

用于軟件開(kāi)發(fā)的JavaScript

現(xiàn)在似乎不可能想象沒(méi)有JavaScript的軟件開(kāi)發(fā)。縱觀Stack Overflow的2019年開(kāi)發(fā)者調(diào)查,JavaScript已經(jīng)連續(xù)7年成為開(kāi)發(fā)者中最受歡迎的語(yǔ)言。此外,95.0%的網(wǎng)站使用JavaScript作為客戶端編程語(yǔ)言,這一事實(shí)可以確定JavaScript的重要性。

作為一種客戶端編程語(yǔ)言,JavaScript通過(guò)實(shí)現(xiàn)自定義客戶端腳本來(lái)幫助您創(chuàng)建動(dòng)態(tài)且交互式的網(wǎng)頁(yè)。同時(shí),您還可以使用跨平臺(tái)的運(yùn)行時(shí)引擎(例如Node.js)在JavaScript中編寫服務(wù)器端代碼。

為物聯(lián)網(wǎng)選擇JavaScript

JavaScript的優(yōu)點(diǎn)不僅限于網(wǎng)絡(luò)應(yīng)用程序。如果您具有JavaScript技能,則可以輕松地遷移到IoT應(yīng)用程序開(kāi)發(fā)。

例如,JavaScript可通過(guò)以下方式用于構(gòu)建物聯(lián)網(wǎng)解決方案:

1)主機(jī)-客戶端方法

您可以在主機(jī)PC中運(yùn)行JavaScript,然后將信號(hào)發(fā)送到客戶端(事物)。此模式非常適合實(shí)際“事物”甚至無(wú)法運(yùn)行最精簡(jiǎn)的JavaScript代碼庫(kù)的情況。

2)嵌入式JavaScript

另一種方法是通過(guò)設(shè)備本身中的內(nèi)存優(yōu)化引擎來(lái)實(shí)現(xiàn)JavaScript代碼。諸如JerryScript之類的框架可用于運(yùn)行設(shè)備。

3)SBCs上的JavaScript

在可以使用單板計(jì)算機(jī)(sbc)的情況下,可以在這些設(shè)備中執(zhí)行JavaScript或Node.js代碼,而不會(huì)出現(xiàn)任何問(wèn)題。

JavaScript具有響應(yīng)事件和異步代碼執(zhí)行的潛力,因此非常適合IoT解決方案開(kāi)發(fā)。對(duì)于快速原型制作來(lái)說(shuō),它也是一個(gè)不錯(cuò)的選擇。

此外,大多數(shù)組織要么尋求與物聯(lián)網(wǎng)開(kāi)發(fā)公司合作,要么雇傭能夠利用JavaScript能力跨異構(gòu)設(shè)備提供統(tǒng)一接口的物聯(lián)網(wǎng)開(kāi)發(fā)人員。

讓我們深入探討在您的IoT項(xiàng)目中使用JavaScript的主要原因。

選擇JavaScript進(jìn)行物聯(lián)網(wǎng)實(shí)施的5大理由

Node.js

內(nèi)存管理

事件驅(qū)動(dòng)編程

易于實(shí)施

JavaScript庫(kù)和框架

Node.js

它是一個(gè)開(kāi)放源代碼,跨平臺(tái)的JavaScript運(yùn)行時(shí)環(huán)境,用于構(gòu)建以數(shù)據(jù)為中心的實(shí)時(shí)解決方案。

談到它在物聯(lián)網(wǎng)中的應(yīng)用,它可以用來(lái)處理傳感器、信標(biāo)、發(fā)射機(jī)和電機(jī)等設(shè)備產(chǎn)生的大量請(qǐng)求。實(shí)際上,Node.js使請(qǐng)求-響應(yīng)流更加順暢和快速。

此外,套接字(sockets)和MQ遙測(cè)傳輸(MQTT)協(xié)議非常適合Node.js,后者通常用于IoT應(yīng)用程序中的連續(xù)數(shù)據(jù)傳輸。

Node.js附帶了NPM(Node Package Manager,節(jié)點(diǎn)軟件包管理器),它為物聯(lián)網(wǎng)應(yīng)用開(kāi)發(fā)板(如Arduino controller、BeagleBone Black、Raspberry PiIntel IoT Edison)配備了80多個(gè)軟件包。這意味著您可以使用Node.js開(kāi)發(fā)服務(wù)快速開(kāi)發(fā)健壯的物聯(lián)網(wǎng)應(yīng)用程序。

內(nèi)存管理

在像C這樣的語(yǔ)言中,開(kāi)發(fā)人員需要使用諸malloc(),calloc(),realloc()和free()之類的方法手動(dòng)分配和取消分配內(nèi)存。

在JavaScript之類的語(yǔ)言中,無(wú)需顯式分配或釋放內(nèi)存。也稱為垃圾收集(Garbage Collection),JavaScript值在創(chuàng)建對(duì)象(對(duì)象、字符串等)時(shí)分配,在不再使用時(shí)自動(dòng)釋放(即自動(dòng)分配和釋放)。

垃圾收集器功能使IoT開(kāi)發(fā)人員可以專注于開(kāi)發(fā)方面,而不是浪費(fèi)時(shí)間進(jìn)行內(nèi)存管理。從某種意義上說(shuō),由于垃圾收集器消除了內(nèi)存泄漏,因此自動(dòng)釋放未使用的內(nèi)存可提供穩(wěn)定的IoT解決方案。

事件驅(qū)動(dòng)編程

在事件驅(qū)動(dòng)的應(yīng)用程序中,每個(gè)設(shè)備都通過(guò)響應(yīng)適當(dāng)?shù)幕顒?dòng)來(lái)響應(yīng)各種事件。 JavaScript非常適合事件驅(qū)動(dòng)的應(yīng)用程序。

JavaScript中的事件循環(huán)使您可以運(yùn)行各種任務(wù),而無(wú)需等待其他任務(wù)完成。這有助于實(shí)時(shí)響應(yīng)事件,同時(shí)處理多個(gè)任務(wù)并允許多個(gè)設(shè)備響應(yīng)同一事件。

JavaScript對(duì)事件驅(qū)動(dòng)的編程的支持在很大程度上有助于優(yōu)化電池電量。

易于實(shí)施

與其他語(yǔ)言(例如C++,Ruby和Python)相比,JavaScript是一種易于學(xué)習(xí)且易于實(shí)現(xiàn)的編程語(yǔ)言。它也是使IoT實(shí)施變得容易的最受歡迎的編程語(yǔ)言之一。這是因?yàn)樗诟鞣N環(huán)境中效果最佳,并且在網(wǎng)關(guān)和云中占主導(dǎo)地位。

JavaScript庫(kù)和框架

隨著各種應(yīng)用程序中JavaScript的使用越來(lái)越多,可以使用許多JavaScript庫(kù)和框架。

1)JerryScript

它是一個(gè)輕量級(jí)的JavaScript引擎,旨在運(yùn)行在非常受限的設(shè)備上,比如微控制器。JerryScript支持在設(shè)備上編譯、執(zhí)行,并通過(guò)JavaScript提供對(duì)外圍設(shè)備的訪問(wèn)。

2)Cylon.js

Cylon.js是用于機(jī)器人技術(shù)、物理計(jì)算和物聯(lián)網(wǎng)的JavaScript框架。它提供了一種簡(jiǎn)單而強(qiáng)大的方法來(lái)創(chuàng)建同時(shí)包含多個(gè)不同硬件設(shè)備的解決方案。此外,Cylon.js還提供對(duì)50多種平臺(tái)設(shè)備的支持,以及由cylon-gpio模塊(用于通用輸入/輸出GPIO的Cylon模塊)提供的一組共享驅(qū)動(dòng)程序提供的通用輸入/輸出支持。

3)Johnny-Five

Johnny-Five是一個(gè)JavaScript框架,用于控制各種流行的微處理器和片上系統(tǒng)平臺(tái)上的硬件組件。它是為想要開(kāi)始使用JavaScript驅(qū)動(dòng)的機(jī)器人技術(shù)而設(shè)計(jì)的。

4)IoT.js

IoT.js旨在基于Web技術(shù)在IoT世界中提供一個(gè)可互操作的服務(wù)平臺(tái)。它可以與僅占用幾千字節(jié)RAM的資源受限設(shè)備一起使用。因此,它支持各種各樣的“事物”。

眾所周知,JavaScript是互聯(lián)網(wǎng)上非常流行的編程語(yǔ)言。因此,在已經(jīng)是互聯(lián)網(wǎng)一部分的物聯(lián)網(wǎng)設(shè)備中使用它是順理成章的。除此之外,Node.js、內(nèi)存管理、事件驅(qū)動(dòng)編程、易于實(shí)現(xiàn)以及JavaScript庫(kù)和框架等原因使得JavaScript非常適合物聯(lián)網(wǎng)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉