# مباحث متفرقه برنامه نویسی > برنامه نویسی Matlab >  فرق بین Matlab و Mathematica از تمامی جهات (Matlab vs Mathematica) ؟

## yassou

*با سلام به همه دوستان* 
همونطور که از اسم تاپیک معلوم هستش می خواستم با کمک همدیگه فرق بین این دو رو بدونیم (برای خود من که سوال هستش).
در کل میخواستم هر دو رو از لحاظ سطح زبان، کد نویسی، سرعت اجرا، user friendly یا همون بررسی اینکه کدوم میحطش بهتره، object oriented programming و ..... بررسی کنیم.
از دوستان ممنون میشم تا اونجایی که امکانش هست کمک کنن تا این دو رو بهتر بشناسیم و از هم تفکیکش کنیم.
با تشکر.

----------


## yassou

خب از اونجایی که من به نظرات بعضی از سایت ها و کاربراشنو نیگاه کردم به نتایج پایین رسیدم :
(البته قبل از شروع به خوندن بحث لازم به ذکر بوده که مورد تعصب فردی بر روی یک نرم افزار و یا یک شرکت خاص رو باید در نظر گرفت که میتونه درصد خطایی باشه بر قضاوت درست! البته ما هیچکس رو متهم نمی کنیم).
همونطور که میدونیم Mathematica و Matlab هر دوشون محصولات متفاوتی هستند.
تمرکز اصلی Mathematica روی کیفیت حل نمادی (symbolic computation یا analytically solve) و همچون دقت زیاد در علوم محاسبتی رو دارا هستش.
از طرف دیگه تمرکز اصلی Matlab روی حل با سرعت بالا با استفاده از روش حل عددی (numerical computation) یا همون محسبات عددی هستش.
در واقع میشه گفت که این مغز اصلی تفاوت این دو هست که برای دانشجویان مهندسی که درس محاسبات عددی و دروس مشابه رو گذرونده باشن این بحث ملموس تر هست.
حال صرف نظر از دو نوع حل analytically solve و numerical computation که برای هردو گفته شد، در بررسی برای GUI (_graphical user interface__ یا محیط کاربری)_ _گفت که_ _ Matlab__ برتری بیشتری داره و هچنین پیشناهادات بهتری برای حل معادلات معمولی وجز_ئی رو داره. لازم به ذکر بوده که زبان برنامه نویسی Matlab خیلی شبیه دو زبان CوC++‎‎‎‎‎‎‎‎ هستش و این قابلیت رو داره که با این دو برنامه ارتباط داشته باشه.
ازطرف دیگه همونطور که گفته شد Mathematica توانایی حل معادلات پیچیده تری با توجه به روش حل آنالیتیکالیش (analytically solve) داره که از اینطرف توانایی این رو داره که نتایج رو به آسانی بصورت گرافیکی بنمایش بزاره .
در بحث دقت لازم و نقطه یا نقطه های شناوری که برای دقت در حل عددی استفاده میشه حرف های زیادی هست، همچون اینکه Matlab  از دو نقطه شناوری استفاده میکنه و Matemathica یک نوع دقت اختیاری رو دارا هستش.
همش مونده به اینکه بحث رو تا چه اندازه دقیق تر و موشکافانه تر بررسی کنیم . درضمن همونطور که میدونید ورژن های جدیدتر ابزار (Tools) و آپدیت های پیشرفته و جدیدتری رو برای بازده بهتر رو به هر دو برنامه میدن که توسط سازنده ها عرضه میشه تا عیب های قبلی رو بپشونه، که خود این شرایط بررسی رو مشکل تر میکنه .
اینا هم چنتا مرجع و نظر کاربرای اون سایتها که هم من استفاده کردم و هم میتونید خودتون اطلاعاتی رو بدست بیارید :
http://math.stackexchange.com/questions/153/what-should-i-learn-first-mathematica-or-matlab

http://stackoverflow.com/questions/3076072/what-types-of-projects-is-mathematica-good-for

http://ask.slashdot.org/story/03/01/05/068208/mathematica-vs-matlab

----------


## rahnema1

بسته به این داره که بخواهی باهش چیکار کنی به نظر من اینها همه اش ابزاره مهمتر از اینها تفکر استفاده کننده از اونهاست
هر دو اینها معمولا امکاناتی بیشتر از نیاز یک کاربر ارائه میدن تازه اگه هم چیزی باشه که توی اینها نباشه میشه اون رو توی نرم افزار دیگه پیدا واستفاده کرد
منظور اینه که خیلی روی ابزارها تکیه نکنید
گاهی وقتها آفتابه لگن زیاده ولی شام ناهار پیدا نمی شه

----------


## yassou

درست دوست عزیز، ولی در هر صورت باید یه تفاوتایی رو تو تفکر (مغز) برنامه نویسیشون (نرم افزاری) داشته باشن، وگرنه جفت برنامه ها میشن یکی.
چون ممکنه یکی به اون یکی تو یه شاخه ای (مثلا حل معادلات ژنتیکی) به جواب های بهتری برسه، درواقع بیشتر دنبال این تفاوت ها هستیم .
ممنون که به بحث جواب دادی.

----------

