Uploaded by weitze.jakob

Zusammenfassung

advertisement
Einführung in die Programmierung
Einführung
für Computer aufbau IRAM Speicher ,
Basics
>
>
:
Prozessor )
,
Programmiersprache
>
zu
geben
.
Maschinensprache Assemblersprache Problemorientiert
,
>
Syntax ,
Weg , um Befehle
als
Sprachen
Semantik
,
,
wandeln sich
Pragmatik
und Quellcode
Dialekte
"
schnell
"
Idiomatik
,
Syntax legt grammatikalische Regeln fest
>
Auswertungsregeln fest
Semantik legt
>
→
Pragmatik
beschreibt
>
Idiomatik
beschreibt
Absicht des Programmierers
good practices
einer
-
Sprache
Programmiersprachen
:
3
>
Grund paradigmen
>
:
funktionale / prozedurale logische
funktionale Programmierung
,
ist kurz
,
Mathematik und leicht wiederverwendbar
leicht
verständlich
Rocket
>
Präfix notation
Funktionen
>
>
Funktionen müssen nach gewissen
Häufig sind Hilfsfunktionen
Regeln geschrieben
von
verteil !
und
werden
Objektorientierte Programm
,
nah
an
der
.
Auswertung
Allgemein
links assoziativ
ausgewertet werden kann
>
>
In jedem
>
Schritt wird
Fallunterscheidungen
Möglichkeit
>
>
,
Operator gefunden
durch bis ein
( Ersetzungsmodell )
geht
ein
mir
Ausdruck
wird , der
umgeformt
:
für unterschiedliche Fälle unterschiedliche Ergebnisse
und
oder
vollständig
zu
liefern
if
Datenabstraktion
>
Wenn ein Wert eigentlich nur eine Darstellung von anderen Werten ist ,
eine Datenstruktur erstellen die dies ermöglicht
,
>
unterschiedliche Datentypen
Abhängigkeit des Datentypen machen
Wenn Funktionen
in
verarbeiten müssen
,
wir
eine
können
Fallunterscheidung
Listen und Symbole
>
sind atomare Daten
>
>
< uns
,
sich selbst ausgewertet
zu
angekündigt
vorn
als Element mit
Modi eh heiter ,
3
werden
'
durch ein
Listen werden
>
,
List
,
listen
zu
einer Rest liste
bauen
-
betrachtet
:
4)
Rekursive Funktionen
>
rufen sich selbst erneut auf
>
es
muss
einen nicht rekursiven Fall
-
geben
,
mit dem
wir
die Rekursion endet
Top
Down
-
Entwurf
-
Probleme werden zunächst auf der höchsten Ebene
>
bekundet
Man unterscheidet zwischen 2 Fällen
1
Eine
>
nur
Beide
2
Listen
der
bei
>
kann
Hilfsfunktionen werden
existent
Listenverarbeitende Funktionen
>
→
als
angenommen
:
atomar behandelt werden
bei einer rekursion
Listen
müssen
aufgebrochen werden
beiden Rekursion
Formale Aspekte
Auswertung
>
Fragen
das
und Funktion
-
werden
Ergebnis
so
Korrektheitsbeweis
>
genügt nicht
Es
>
Wir müssen
>
Lokale
>
lange ausgewertet
mit
else
,
dort ist
Fallbeispielen
zu
testen , ob
eine Funktion
dann
funktioniert
wir
die
Induktion
aus
der
Mathematik ( Lernzettelt
Definitionen
Da manche Werte nur lokal von Bedeutung sind manche Hilfsfunktionen
,
gebraucht werden und Mehrfachberechnungen vermieden werden sollen , gibt es
lokale Definitionen mittels let
.
>
exp
beweisen !
es
Dafür nutzen
bis eine True oder
Funktionen
von
,
,
Überschreiben lokal
sogar
globale Definitionen !
nur
einmal
Akkumulierende Parameter
>
Rekursive Funktionen sind
>
Dies ist
zum
häufig ineffizient und haben nicht lineare Laufzeiten
-
Beispiel der Fall ,
wenn
eine rekursive Funktion eine rekursive
Hilfsfunktion verwendet
>
iterative
>
Wir
>
Abarbeitung
bietet eine
bauen eine Funktion mit akkumulierenden Parametern
Schritt fü
Eine Art zwischenspeicher , wo wir das Ergebnis
Im besten Fall ist die
>
Lösung
akkumulierende
Schritt aufbauen
Funktion end rekursiv
Funktionen höherer Ordnung
>
beschreibt Funktionen , die unterschiedliche Funktionen
>
Wendet diese
wenn
>
Funktionen haben , ersetzen
Wenn eine Funktion alle Datentypen verarbeiten kann ,
einer generischen / polymorphen Funktion
fdd , fitter ,
map
können
an
wir zwei sehr ähnliche
Stellen durch einen Parameter
>
>
dann
als Parameter erhalten
wir die
sprechen
wir
ähnlichen
von
Related documents
Download