کامپایل یک برنامه یعنی تبدیل آن از کد منبع (Source Code) قابل خواندن توسط انسان به فایل اجرایی (Executable File). کامپایل یک برنامه همچنین دارایی هایی مانند تصاویر و نمادها را در برنامه بسته بندی می کند. قبل از اینکه رایانه بتواند آن را اجرا کند، لازم است یک برنامه را کامپایل کنید.
وقتی یک توسعه دهنده (Developer) برنامه ای می نویسد، این کار را در زبان برنامه نویسی (Programming Language) طراحی شده برای آسان انجام می دهد. تا بنویسند، بخوانند و حفظ کنند. با این حال، رایانهها نمیتوانند برنامهای را مستقیماً از کد منبع اجرا کنند - واحد پردازش مرکزی (CPU) فقط میتواند دستورالعملها را در سطح پایین خود زبان ماشین (Machine Language) درک کند. کامپایل کردن یک برنامه، دستورالعملهای موجود در کد منبع را به مجموعهای از دستورالعملهای مربوط به زبان ماشین تبدیل میکند، سپس آن را به یک فایل اجرایی دودویی (Binary) رمزگذاری میکند.
کیت های توسعه نرم افزار (بسته توسعه نرم افزار (SDK)) شامل برنامه هایی به نام کامپایلر (Compiler) برای توسعه دهندگان تا پروژه های خود را کامپایل کنند. یک کامپایلر کد منبع را به یک فایل اجرایی برای یک سیستم عامل (Operating System) و پردازنده معماری (Architecture) در یک زمان تبدیل میکند - برای مثال، پنجره ها (Windows) در x86-64 یا یونیکس (Unix) در ARM64. برخی از کامپایلرها به توسعهدهنده اجازه میدهند تا کد ماشین را برای چندین معماری در یک فایل قرار دهد - برای مثال، یک باینری جهانی برای سیستم عامل مک (macOS) که میتواند بر روی هر دو پردازنده سیلیکون اینتل و اپل اجرا شود - با کامپایل جداگانه برای هر معماری پردازنده، سپس آنها را در یک فایل اجرایی بسته بندی شده ترکیب کنید.
توجه: زبان های برنامه نویسی که قبل از اجرا نیازی به کامپایل ندارند، به عنوان زبان های "تفسیر" شناخته می شوند. در عوض، یک برنامه "مترجم (Interpreter)" کد منبع برنامه را به زبان ماشین در زمان اجرا (Runtime) ترجمه می کند. برای مثال، یک برنامه جاوا اسکریپت (JavaScript) کامپایل نمیشود، بلکه از طریق یک مفسر جاوا اسکریپت مجزا اجرا میشود.
تعریف کامپایل (Compile) در این صفحه یک تعریف پایه نگاشته شده توسط تک بورد است. اگر مایل به ارجاع به این صفحه یا استناد به این تعریف هستید، با شرط درج لینک به این صفحه می توانید از این محتوا استفاده کنید.
هدف تک بورد توضیح اصطلاحات کامپیوتری به روشی است که به راحتی قابل درک باشد. ما برای سادگی و دقت با هر تعریفی که منتشر می کنیم تلاش می کنیم. اگر بازخوردی درباره تعریف کامپایل (Compile) دارید یا میخواهید یک اصطلاح فنی جدید پیشنهاد کنید، لطفاً با ما تماس بگیرید.
آیا می خواهید اصطلاحات فنی بیشتری یاد بگیرید؟ در خبرنامه روزانه یا هفتگی مشترک شوید و شرایط و آزمون های ویژه را در ایمیل خود تحویل بگیرید.