Łączenie programów z komputerami

Pojęcia informatyki

Pritesh Patel

Computer Scientist & Data Scientist for over 20 years

Od instrukcji człowieka do instrukcji komputera

Animacja przedstawiająca pętlę for kompilowaną do postaci binarnej

Języki programowania

  • Kod pisany przez człowieka, tłumaczony na kod binarny
  • Warstwa pośrednia

Rodzaje tłumaczenia

  • Kompilacja
  • Interpretacja
Pojęcia informatyki

Języki kompilowane: produkcja filmowa

Obraz przedstawiający studio nagraniowe jako analogię do języka kompilowanego

Języki kompilowane

  • Kod jest w całości tłumaczony na kod binarny (maszynowy) przed wykonaniem.
  • Analogia: produkcja filmowa vs spektakl na żywo
    • Scenariusz pisany, próbowany, nagrywany i montowany z wyprzedzeniem
Pojęcia informatyki

Przykłady języków kompilowanych

Język programowania Logo
C Logo języka programowania C
C++ Logo języka programowania C++
Java Logo języka programowania Java
Rust Logo języka programowania Rust
Go Logo języka programowania Go

Zalety

  • Wyższa wydajność

Wady

  • Dłuższy cykl debugowania
  • Pliki binarne zależne od platformy
Pojęcia informatyki

Języki interpretowane: teatr na żywo

Obraz przedstawiający spektakl teatralny jako analogię do języka interpretowanego

Języki interpretowane

  • Kod jest tłumaczony na kod binarny (maszynowy) linia po linii podczas wykonania.
  • Analogia: spektakl grany na żywo.
    • Natychmiastowe wykonanie
Pojęcia informatyki

Przykłady języków interpretowanych

Język programowania Logo
Python Logo języka programowania Python
Javascript Logo języka programowania JavaScript
Ruby Logo języka programowania Ruby
php Logo języka programowania PHP
R Logo języka programowania R

Zalety

  • Elastyczność i szybka iteracja

Wady

  • Może działać wolniej
Pojęcia informatyki

Czas na ćwiczenia!

Pojęcia informatyki

Preparing Video For Download...