• صفحه اصلی
  • بلاگ
وبلاگ هاب اصفهان

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

  • هاب اصفهان
  •    
  • سه شنبه ۱۲ مهر ۱۴۰۱

زبان های برنامه نویسی در دو دسته‌‌‌‌بندی کامپایلری (compiler) و مفسری (Interpreter) تقسیم‌‌‌بندی می‌‌‌‌شوند. زمانی که زبان های برنامه نویسی در این دو دسته‌‌‌بندی قرار دارند در ماهیت وظیفه اصلی آن‌‌‌‌‌ها تغییری ایجاد نمی‌‌‌‌شود. زبان‌‌‌‌های برنامه نویسی باید مقادیر ورودی سطح بالا را به زبان‌‌‌های سطح پایین برای درک سیستم تبدیل کنند. این فرایند در هر دو دسته‌‌‌‌‌بندی ثابت است اما نوع انجام این فرایند، زبان‌‌‌‌‌ها را از هم جدا می‌‌‌‌‌‌‌کند.

زبان‌‌‌‌‌های کامپایلری (compiler)

کامپایلر کدهای موجود را به زبان میانی مثل اسمبلی ترجمه می‌‌‌‌کند و سپس به کدهای قابل فهم برای سیستم تبدیل می‌‌‌‌شود. این فرایند این امکان را فراهم می‌‌‌‌کند که کدها با یکبار کامپایل شدن در سیستم عامل هدف اجرا شوند و با توجه به کمتر شدن فرایند ترجمه سرعت بالاتری نسبت به زبان‌‌‌های مفسری دارند. در زبان‌‌‌‌های کامپایلری با توجه به ترجمه شدن کل کدها قبل از اجرای برنامه، اگر مشکلی در سینتکس یا مسائل فنی وجود داشته باشد برنامه به کلی اجرا نمی‌‌‌‌شود.

زبان‌‌‌‌های مفسری (Interpreter)

در این دسته‌‌‌‌بندی، کدهای برنامه به صورت خط به خط خوانده و ترجمه می‌‌شوند. این فرایند در هر بار اجرای برنامه انجام می‌‌‌‌شود. در این روش با توجه به نحوه ترجمه کدها اگر خطایی در برنامه وجود داشته باشد، برنامه تا زمان رسیدن به ارور به درستی کار می‌‌‌‌کند و در زمان رخداد ارور برنامه کرش (crash) می‌‌‌‌کند.

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

  • وابستگی به سیستم عامل

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

  • میزان استفاده از منابع سیستم عامل

زبان‌‌‌‌های مفسری با توجه به اینکه باید خط به خط برنامه را در هربار اجرا کردن ترجمه کنند، منابع بیشتری از سیستم را اشغال می‌‌‌کنند و سرعت پایین‌‌‌‌تری در زمان اجرا (Run Time) نسبت به زبان‌‌‌‌‌های کامپایلری دارند.

  • دیباگینگ (خطایابی)

یک بار خواندن برنامه برای اجرا در زبان‌‌‌‌‌های کامپایلری تا الان یه مزیت محسوب میشد اما در زمان دیباگینگ ورق برمی‌‌‌‌گردد. زبان‌‌‌‌های مفسری با توجه به ترجمه خط به خط در صروت بروز مشکل می‌‌‌‌توانند برنامه نویس را بهتر برای حل مشکل راهنمایی کنند اما در کامپایلری باید کدها از بالا بررسی شوند تا مشکل پیدا و رفع شود. اگر بخواهیم برای هر دسته‌‌‌‌بندی مثال‌‌‌‌های بزنیم می‌‌‌‌توانیم به پایتون (Python) ، جاوااسکریپت (JavaScript) ، پی اچ پی (PHP) ، روبی (Ruby) برای دسته‌‌‌‌بندی زبان‌های مفسری و به سی شارپ (#C) ، جاوا (Java) ، سی پلاس پلاس (++C) ، اسکالا (Scala) برای زبان‌های کامپایلری اشاره کنیم.

اما حرف آخر…

زبان‌های مفسری توان بیشتری از سیستم می‌‌‌گیرند اما در هم سیستم عاملی که مفسر داشته باشند قابل اجرا هستند اما کامپایلرها فقط در سیستم عاملی که تعریف شده است قابل اجرا هستند ولی از طرف دیگر توان کمتری از سیستم می‌‌‌‌گیرند. در انتخاب زبان برنامه نویسی به مسائلی مثل کامپایلری یا مفسری توجه زیادی نکنید و معیارهای خود را نسبت به علاقه و بازار هدف مشخص کنید.

اشتراک:
  • آموزشی
https://blog.isfahanhub.com/?p=36

عضو مجموعه هاب اصفهان باشید

اعضای ویژه هاب اصفهان

دسته بندی مقالات

  • آموزشی
  • استارتاپ
  • حوزه مالی
  • روانشناسی و منابع انسانی
  • معرفی خدمات هاب

مقاله های دیگر

وبلاگ هاب اصفهان

فریم ورک Vue JS چیست؟

سه شنبه ۱۲ مهر ۱۴۰۱

وبلاگ هاب اصفهان

استارتاپ چیست؟

سه شنبه ۱۲ مهر ۱۴۰۱

وبلاگ هاب اصفهان

روش های تامین سرمایه برای استارتاپ

سه شنبه ۱۲ مهر ۱۴۰۱

وبلاگ هاب اصفهان

صمیمیت؛ عامل پویایی سازمان

سه شنبه ۱۲ مهر ۱۴۰۱

وبلاگ هاب اصفهان

کسب و کار اینترنتی چیست؟

سه شنبه ۱۲ مهر ۱۴۰۱

وبلاگ هاب اصفهان

استارتاپ چیه ؟

سه شنبه ۱۲ مهر ۱۴۰۱

وبلاگ هاب اصفهان

دنیای کارمندی و فریلنسری

سه شنبه ۱۲ مهر ۱۴۰۱

درباره مرکز نوآوری هاب اصفهان

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

راه های ارتباطی

  • آدرس: دروازه دولت، ارگ عظیم جهان نما، آسانسور شماره 6، طبقه 5
  • info@isfahanhub.com
  • 03132121476
  • 03132121477

کلیه حقوق مادی و معنوی این سایت متعلق به شرکت هوشمند اول برنای اصفهان (هاب اصفهان) می باشد.
هوشمند اول برنای اصفهان © 1400
Designed By ChizWeb Group