Разница между компилируемыми и интерпретируемыми языками

Обычный вопрос, который задают люди, думающие о программировании: «Какой язык я должен изучать?»

Ответ на этот вопрос практически невозможно ответить. Если вы хотите научиться программировать для карьерных целей, тогда стоит посмотреть, что используют все остальные, и научиться этому. 

Например, в последние годы огромное количество людей используют либо стек .NET, который включает ASP.NET, C #, JavaScript / JQuery / AngularJS. Все эти языки программирования являются частью инструментария Windows, и, хотя .NET стал доступен для Linux, он широко не используется.

В мире Linux люди используют Java, PHP, Python, Ruby On Rails и C. 

Что такое скомпилированный язык?

#включают
int main ()
{
      printf («Hello World»);
}

Выше приведен очень простой пример программы, написанной на языке программирования Си.

C является примером скомпилированного языка. Чтобы запустить приведенный выше код, нам нужно запустить его через C-компилятор.

Как правило, для этого выполните следующую команду в Linux:

gcc helloworld.c -o привет

Приведенная выше команда превращает код из удобочитаемого формата в машинный код, который может работать на компьютере.

«gcc» сам по себе является скомпилированной программой (компилятор gnu c). 

Скомпилированную программу можно запустить, просто запустив имя программы следующим образом:

 ./Привет

Преимущества использования компилятора для компиляции кода состоят в том, что он, как правило, работает быстрее, чем интерпретируемый код, поскольку ему не нужно работать на лету во время работы приложения. 

Скомпилированная программа также была проверена на ошибки во время компиляции. Если есть какие-либо команды, которые не нравятся компилятору, они будут сообщены. Это позволит вам исправить все ошибки кодирования до получения полностью запущенной программы.

Тот факт, что программа успешно скомпилирована, не означает, что она будет работать так, как вы ожидаете, поэтому вам все еще нужно протестировать ваше приложение.

Однако редко бывает что-либо идеальное. Если у нас есть программа на C, скомпилированная на нашем компьютере с Linux, мы не сможем скопировать эту скомпилированную программу на наш компьютер с Windows и ожидать запуска исполняемого файла.

Чтобы запустить ту же программу на C на нашем компьютере с Windows, нам нужно будет снова скомпилировать программу, используя компилятор C на компьютере с Windows.

Что такое интерпретируемый язык?

печать ("Привет, мир")

Приведенный выше код представляет собой программу на Python, которая будет отображать слова «hello world» при запуске.

Для запуска кода нам не нужно сначала его компилировать. Вместо этого мы можем просто выполнить следующую команду:

python helloworld.py

Приведенный выше код не нужно сначала компилировать, но он требует, чтобы python был установлен на любой машине, на которой требуется запустить скрипт.

Интерпретатор python берет код, читаемый человеком, и превращает его во что-то еще, прежде чем сделать его тем, что машина может читать. Все это происходит за кулисами, и, как пользователь, все, что вы увидите, это слова «здравствуй, мир».

В общем, считается, что интерпретируемый код будет выполняться медленнее, чем скомпилированный код, потому что он должен активно выполнять этап превращения кода в то, что машина может обрабатывать на лету, в отличие от скомпилированного кода, который может просто выполняться.

Хотя это может показаться недостатком, существует ряд причин, по которым интерпретируемые языки полезны.

С одной стороны, гораздо проще заставить программу, написанную на python, работать на Linux, Windows и macOS. Все, что вам нужно сделать, это убедиться, что python установлен на компьютере, на котором вы хотите запустить скрипт.

Еще одним преимуществом является то, что код всегда доступен для чтения, и его можно легко изменить так, как вы хотите. В случае скомпилированного кода вам нужно найти, где находится код, изменить его, скомпилировать и заново развернуть программу.

С интерпретированным кодом вы открываете программу, меняете ее и она готова к работе.

Так что вы должны использовать?

Мы сомневаемся, что ваше решение о языке программирования будет решено, будет ли это скомпилированный язык или нет. 

Наш список лучших языков программирования определенно стоит проверить.

В то время как некоторые языки явно умирают, такие как COBOL, Visual Basic и ActionScript, есть другие, которые были на грани смерти и добились драматического возвращения, такого как JavaScript.

Как правило, наш совет заключается в том, что если вы используете Linux, вы должны либо изучать Java, Python или C, а если вы используете Windows, изучать .NET и AngularJS.

Ссылка на основную публикацию