زبانهای برنامهنویسی مختلفی برای هوشمند کردن تجهیزات اینترنت اشیا در اختیار توسعهدهندگان قرار دارد که جاوااسکریپت یکی از این زبانها است. یک زبان برنامهنویسی محبوب که اجازه میدهد توسعهدهندگان در دنیای اینترنت اشیا برنامههای رویدادمحور قدرتمندی ایجاد کنند. از سال 2012 تا به امروز دستگاههای مختلفی با استفاده از Node.js به اینترنت متصل شدند. دستگاههای مبتنی بر برد رزبریپای، آردونیو با اتکا بر فناوریهای بلوتوث و وایفای و برنامهنویسی اینترنت اشیا راهکارهای جالبی در ارتباط با هوشمندسازی وسایل خانگی و تجاری ارائه کردند.
همانگونه که اشاره شد زبانهای قدرتمندی همچون سیپلاسپلاس، جاوا، اسمبلی و.... برای برنامهنویسی بوردهای هوشمند در اختیار کاربران قرار دارد، اما جاوااسکریپت و کتابخانههای قدرتمند مبتنی بر جاوااسکریپت که برای اینترنت اشیا ارائه شدهاند با استقبال خوبی از سوی کاربران روبرو شدند. بر همین اساس در این مقاله قصد داریم پر کاربردترین کتابخانههای اینترنت اشیا که با استفاده از زبان جاوااسکریپت در اختیار توسعهدهندگان قرار دارند را به شما معرفی کنیم.
1. Johnny-Five
Johnny-Five یکی از محبوبرترین کتابخانههای مبتنی بر جاوااسکریپت است که در ارتباط با زیرساخت اینترنت اشیا و روباتیک و در تعامل با آردینیو، رزبریپای، Intel Edison Tessel 2 و بوردهای دیگر دردسترس قرار دارد. کتابخانه فوق با دریافت 9 هزار ستاره در سایت گیتهاب یکی از برترین کتابخانههای حال حاضر در ارتباط با برنامهنویسی اینترنت اشیا است.
2. Cylon.js
Cylon یک چهارچوب جاوااسکریپت است که میتواند بیش از 43 زیرساخت مختلف در ارتباط با روباتیک، رایانش فیزیکی و اینترنت اشیا را پشتیبانی کند. به دنبال ساخت یک روبات یا پهباد هستید؟ اگر پاسخ مثبت است به احتمال زیاد چهارچوب Cylon همان چیزی است که به آن نیاز دارید. Cylon میتواند بهطور مستقم در مرورگر و از طریق browserify یا هر برنامه متصل به کروم اجرا شود و بدون مشکل از پروتکلهای http و https و پلاگینهای mqtt و socket.io پشتیبانی میکند. قطعه کد زیر نمونهای از کدهای نوشته شده با این چارچوب است.
3. Node-Red
Node-Red بر مبنای این فرضیه نوشته شده که یک راهکار ساده و بصری برای مدیریت استریمهای دادهای در دنیای فیزیکی و دیجیتال ارائه کند. کتابخانه فوق یک ابزار برنامهنویسی برای سیمکشی تجهیزات سختافزار، واسطهای برنامهنویسی کاربردی و خدمات آنلاین به روشهای منحصر به فرد است. Node-Red مجهز به یک ویرایشگر وبمحور است که به توسعهدهندگان در سیمکشی جریانات با اتکا بر مجموعه عظیمی از گرهها در یک صفحه و استقرار آنها کمک میکند. این محیط زمان اجرای روان Node از مزایای رویدادمحوری Node و بدون محدودیت استفاده میکند. به همین دلیل اگر از سختافزارهای ارزانقیمت رزبری پای استفاده میکنید اجازه میدهد به شکل روان کدهای خود را اجرا کنید.
4. Jerryscript
Jerryscript یک موتور جاوااسکریپت روان برای اینترنت اشیاء است که اجازه میدهد جاوااسکریپت روی هر دستگاه و ریزکنترلری با حافظه اصلی کمتر از 64 کیلوبایت و حافظه جانبی کمتر از 200 کیلوبایت اجرا شود. این موتور از ترکیب و اجرا روی دستگاه، پشتیبانی میکند و دسترسی به لوازم جانبی از طریق زبان جاوااسکریپت را فراهم میکند.
5. NodeMcu
NodeMcu یک زیرساخت ساده اینترنت اشیاء برای نمونهسازی اولیه سختافزارها ارائه میکند که شامل میانافزار و صفحه توسعه بوردهای اینترنت اشیا است تا فرآیند ساخت برنامههای اینترنت اشیا ساده شود. کتابخانه فوق به توسعهدهندگان اجازه میردهد برنامههای تحت شبکه را از طریق ترکیب نحوی Node تولید کنند. رویکردی که کتابخانه NodeMcu ارائه میکند شبیه به مدل برنامهنویسی Node.js است، اما در اصل بر پایه Lua کار میکند. کتابخانه فوق فرآیند برنامهنویسی گرههای بیسیم و/یا اکسسپوینتها را بر مبنای پارادایم برنامهنویسی رویدادمحور غیرمتقاون ساده میکند. لازم به توضیح است این کتابخانه بیش از 65 ماژول داخلی دارد.
6. IoTjs
پروژه IoTjs، چهارچوب جاوااسکریپت سامسونگ برای اینترنت اشیاء است. هدف از ساخت کتابخانه فوق، فراهم آوردن زیرساخت سرویس متقابل در دنیای اینترنت اشیاء است. کتابخانه فوق مناسب برای افرادی است که قصد دارند برنامههای کاربردی را روی دستگاههایی با منابع محدود اجرا کنند. سامسونگ پشتیبانی خوبی از این کتابخانه به عمل آورده و توانسته است در سایت گیتهاب بیش از 1500 ستاره و 50 مشارکتکننده به دست آورد. کننده است.
7. IoT-Nodejs
پروژه IoT-Nodejs اساسا کتابخانههای کلاینتی است و به توسعهدهندگان اجازه میدهد پروژههای خود را با استفاده از Node.js به زیرساخت اینترنت اشیا واتسون آیبیام متصل کنند. IBM IoT Watson یک رابطی کاربری وبمحور قدرتمند برای مدیریت و کنترل سرویسهای اینترنت اشیا ارائه میکن. این کتابخانه کلاینتی به سه بخش Device، ManagedDevice و Application تقسیم شده و میتواند درون مرورگر و node,js بارگذاری شود.
8. Node serialport
یک پکیج Node.js برای دسترسی به پورتهای سریال لینوکسی، OSX و ویندوز است. پکیج فوق یک رابط استریمی ارائه میکند تا توسعهدهندگان بتوانند دسترسی سطح پاییه به پورتهای سریال داشته باشند و بتوانند دستگاههای اینترنت اشیا را با استفاده از کدهای جاوااسکریپت کنترل کنند.
9. Bit with Node.js / Plain JS
زمانی که در حال ساخت سرویسها و پروژههای چندگانه با Node,JS و JS هستید، به احتمال زیاد مجبور به کپی کردن کدهای مشترکی هستید. Bit به شما کمک میکند به راحتی از پروژهها و کدهای مشتریک در ارتباط با دستگاههای مختلف استفاده کنید و پروژهها را به دقیقتر شکل مدیریت کنید. همچنین میتوانید از کتابخانه فوق برای ساخت یک مجموعه مولفههای با کاربرد قابلیت استفاده مجدد (بهطور مثال، مولفههای React) استفاده کنید تا در کمترین زمان ممکن داشبورد خود برای دستگاههای اینترنت اشیا را بنویسید.
10. Zetta
Zetta یک زیرساخت متنباز مبتنی بر Node.JS و واسطهای برنامهنویسی کاربردی برای اینترنت اشیا است. پیادهسازی شده بر مبنای Node.js برای ساخت سرورهای اینترنت اشیا که که اجازه میدهد کامپیوترهای واقع در مکانهای مختلف بتوانند به آن دسترسی داشته باشند و سرویس ابرمحوری که REST APIs، WebSocketها و برنامهنویسی واکنشپذیر را برای تبدیل چند دستگاه به یک برنامه حساس به داده و زمان اجرا ترکیب میکند از ویژگیهای کتابخانه فوق است.
در کنار موارد یاد شده گزینههای دیگری همچون Mosca، It، Noduino، Heimcontrol.js و Ruff نیز در اختیار توسعه دهندگان قرار دارد.
ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را میتوانید از کتابخانههای عمومی سراسر کشور و نیز از دکههای روزنامهفروشی تهیه نمائید.
ثبت اشتراک نسخه کاغذی ماهنامه شبکه
ثبت اشتراک نسخه آنلاین
کتاب الکترونیک +Network راهنمای شبکهها
- برای دانلود تنها کتاب کامل ترجمه فارسی +Network اینجا کلیک کنید.
کتاب الکترونیک دوره مقدماتی آموزش پایتون
- اگر قصد یادگیری برنامهنویسی را دارید ولی هیچ پیشزمینهای ندارید اینجا کلیک کنید.
نظر شما چیست؟