44
Języki i paradygmaty programowania I. Wprowadzenie

Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

  • Upload
    others

  • View
    6

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

Języki i paradygmaty programowania

I. Wprowadzenie

Page 2: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-2

O źródłach● wykład został przygotowany w ogromnej części

w oparciu o serwis http://wazniak.mimuw.edu.pl/(zgodnie z licencją serwisu)

● inne źródła:– Wikipedia:http://pl.wikipedia.org/, http://en.wikipedia.org/

– niektóre przykłady fragmentów programów:http://www.im.pwr.wroc.pl/~przemko/prolog/ http://rudy.mif.pg.gda.pl/~bogdro/dos/

Page 3: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-3

O przedmiocie● prowadzący: dr Jarosław Bylina● email: [email protected]● www: http://hektor.umcs.lublin.pl/~jmbylina/● 15 godzin wykładu (brak ćwiczeń)● 5 spotkań po 3 godziny lekcyjne● na każdym spotkaniu (poza pierwszym) krótki

teścik z poprzedniego wykładu● wyniki testów stanowią podstawę zaliczenia

Page 4: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-4

Cel przedmiotu● Uświadomienie istotnej różnorodności

języków programowania● Zrozumienie sposobu działania implementacji

języków programowania● Nauczenie podejmowania lepszych decyzji co

do wyboru języka programowania odpowiedniego do postawionego problemu

Page 5: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-5

Paradygmat?● słowo nadużywane przez filozofów, lingwistów,

informatyków...● SJP PWN:

– przyjęty sposób widzenia rzeczywistości w danej dziedzinie, doktrynie itp.

– zespół form fleksyjnych (deklinacyjnych lub koniugacyjnych), właściwy danemu typowi wyrazów; wzorzec, model deklinacyjny lub koniugacyjny

Page 6: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-6

Paradygmat?● z greckiego:

παράδειγμα (parádeigma)

– wzorzec– przykład

Page 7: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-7

Paradygmat?● Nie chodzi o typowy, wzorcowy sposób pisania

programów!● Chodzi raczej o zbiór mechanizmów, jakich

programista używa, pisząc program, i o to, jak ów program jest następnie wykonywany przez komputer

● Jest to ogół oczekiwań programisty wobec języka programowania i komputera, na którym będzie działał program

Page 8: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-8

Wielcy

John von Neumann

Niklaus E. Wirth

Donald E. Knuth

Page 9: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-9

Page 10: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-10

Paradygmaty programowania● Programowanie imperatywne

– opisujemy kolejne czynności, które wykonawca (komputer) ma wykonać, by osiągnąć cel

– w tym rodzaju programowaniu programista opisuje, jak komputer ma działać

● Programowanie deklaratywne– opisujemy cel, który wykonawca (komputer) ma

osiągnąć– w tym rodzaju programowaniu programista

opisuje, co komputer ma osiągnąć

Page 11: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-11

I. Programowanie imperatywne● Najbardziej pierwotny sposób programowania,

w którym program postrzegany jest jakociąg poleceń dla komputera

● Obliczenia rozumiemy tu jakosekwencję poleceńzmieniających krok po kroku stan maszyny,aż do uzyskania oczekiwanego wyniku

● Stan maszyny należy z kolei rozumieć jako zawartość całej pamięci oraz rejestrówi znaczników procesora

Page 12: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-12

I. Programowanie imperatywne● Ten sposób patrzenia na programy związany

jest ściśle z budową sprzętu komputerowegoo architekturze von Neumanna, w którym poszczególne instrukcje (w kodzie maszynowym) to właśnie polecenia zmieniające ów globalny stan

Page 13: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-13

I. Programowanie imperatywne

Page 14: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-14

I. Programowanie imperatywne● Języki wyższego (w stosunku do asemblera

i kodu maszynowego) poziomu — takie jak Fortran, Algol, Pascal, Ada lub C — posługują się pewnymi abstrakcjami, ale wciąż odpowiadają paradygmatowi programowania imperatywnego

● Instrukcje podstawienia działają na danych pobranych z pamięci i umieszczają wynikw tejże pamięci, zaśabstrakcją komórek pamięci są zmienne

Page 15: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-15

Page 16: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-16

Ia. Programowanie proceduralne● Podział zadania programistycznego na

podzadania i ich niezależna (od siebie nawzajem) implementacja w postaci podprogramów (procedur)

● Niezalecanie korzystaniaz efektów ubocznych(rozumianych w sensie tradycyjnym, jako zmiana wartości zmiennych globalnych), lecz przekazywanie danych i wynikóww parametrach procedur

Page 17: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-17

Ia. Programowanie proceduralne

Page 18: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-18

Ia. Programowanie proceduralne

metodologia programowania bottom-up

Page 19: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-19

Page 20: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-20

Ib. Programowanie strukturalne● używanie prostych, dobrze zdefiniowanych

struktur(konstrukcji programistycznych):– sekwencja– selekcja (instrukcja warunkowa)– iteracja (pętla)– wywołanie podprogramu

● unikanie skoków (wręcz ich zakaz!)

Page 21: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-21

Ib. Programowanie strukturalne

Page 22: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-22

Ib. Programowanie strukturalne

metodologia programowania top-down

Page 23: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-23

Page 24: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-24

Ic./II. Programowanie obiektowe● Program to zbiór

porozumiewających się ze sobą obiektów,czyli jednostek zawierających pewne danei umiejących wykonywać na nich pewne operacje

● Programowanie obiektowe jest do pewnego stopniarozszerzeniemparadygmatu programowaniaproceduralnego i strukturalnego

Page 25: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-25

● Ważną cechą jest tupowiązanie danych(czyli stanu)z operacjami na nich(czyli poleceniami) w całość, stanowiącą odrębną jednostkę — obiekt

● Bardzo ważną cechą jest teżmechanizm dziedziczenia,czyli możliwość definiowania nowych, bardziej złożonych obiektów, na bazie obiektów już istniejących

Ic./II. Programowanie obiektowe

Page 26: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-26

● Inne ważne cechy programowania obiektowego to:– wysoki stopień abstrakcji danych

– enkapsulacja danych– polimorfizm

Ic./II. Programowanie obiektowe

Page 27: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-27

● Zwolennicy programowania obiektowego uważają, że ten paradygmat dobrze odzwierciedlasposób, w jaki ludzie myślą o świecie

● Nawet jeśli pogląd ten uznamy za przejaw pewnej egzaltacji, to niewątpliwie programowanie obiektowe zdobyło ogromną popularność i wypada je uznać za paradygmat obecnie dominujący

Ic./II. Programowanie obiektowe

Page 28: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-28

Ic./II. Programowanie obiektowe

Page 29: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-29

Page 30: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-30

III. Programowanie funkcyjne● Program to po prostu złożona

funkcja (w sensie matematycznym),która otrzymawszy dane wejściowe wylicza pewien wynik

Page 31: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-31

III. Programowanie funkcyjne● Zasadniczą różnicą w stosunku do poprzednich

paradygmatów jest brak dostępu do stanu maszyny

● Nie ma zmiennych● A co za tym idzie, nie ma

żadnych efektów ubocznych(rozumianych w sensie tradycyjnym, jako zmiana wartości zmiennych)

Page 32: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-32

III. Programowanie funkcyjne● Nie ma tradycyjnie rozumianych pętli

(imperatywnych z natury)● Tradycyjne pętle wymagają bowiem zwykle

(poza przypadkami zdegenerowanymi, jak pętle nieskończone) zmiennych (lub innego dostępu do stanu maszyny) do sterowania ich przebiegiem

Page 33: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-33

III. Programowanie funkcyjne● Konstruowanie programów to składanie funkcji● Zazwyczaj z istotnym wykorzystaniem

rekurencji (rekursji)(tam, gdzie w programowaniu imperatywnym wykorzystujemy pętle)

● Charakterystyczne jest również definiowanie funkcji wyższego rzędu, czyli takich, dla których argumentami i których wynikami mogą być funkcje (a nie tylko „proste” dane jak liczby lub napisy)

Page 34: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-34

III. Programowanie funkcyjne

Page 35: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-35

Page 36: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-36

IV. Programowanie logiczne● Na program składa się

zbiór zależności (przesłanek)orazpewne stwierdzenie/pytanie (cel)

Page 37: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-37

IV. Programowanie logiczne● Wykonanie programu to

próba udowodnienia celuw oparciu o podane przesłanki

● Obliczenia wykonywane są niejako „przy okazji” dowodzenia celu

● Podobnie jak w programowaniu funkcyjnym, nie wydajemy rozkazów,a jedynie opisujemy,co wiemy i co chcemy uzyskać

Page 38: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-38

IV. Programowanie logiczne

Page 39: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-39

IV. Programowanie logiczne

Page 40: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-40

IV. Programowanie logiczne

Page 41: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-41

Page 42: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-42

Inne paradygmaty● Programowanie na poziomie wartości● Programowanie na poziomie funkcji● Programowanie skalarne● Programowanie wektorowe/macierzowe● Programowanie zdarzeniowe● Programowanie z własnym wątkiem sterowania● Programowanie aspektowe● Programowanie uogólnione● Programowanie równoległe/współbieżne/rozproszone

Page 43: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-43

Języki a paradygmaty● asemblery, „stary” BASIC

– p. imperatywne (proceduralne?)● „stary” Pascal, C, Fortran

– p. imperatywne, proceduralne, strukturalne● C++, Object Pascal, Ada

– p. imperatywne, proceduralne, strukturalne, obiektowe● Smalltalk, C#, Java

– p. obiektowe● Lisp, Scheme, Logo, ML, Haskell

– p. funkcyjne● Planner, Prolog

– p. logiczne● Python

– p. proceduralne, strukturalne, obiektowe, funkcyjne● SQL

– p. deklaratywne (ani ściśle funkcyjne, ani ściśle logiczne)

Page 44: Języki i paradygmaty programowaniazuig.el.pcz.czest.pl/jackrat/progob/JPP_PREZENTACJA.ppt.pdf · 2009. 1. 14. · 2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania

2008-02-23 Jarosław Bylina :: Języki i paradygmaty programowania :: Wprowadzenie I-44

Architektura von Neumanna● Na razie wszystkie komputery działają

w oparciu o imperatywnąarchitekturę von Neumanna

● Tak więc każdy program, który chcemy uruchomić, musi być najpierw przetłumaczony do ciągu rozkazów w języku wewnętrznym konkretnej maszyny

● Różne paradygmaty mogą wymagać skomplikowanych metod tłumaczenia;różna jest też ich efektywność