سلام دوستان، امروز یه توضیح خوب و جالب در باره مقایسه زبان های کامپایلری و مفسری خوندم، گفتم با شما هم به اشتراک بذارم.
لزوما هر زبان کامپایلری ای قرار نیست سریعتر از زبان های مفسری باشه هر چند که عموما هست.
مثلا زبان C# یه زبان کامپایلری هست. اما کد شمارو به machine code کامپایل نمیکنه. بلکه به یه زبان میانه که اصطلاحا Common Intermediate Language (CIL) میگن کامپایل میکنه. سپس با استفاده از Common Language Runtime در زمان اجرا کد زبان میانه رو به کد زبان ماشین تبدیل میکنه. که اصطلاحا این کار رو Just-in-Time compile میگن. کاری مشابه به زبان Java. نکته مهم JIT اینه که کد رو کش میکنه. پس در واقع هر چقدر که از اجرای برنامه میگذره، برنامه شما سریعتر میشه!
اما خب زبان های مفسری هم بیکار ننشستن. اونا هم راه حل های خودشون رو دارن برای سریعتر اجرا شدن برنامه، یکی از متدوال ترین راه ها استفاده از compiled libraryهایی هستند که مثلا در زبان C++ نوشته شدن و در زبانی مثلا مثل Python شما فقط از API اون کتابخونه برای فراخوانی کد در زمان اجرا استفاده میکنید، بدون اینکه متوجه بشید این کد در چه زبانی نوشته شده و چطوری اجرا میشه
https://qr.ae/pv28iE
#compiled_language #interpreted_language
@gocasts
Post #182
1.29K
- 👍 16
- 👏 4