معرفی برخی کتابخانه های مشابه با امکانات MATLAB در NET.

معرفی برخی کتابخانه های مشابه با امکانات MATLAB در NET. <br/> از لحاظ فنی مقایسه کردن این دو باهم کار چندان مناسبی نیست. MATLAB در وهله ی اول یک نرم افزار برای شبیه سازی و فعالیت های مربوط به محاسبات علمی است.

از لحاظ فنی مقایسه کردن این دو باهم کار چندان مناسبی نیست. MATLAB در وهله ی اول یک نرم افزار برای شبیه سازی و فعالیت های مربوط به محاسبات علمی است.MATLAB طی سالهایی که در حال توسعه و گسترش بوده به یک مجموعه در هم تنیده از نرم افزار و رابط های گرافیکی و یک سری امکانات اسکریپت نویسی تبدیل شده است. این مجموعه ابزارهای قدرتمندی را در اختیار محققان گذاشته تا بدون نیاز به دانش برنامه نویسی و مطالعه ی تکنولوژی های مختلف، به کار تحقیق یا پیاده سازی بپردازند. در اینکه MATLAB از لحاظ سادگی در استفاده یک شاهکار به حساب می اید شکی نیست. البته شایان ذکر است که MATLAB تنها راهکار برای محاسبات علمی و تحقیقاتی نیست. این نرم افزار معادل هایی دارد که قویترین آنها، نرم افزار متن باز اوکتاو (gnu octave )  می باشد. این نرم افزار کاربرانی به وسعت MATLAB ندارد؛ ولی یکی از قویترین نرم افزار ها در این ردیف محسوب می شود.

از طرف دیگر تکنولوژی هایی مانند تکنولوژی .NET (که توسط مایکروسافت ارائه شده) تا چند سال گذشته رقیب  قدرتمندی برای MATLAB و تکنولوژی های هم ردیف آن محسوب نمی شد. ولی با تغییر سیاست توسعه دهندگان NET.، این بستر به مرور به سمت کارایی در محاسبات علمی پیش رفت و با جامعه ی برنامه نویسان گسترده ای که از این بستر پشتیبانی می کنند به پیشرفت های نسبتا بزرگی هم دست پیدا کرد. کتابخانه های متن باز فراوانی که برای محاسبات مختلف علمی تهیه شده اند دلیلی بر این ادعا می باشد.

مشکلی که در چند سال اول ارائه .NET مطرح شد مسئله ی هزینه استفاده از دات نت و ابزارهای توسعه برنامه نویسی مایکروسافت بود. به طور مثال قیمت بسته های ویژوال استودیو نسخه ی حرفه ای 1199 دلار آمریکا می باشد. که این رقم برای اکثر سیستم ها رقم قابل توجهی به نظر می رسد. ولی مایکروسافت با استفاده از سری نرم افزار های EXPRESS که به صورت رایگان در اختیار عموم قرار داده می شود این مسئله را (هزینه) در استفاده های علمی، تقریبا به حاشیه رانده است. به عنوان مثال اگر دانشمندی نیاز به پردازش علمی روی بستر دات نت داشته باشد، تقریبا هیچ نیازی به خریداری بسته ویژوال استودیو حرفه ای نخواهد داشت و تمام نیاز های این دانشمند بوسیله سری EXPRESS قابل رفع می باشند.

نکته ی مبهم دیگری که اکثر محافل علمی ایرادی برای .NET در نظر میگیرند عدم متن باز بودن این بستر است. در ایجا این نکته قابل ذکر است که متن تمام بستر .NET از سال 2008 به صورت رایگان در اختیار برنامه نویسان قرار گرفت و برنامه نویسان می توانند از امکانات trace و debug در متن دات نت استفاده کنند. این به مفهوم متن باز بودن دات نت نیست. ولی تا حدی ابهامات موجود در این زمینه را رفع کرده است.


جدول 1 مقایسه اجمالی دو تکنولوژی متلب و دات نت

 

ردیف

امکانات و تکنولوژی

MATLAB

.NET

1

قیمت بستر پایه و محیط برنامه نویسی

350 دلار

رایگان

2

مجامع متن باز و برنامه های متن باز

دارد

دارد

3

متن باز بودن پایه

تا حدی

تاحدی

4

جامعه ی برنامه نویسی

فراوان

فراوان

5

کتاب های در دسترس

خوب

عالی

6

تحریم ایران

در فروش و استفاده از امکانات آنلاین

در فروش


 

در مورد متن باز بودن و نحوه ی متن باز بودن متلب در مقالات آینده مطالبی ارائه خواهد شد.

جدول 1 نگاهی اجمالی به تفاوت های ظاهری دو سیستم مورد مقایسه ما است. اما برای این که ابهامات مربوط به .NET و دیگر بستر های همسطح .NET رفع شود، به تفاوت ها و شباهت های این دو سیستم به صورت جزئیتر می پردازم.


جدول 2 - بررسی تفاوت ها و شباهت ها در حوزه کاری من. مختصری از اطلاعاتی را که خود من در طی تحقیقاتم جمع آوری کردم و مورد نیاز خودم بود را نمایش می دهد.

 

ردیف

امکان یا ابزار

نام در MATLAB

معادل در .NET

1

بستر پایه

base

Visual studio express

2

Distributed Computing

toolbox

Ngrid

3

پردازش تصویر

toolbox

OpenCV & Aforge

4

پردازش موازی

toolbox

base

5

منطق فازی

toolbox

DotFuzzy

6

شبکه های عصبی

toolbox

NeuronDotNet & Aforge

7

الگوریتم ژنتیک

toolbox

Aforge & paradiseo

8

بستر محاسبات تکاملی

toolbox

paradiseo

9

جبر خطی و ماتریس

base

DotNumerics

10

محاسبات ریاضی

base

DotNumerics & base

11

ترسیم نمودار و ....

base

ZedGraph & base & gnuplot