شبکه

یک زبان کوچک و ایده‌آل برای گجت‌های اینترنت اشیا

MicroPython نسخه سفارشی شده پایتون برای دستگاه‌های جایگذاری شده

MicroPython نسخه سفارشی شده پایتون برای دستگاه‌های جایگذاری شده
در حالی که پایتون یک زبان همه منظوره است، اما در بعضی موارد گزینه ایده‌آلی برای انجام یکسری از پروژه‌ها نیست. به‌طور مثال برای ساخت بازی‌ها بهتر از زبان سی پلاس پلاس استفاده شود. در زمینه دستگاه‌های توکار موسوم به Embedded نیز زبان سی گزینه اصلی است. اما در این میان توسعه‌دهندگان گزینه ویژه‌ دیگری به نام MicroPython را در اختیار دارند. زبانی که برای جواب‌گویی به این نیازها طراحی شده است.

MicroPython با هدف ورود به بازار ابزارهای توکار طراحی شده است. ابزاری که به منظور کار با ریزکنترلر‌ها و سامانه‌های کوچک و توکار گزینه ایده‌آلی است. در حالی که MicroPython در وضعیت بتا قرار دارد اما یک پیاده‌سازی موفق از نسخه 3.4 پایتون به شمار می‌رود. MicroPython  تحت لایسنس MIT عرضه شده است و در نتیجه به شما اجازه می‌دهد بر مبنای نیاز کاری خود به آن شکلی که نیاز دارید از آن استفاده کنید. با توجه به این‌که این نسخه در وضعیت بتا قرار دارد در نتیجه بهترین دستورالعملی که برای کار با این زبان پیش روی شما قرار دارد دستورالعمل‌های ویکی آن است که در سایت گیت‌هاب به نشانی Differences to CPython قرار گرفته‌اند.

چه تفاوتی میان پایتون و مایکروپایتون وجود دارد؟

در مخزن گیت‌هاب صفحه‌ای وجود دارد که تفاوت‌های میان MicroPython و Cpython 3 را مورد بررسی قرار داده است. ( Cpython 3 پیاده‌سازی استاندارد پایتون است.) به‌طور مثال در مایکروپایتون برای مدیریت حافظه به جای آن‌که از تکنیک Reference Counting استفاده شود از روش Garbage Counting استفاده می‌شود. همچنین پشتیبانی حداقلی از Introspection و Reflection نیز وجود دارد. پشتیبانی حداقلی از چنین ویژگی‌هایی باعث شده است تا حجم مایکروپایتون به شکلی قابل توجهی کم شده و به همین برای دستگاه‌های توکار و همچنین بردهای قابل حمل گزینه ایده‌آلی به شمار رود. مایکروپایتون به عمد زیرمجموعه کوچکی از پکیج‌ها را شامل می‌شود. بخش عمده‌ای از کتابخانه‌های اصلی پایتون نیز برای مایکروپایتون پورت شده‌اند و از طریق MicroPython-lib در سایت گیت‌هاب در دسترس توسعه‌دهندگان قرار دارند.

 مایکروپایتون همچنین به یک اسمبلر داخلی کامل تجهیز شده است که برای برنامه‌نویسی‌های سطح پایین از آن استفاده می‌شود. به دلیل این‌که مایکروپایتون از طریق زبان سی نوشته شده است در نتیجه برنامه‌نویسان از طریق مایکروپایتون به کتابخانه‌‌های زبان سی دسترسی دارند. با توجه به این‌که بازار گجت‌های اینترنت اشیا به شدت در حال رشد است، در نتیجه طراحان به زبان‌های برنامه‌نویسی نیاز دارند که از ترکیب نحوی ساده‌‌ای پشتیبانی می‌کنند. برای آن‌که بتوان به ساده‌ترین شکل برنامه‌های مورد نیاز ابزارهای توکار را نوشت گزینه‌هایی همچون زبان پایتون ایده‌آل هستند. در حالی که پایتون در زمینه سرعت کندتر از زبان سی است، اما واقعیت این است که تعداد برنامه‌نویسان آن بیشتر از زبان سی هستند. در نتیجه اگر به دنبال آن هستید تا برای بوردهای اینترنت اشیا برنامه‌نویسی کنید، مایکروپایتون ارزش آن‌را دارد که امتحانش کنید.

نویسنده: 
حمیدرضا تائبی
دسته بندی: 
کارگاه
تاریخ انتشار: 
20/05/1396 - 22:04
برچسب: 
پایتون - MicroPython - اینترنت اشیا - Embedded - ریزکنترلر‌ها - برنامه‌نویسی - گیت‌هاب

نشانی منبع:https://www.shabakeh-mag.com/workshop/9131/micropython-%D9%86%D8%B3%D8%AE%D9%87-%D8%B3%D9%81%D8%A7%D8%B1%D8%B4%DB%8C-%D8%B4%D8%AF%D9%87-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%AF%D8%B3%D8%AA%DA%AF%D8%A7%D9%87%E2%80%8C%D9%87%D8%A7%DB%8C-%D8%AC%D8%A7%DB%8C%DA%AF%D8%B0%D8%A7%D8%B1%DB%8C-%D8%B4%D8%AF%D9%87