دنیای کامپیوتر

مفسر(Interpreter) چیست؟ تفاوت مفسر و کامپایلر

مفسر یا به انگلیسی Interpreter به صورت خلاصه یه برنامه ای هست که کدها رو خط به خط می خواند و اجرا میکنه، در کل مفسر مثل کامپایلر کدهای زبان های سطح بالا رو به زبان ماشین تبدیل میکنه. با اَبَر پرس همراه باشید.

از زبان های مفسری میتوان به PHP, Python, JavaScript اشاره کرد که برای اجرا شدن کدها نیاز به نصب مفسر مورد نیاز همون زبان برنامه نویسی در اون سیستم عامل رو دارن.

مثلا برای اجرا شدن کدهای PHP روی سرور حتما باید Interpreter این زبان برنامه نویسی نصب باشد.

در مورد زبان JavaScript برای این که کدها این زبان اجرا شن باید مرورگرها یه Interpreter تعبیه شده رو درخودشون داشته باشن، که دارن.

تفاوت مفسر و کامپایلر

مفسر و کامپایلر یه سری تفاوت ها دارن که با هم بررسی میکنیم.

تفاوت مفسر و کامپایلر
تفاوت مفسر و کامپایلر
  • همون طور که بالا توضیح دادم کدها در مفسر خط به خط اجرا میشن این امکان باعث شده که خطایابی کار آسان تری بشه، ولی چون که این عمل زمان بیشتری رو نسبت به compile کردن میبره پس کندتر کدها اجرا میشن!
  • وقتی یه برنامه کامپایل میشه یه فایلی با پسوند .obj رو تولید میکنه ولی در مفسر خبری از این فایل نیست.
  • اگه بخواین که کدهای یک زبان مفسری مثل python رو از اول اجرا کنید دوباره تمام کدها از اول تفسیر میشن! در حالی که در وقتی یه کدی که compile شده دیگه احتیاج نیست برای این که اون کد رو اجرا کنیم از اول کامپایل کنیم.
  • در compiler خطاها زمانی نمایان می شوند که تمام کدها توسط کامپایلر خوانده شده باشد اما در مفسر دستورات خط به خط اجرا میشوند تشخیص خطا خیلی سریع تر است.
  • سرعت بیشتر کامپایلر نسبت به مفسر (چون که مفسر کدها رو خط به خط اجرا میکنه)
  • یکی از مشکلات compiler این است که کدهای کامپایل شده روی یک پلتفرم خاص، روی پلتفرم دیگه کارنمیکنه؛ یا نوع معماری پردازنده های سیستم های با هم تفاوت باشن و برنامه کار نکنه. مثلا یه برنامه کامپایل شده برای platform های IBM روی کامپیوترهای Apple کارنمی کنه.
    اما در Interpreter این طور مشکلی وجود نداره چون خط به خط کدها رو اجرا میکنه.

امیدوارم که این مقاله به کارتون بیاد، دوست دارم که نظرهاتون رو بشنوم😊 و خوشحال میشم که این مقاله رو با دوستانتون به اشتراک بزارید.🤞

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

رسول وطن پرست

من کارشناس نرم افزار هستم علاقمند به یادگیری و آموزش و نشر اطلاعات و دانسته های خودم هستم.

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا
بستن