Під'єднання програм до комп'ютерів

Концепції комп'ютерних наук

Pritesh Patel

Computer Scientist & Data Scientist for over 20 years

Міст між інструкціями людини й комп'ютера

Анімація, що показує компіляцію циклу for у двійковий код

Мови програмування

  • Людина пише код, а його перекладають у двійковий
  • Проміжна ланка

Види перекладу

  • Компіляція
  • Інтерпретація
Концепції комп'ютерних наук

Компільовані мови: як кіновиробництво

Зображення студії звукозапису як аналогії до компільованої мови

Компільовані мови

  • Код повністю перекладають у двійковий (машинний) код перед виконанням.
  • Це як кіно проти живої вистави.
    • Сценарій пишуть, репетирують, знімають і монтують до показу
Концепції комп'ютерних наук

Приклади компільованих мов

Мова програмування Логотип
C Логотип мови програмування C
C++ Логотип мови програмування C++
Java Логотип мови програмування Java
Rust Логотип мови програмування Rust
Go Логотип мови програмування Go

Переваги

  • Вища швидкодія

Недоліки

  • Повільніший цикл налагодження
  • Двійкові файли залежать від платформи
Концепції комп'ютерних наук

Інтерпретовані мови: живий театр

Зображення сцени театру як аналогії до інтерпретованої мови

Інтерпретовані мови

  • Код перекладають у двійковий (машинний) пострічково під час виконання.
  • Це як виконання сценарію наживо на сцені.
    • Миттєве виконання
Концепції комп'ютерних наук

Приклади інтерпретованих мов

Мова програмування Логотип
Python Логотип мови програмування Python
Javascript Логотип мови програмування Javascript
Ruby Логотип мови програмування Ruby
php Логотип мови програмування php
R Логотип мови програмування R

Переваги

  • Гнучкість і швидкі ітерації

Недоліки

  • Можуть працювати повільніше
Концепції комп'ютерних наук

Давайте потренуємось!

Концепції комп'ютерних наук

Preparing Video For Download...