لینوکس، کد باز، ابزارها، برنامه نویسی، دات نت، سی شارپ

آیا برنامه دات نت شما روی لینوکس اجرا می شود!؟


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

mono-logoچندسال پیش زمزمه های پروژه ای به گوش رسید که مژده اجرای نرم افزارهای مبتنی بر دات نت را بر روی سیستم عامل های دیگر میداد. پروژه مونو یک فریم ورک دات نت cross-platform و اوپن سورس است که به شما اجازه می دهد که برنامه های مبتنی بر دات نت خود را که تا به حال فقط روی ویندوز اجرا می شده را روی سیستم عامل های مبتنی بر لینوکس و حتی سیستم عامل شرکت اپل اجرا کنید. آخرین نسخه پایدار مونو از C# 3.0، VB 8، ASP.NET 2.0, ADO.NET و Windows Forms 2.0 پشتیبانی می کند. در واقع اگر برنامه خودتان را با دات نت فریم ورک نسخه 2.0 نوشته باشید و از APIهای ویندوز نیز استفاده نکرده باشید، به راحتی می توانید آن را روی لینوکس یا مک اجرا کنید. برای دریافت آخرین نسخه مونو برای پلت فرم های مختلف به این صفحه از سایت رسمی مونو مراجعه کنید.

خب فکر میکنم جواب تیتر سئوالی این مطلب مشخص شده باشد. در وب سایت مونو، برنامه سودمند کوچکی معرفی شده که با اسکن کردن اسمبلی های پروژه تحت دات نت شما، گزارشی تولید می کند که مشخص کننده قسمت هایی از کدهای پروژه شماست که با فریم ورک مونو سازگاری ندارند. با استفاده از این گزارش به راحتی می توانید قسمت های ناسازگار را اصلاح کنید و خروجی پروژه را برای اجرا روی مونو آماده کنید. نام این برنامه سودمند Mono Migration Analyzer یا MoMA است و از اینجا قابل دریافت است.

moma

برای توسعه برنامه های مبتنی بر مونو یک محیط توسعه مجتمع به نام MonoDevelop هم تولید شده که هرچند در حد ویژوال استادیو نیست اما نصافاً محیط خوبی برای توسعه برنامه های مبتنی بر مونوست. MonoDevelop بر اساس IDE موفق و اوپن سورس SharpDevelop توسعه یافته است.

12 نظر برای “آیا برنامه دات نت شما روی لینوکس اجرا می شود!؟

  1. جالب بود.
    بیشتر مشکلی پیش میاد استفاده از PInvoke یا همون استفاده از dll های com هست که باعث مشکل میشه.
    در غیر اینصورت به احتمال زیاد برنامه کار خواهد کرد.

    MoMA هم جالب بود

بیان دیدگاه