компилируемый
Это стабильная версия, проверенная 15 января 2018. 5 изменений ожидают проверки.
| Состояние | отпатрулирована |
- 1 Русский
- 1.1 Морфологические и синтаксические свойства
- 1.2 Произношение
- 1.3 Семантические свойства
- 1.3.1 Значение
- 1.3.2 Синонимы
- 1.3.3 Антонимы
- 1.3.4 Гиперонимы
- 1.3.5 Гипонимы
Русский [ править ]
Морфологические и синтаксические свойства [ править ]
компили́руемый
Произношение [ править ]
- МФА: [ kəm⁽ʲ⁾pʲɪˈlʲirʊ(ɪ̯)ɪmɨɪ̯ ]
Семантические свойства [ править ]
Значение [ править ]
- страд. прич.наст. вр. от компилировать ◆ Отсутствует пример употребления (см. рекомендации ).
Значение слова «компилируемый»
Привет! Меня зовут Лампобот, я компьютерная программа, которая помогает делать Карту слов. Я отлично умею считать, но пока плохо понимаю, как устроен ваш мир. Помоги мне разобраться!
Спасибо! Я стал чуточку лучше понимать мир эмоций.
Вопрос: примитивизировать — это что-то нейтральное, положительное или отрицательное?
Нейтральное
Положительное
ОтрицательноеСинонимы к слову «компилируемый»
Предложения со словом «компилируемый»
- Таким образом, язык Java является компилируемым, потому что необходима компиляция исходного кода в промежуточный по отношению к машинному байт-коду, и интерпретируемым, потому что байт-код не может быть исполнен самой операционной системой компьютера, а должен интерпретироваться.
Понятия со словом «компилируемый»
Компилируемый язык программирования — язык программирования, исходный код которого преобразуется компилятором в машинный код и записывается в файл с особым заголовком и/или расширением для последующей идентификации этого файла, как исполняемого операционной системой (в отличие от интерпретируемых языков программирования, чьи программы выполняются программой-интерпретатором).
Отправить комментарий
Дополнительно
- Перевод слова «компилируемый» и примеры предложений (английский язык)
- Definition of «compile» at WordTools.ai (английский язык)
Чем отличаются компилируемые и интерпретируемые языки программирования?
Компилировать или нет? Ответить на этот вопрос почти невозможно. Если вы хотите научиться программировать в профессиональных целях, тогда хорошей идеей будет присмотреться к тому, что используют другие.
Например, в последние годы огромное количество программистов используют платформу .NET , которая включает в себя ASP.NET , C # , JavaScript/JQuery/AngularJS . Все эти языки программирования являются частью инструментария Windows . И хотя .NET стал доступен для Linux , пока он не используется достаточно широко для этой ОС . В мире Linux используют Java , PHP , Python , Ruby On Rails и C .
Что такое компилируемый язык программирования?
#include int main()
Выше приведен простой пример программы, написанной на языке программирования C . Это пример компилируемого языка программирования. Чтобы выполнить код, его необходимо запустить с помощью компилятора. Для этого я использую следующую команду Linux :
gcc helloworld.c -o hello
Приведенная выше команда превращает код из формата, удобного для восприятия человеком, в машинный код, который может выполнить компьютер. gcc сам является скомпилированной программой ( компилятор gnu c ).
Скомпилированную программу можно выполнить, просто запустив имя программы следующим образом:
./hello
Преимущества использования компилятора заключаются в том, что он обычно работает быстрее, чем интерпретируемый код, так как ему не нужно обрабатывать код « на лету » во время работы приложения.
Кроме этого, скомпилированная программа будет проверена на наличие ошибок во время компиляции. Если есть команды, которые не понравились компилятору, то о них будет сообщено. Это позволяет исправлять все ошибки перед запуском программы.
Но то, что программа скомпилирована успешно, еще не означает, что она будет работать так, как вы ожидаете. Поэтому все равно нужно протестировать приложение.
Ничто не идеально. Если есть программа на компилируемом языке С , скомпилированная на компьютере, работающем Linux , я не могу копировать эту скомпилированную программу на Windows и рассчитывать, что исполняемый файл будет выполнен.
Чтобы запустить ту же программу на Windows , нужно будет снова скомпилировать ее, используя компилятор C на компьютере под управлением Windows .
Что такое интерпретируемый язык?
print ("hello world")Приведенный выше код представляет собой программу на языке python , которая отображает слова « hello world ».
Для выполнения кода нужно его компилировать сначала. Вместо этого я могу просто запустить следующую команду:
python helloworld.py
Приведенный выше код не нужно компилировать. Но необходимо, чтобы python был установлен на компьютере, на котором будет работать скрипт.
Интерпретатор python принимает удобный для восприятия человеком код и превращает его в промежуточное « состояние », прежде чем сформировать то, что может прочитать ПК. Все это происходит за кадром, и пользователь увидит только слова « hello world ».
Принято считать, что интерпретируемый код будет работать медленнее, чем скомпилированный код, потому что он должен проходить этап преобразования кода в отличие от скомпилированный кода, который просто выполняется.
Хотя это может показаться недостатком, существует ряд причин, по которым интерпретируемые языки полезны. Одна из них состоит в том, что гораздо проще выполнить программу, написанную на Python , в Linux , Windows и OSX . Просто убедитесь, что Python установлен на компьютере, на котором вы хотите запустить скрипт.
Еще одно преимущество заключается в том, что код всегда доступен для чтения, и его можно легко изменить. В случае со скомпилированным кодом нужно найти, где находится код, изменить его, скомпилировать и заново запустить программу.
В случае использования интерпретируемого кода вы открываете программу, меняете ее, и она готова к работе.
Так какой же язык использовать?
Сомневаюсь, что выбор языка программирования для изучения будет определен тем, что вы узнали, какие языки являются компилируемыми.
Несмотря на то, что некоторые языки явно умирают, такие как COBOL , Visual Basic и ActionScript , есть и другие, которые были на грани вымирания, но резко вернулись на прежнее положение, как например, JavaScript .
В общем, мой совет заключается в том, что если вы используете Linux , вам следует изучать Java , Python или C , а если вы используете Windows , изучаете .NET и AngularJS .
Основные принципы программирования: компилируемые и интерпретируемые языки
На данный момент этот блок не поддерживается, но мы не забыли о нём! Наша команда уже занята его разработкой, он будет доступен в ближайшее время.
Как и в предыдущей статье этого цикла, я хочу обратить ваше внимание на ключевые принципы программирования, которые влияют на всё то, что мы делаем, но с которыми мы редко сталкиваемся напрямую и поэтому не до конца их понимаем. Тема сегодняшней статьи — компилируемые и интерпретируемые языки.
Будучи разработчиками, мы часто сталкиваемся с такими понятиями, как компилятор и интерпретатор, но я считаю, что многие не совсем понимают, что они означают. Между тем, компиляция и интерпретация — это основы работы всех языков программирования. Давайте взглянем на то, как на самом деле устроены эти понятия.
Вступление
Мы полагаемся на такие инструменты, как компиляция и интерпретация, чтобы преобразовать наш код в форму, понятную компьютеру. Код может быть исполнен нативно, в операционной системе после конвертации в машинный (путём компиляции) или же исполняться построчно другой программой, которая делает это вместо ОС (интерпретатор).
Компилируемый язык — это такой язык, что программа, будучи скомпилированной, содержит инструкции целевой машины; этот машинный код непонятен людям. Интерпретируемый же язык — это такой, в котором инструкции не исполняются целевой машиной, а считываются и исполняются другой программой (которая обычно написана на языке целевой машины). Как у компиляции, так и у интерпретации есть свои плюсы и минусы, и именно это мы и обсудим.
Прежде чем мы продолжим, стоит отметить, что многие языки программирования имеют как компилируемую, так и интерпретируемую версии, поэтому классифицировать их затруднительно. Тем не менее, чтобы не усложнять, в дальнейшем я буду разделять компилируемые и интерпретируемые языки.
Компилируемые языки
Главное преимущество компилируемых языков — это скорость исполнения. Поскольку они конвертируются в машинный код, они работают гораздо быстрее и эффективнее, нежели интерпретируемые, особенно если учесть сложность утверждений некоторых современных скриптовых интерпретируемых языков.
Низкоуровневые языки как правило являются компилируемыми, поскольку эффективность обычно ставится выше кроссплатформенности. Кроме того, компилируемые языки дают разработчику гораздо больше возможностей в плане контроля аппаратного обеспечения, например, управления памятью и использованием процессора. Примерами компилируемых языков являются C, C++, Erlang, Haskell и более современные языки, такие как Rust и Go.
Проблемы компилируемых языков, в общем-то, очевидны. Для запуска программы, написаной на компилируемом языке, её сперва нужно скомпилировать. Это не только лишний шаг, но и значительное усложнение отладки, ведь для тестирования любого изменения программу нужно компилировать заново. Кроме того, компилируемые языки являются платформо-зависимыми, поскольку машинный код зависит от машины, на которой компилируется и исполняется программа.
Интерпретируемые языки
В отличие от компилируемых языков, интерпретируемым для исполнения программы не нужен машинный код; вместо этого программу построчно исполнят интерпретаторы. Раньше процесс интерпретации занимал очень много времени, но с приходом таких технологий, как JIT-компиляция, разрыв между компилируемыми и интерпретируемыми языками сокращается. Примерами интерпретируемых языков являются PHP, Perl, Ruby и Python. Вот некоторые из концептов, которые стали проще благодаря интерпретируемым языкам:
- Независимость от платформы;
- Рефлексия;
- Динамическая типизация;
- Меньший размер исполняемых файлов:
- Динамические области видимости.
Основным недостатком интерпретируемых языком является их невысокая скорость исполнения. Тем не менее, JIT-компиляция позволяет ускорить процесс благодаря переводу часто используемых последовательностей инструкции в машинный код.
Бонус: байткод-языки
Байткод-языки — это такие языки, которые используют для исполнения кода как компиляцию, так и интерпретацию. Java и фреймворк .NET — это типичные примеры байткод-языков. На самом деле, Java Virtual Machine (JVM) — это настолько популярная виртуальная машина для интерпретации байткода, что на ней работают реализации нескольких языков. Кстати, недавно стало известно, что в новой версии Java будет также поддерживаться и статическая компиляция.
В байткод-языке сперва происходит компиляция программы из человекочитаемого языка в байткод. Байткод — это набор инструкций, созданный для эффективного исполнения интерпретатором и состоящий из компактных числовых кодов, констант и ссылок на память. С этого момента байткод передаётся в виртуальную машину, которая затем интерпретирует код также, как и обычный интерпретатор.
При компиляции кода в байткод происходит задержка, но дальнейшая скорость исполнения значительно возрастает в силу оптимизации байткода. Кроме того, байткод-языки являются платформо-независимыми, превосходя при этом по скорости интерпретируемые. Для них также доступна JIT-компиляция.
Заключение
Многие языки в наши дни имеют как компилируемые, так и интерпретируемые реализации, сводя разницу между ними на нет. У каждого вида исполнения кода есть преимущества и недостатки.
Вкратце, компилируемые языки являются самыми эффективными, поскольку они исполняются как машинный код и позволяют использовать аппаратное обеспечение системы. Однако это вводит дополнительные ограничение на написание кода и делает его платформо-зависимым. Интерпретируемые же языки не зависят от платформы и позволяют использовать такие техники динамического программирования, как метапрограммирование. Тем не менее, в скорости исполнения они значительно уступают компилируемым языкам.
Байткод-языки, в свою очередь, пытаются использовать сильные стороны обоих видов языков, и у них это неплохо получается.