برنامه نویسی اینترنت اشیا
۱۰ کتابخانه اینترنت اشیا که قدرت برنامه‌نویسی شما را دو برابر می‌کنند
برخی از کارشناسان می‌گویند: «روزگاری که همه وسایل مجهز به باتری به اینترنت متصل شوند، دور از انتظار نیست.» اینترنت اشیا با آن‌که یک مفهوم جدید نیست و وسایل و تجهیزات هوشمند مختلفی در این حوزه ابداع شده‌اند، اما هنوز هم به لحاظ گستردگی در مقایسه با فناوری‌های مشابه روزگار اولیه خود را سپری می‌کند. با این وجود به‌کارگیری تجهیزات هوشمند در برخی از سازمان‌ها و کارخانه‌ها تحولی بزرگ به وجود آورده و باعث شده فرآیندهای کاربردی خودکارسازی شوند و تجهیزاتی که پیش از این برای انجام کارها به انسان‌ها وابسته بودند به‌طور خودکار وظایف مربوطه را انجام دهند.

زبان‌های برنامه‌نویسی مختلفی برای هوشمند کردن تجهیزات اینترنت اشیا در اختیار توسعه‌دهندگان قرار دارد که جاوااسکریپت یکی از این زبان‌ها است. یک زبان برنامه‌نویسی محبوب که اجازه می‌دهد توسعه‌دهندگان در دنیای اینترنت اشیا برنامه‌های رویداد‌محور قدرتمندی ایجاد کنند. از سال 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  اینجا  کلیک کنید.

کتاب الکترونیک دوره مقدماتی آموزش پایتون

  • اگر قصد یادگیری برنامه‌نویسی را دارید ولی هیچ پیش‌زمینه‌ای ندارید اینجا کلیک کنید.

ایسوس

نظر شما چیست؟