IT Skills
Klausurvorbereitung
Klausurvorbereitung
Set of flashcards Details
Flashcards | 90 |
---|---|
Students | 19 |
Language | Deutsch |
Category | Computer Science |
Level | Primary School |
Created / Updated | 07.07.2012 / 26.06.2025 |
Weblink |
https://card2brain.ch/box/it_skills
|
Embed |
<iframe src="https://card2brain.ch/box/it_skills/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>
|
Was sind For-Schleifen?
Welche schritte werden in einer For-Schleife gekapselt?
? In for-Schleifen wird die Steuervariable automatisch
• initialisiert
• geprüft
• erhöht (verringert)
for initialValue to finalValue
do something
endfor
for count = 0 to 99
print LABEL_TEXT, name
endfor
Zeigen Sie an einem selbst gewählten Beispiel die Ersetzung einer For-Schleife durch eine While-Schleife!
For- Schleife
num LIMIT = 99
for count = 0 to LIMIT
print LABEL_TEXT, name
endfor
? While-Anweisungsfolge
num LIMIT = 99
num count
count = 0
while count <= LIMIT
print LABEL_TEXT, name
count = count + 1
endwhile
Erläutern Sie den Unterschied zwischen abweisenden und nichtabweisenden Schleifen!
abweisende Schleife
Ein mindestens einmaliger Durchlauf ist abhängig vom Initialisierungswert der
Steuervariablen.
Bei einer while- oder for-Schleife kann der Schleifenkörper auch gar nicht
abgearbeitet werden (Abweisende Schleife).
? nichtabweisende Schleife
Wenn sichergestellt werden muss, dass der Schleifenkörper mindestens
ein mal abgearbeitet wird, dann werden nichtabweisende Schleifen
verwendet.
• do-until-Schleife
- Ausführung bis die Bedingung WAHR ist
• do-while-Schleife
Ausführung bis die Bedingung FALSCH ist
Erläutern Sie den Ablauf in einer do-until- oder do-while-Schleife!
Die do-until Schleife wiederholt den Schleifenkörper solange, bis die
Abbruchbedingung WAHR wird .
. Die do-while Schleife wiederholt den Schleifenkörper solange, bis die
Abbruchbedingung FALSCH wird.
Erläutern Sie die Datenstruktur Feld!?
Feld (Array), Einfaches
• Serie oder Liste von Variablen im Computerspeicher
• Alle Variablen haben den gleichen Namen
• Jede dieser Variablen hat einen Index
• Beispiel:
- Liste von Preisen für bestimmte Artikel
Erläutern Sie an einem selbst gewählten Beispiel die Deklaration eines Feldes mit 10 Werten und den Zugriff auf das 8. Element!
Eine Deklaration bewirkt nicht automatisch eine Initialisierung der
Feldelemente
• VBA und Java initialisieren numerische Variablen mit 0
? Typische Initialisierungsanweisung für alle Feldelemente
• num count [20] = 0
? Soll eine Initialisierung mit unterschiedlichen Werten erfolgen:
? Es können nicht mehr Feldelemente initialisiert werden, als ursprünglich
deklariert worden sind.
count[0] = 5
count[1] = 12
count[2] = 24
num count[3] = 5, 12, 24
Erläutern Sie das prinzipielle Vorgehen beim exakten Suchen in einem Feld!
? Nutzung eines Flags (Flagge)
• Variable, die anzeigt, ob ein bestimmtes Ereignis eingetreten ist
? Allgemeines Vorgehen
• Setze die Index-Variable auf 0 (auf den ersten Index)
• Setze die Flag-Variable auf FALSCH
• Untersuche jedes Element in dem Feld
• Wurde der betreffende Wert im Feld gefunden, so setze die Flag-Variable auf
WAHR
Erläutern Sie den Begriff paralleles (korrespondierendes) Feld!
Zwei korrespondierende Felder werden auch als parallele Felder
bezeichnet.
? Jedes Feldelement aus dem einem Feld ist verbunden (assoziiert) mit dem
Feldelement, mit
identischem Index, aus dem anderen Feld
Erläutern Sie den Begriff „Early Exit“ beim Suchen in Feldern!
Die bisherige Suchmethodik ist ineffizient
• Auch wenn ein Produkt gefunden wurde, wird die Suche fortgesetzt
- Verbesserung
– Beenden der Schleife, wenn der zu suchende Wert gefunden wurde
– Wird auch als ‘Early Exit‘ bezeichnet
- Lösung (siehe dazu Flussdiagramm und Pseudocode)
- Wenn der Wert gefunden wird, dann
– foundIt = ‘Y‘ und
– sub = SIZE
Was passiert, wenn auf Feldelement mit einem unzulässigen Index zugegriffen wird?
Unterschiedliche Reaktionen in den Programmiersprachen
• Die Programmausführung wird abgebrochen; Ausgabe einer Fehlermitteilung
• Es wird auf einen Speicherbereich außerhalb des Feldes zugegriffen, mit
verheerenden Folgen
Der Zugriff auf das 11. Feldelement eines Feldes mit 10 Elementen ist ein
logischer Fehler!
• Der Index ist “Out of Bounds“ (außerhalb der Feldgrenzen)
Nutzer können beispielsweise „unzulässige“ Werte eingeben
Nennen Sie die drei logischen Bestandteile einer Methode!
Besteht aus einem
- Kopf (Header)
- Körper (Body)
- Return-Anweisung (return statement)
Nennen Sie die drei logischen Bestandteile einer Methode!
Besteht aus einem
- Kopf (Header)
- Körper (Body)
- Return-Anweisung (return statement)
Nennen Sie die Vorteile bei der Verwendung von Methoden (Modulen)!
Vorteil bei der Modularisierung: Verbergen von Implementierungsdetails
• Die Details der Implementierung werden gekapselt
• Die rufende Methode muss nicht wissen, wie die gerufene Methode intern
arbeitet
Welcher Weg zur Übertragung von Informationen von außen an eine Methode soll genutzt werden?
Übergabe mittels Parameter bzw. Argumenten
? Parameter (werden in der gerufenen Methode definiert)
• Wert, der von einer gerufenen Methode empfangen wird
? Argument
• Wert, der von Hauptprogramm (rufende Methode) gesendet wird
Erläutern Sie die Gültigkeit von Parametern in Parameterlisten von Methoden!
Die im Methodenkopf (Parameterliste) deklarierten Variablen sind lokale
Variablen
• Sind nicht mehr gültig, wenn die Methode verlassen wird
Erläutern Sie die Parameterübergabe „Passed by value“!
• Passed by value
- Es wird eine Kopie des Wertes aus der rufenden Methode an die aufgerufene
Methode übergeben.
-Der Parameterwert wird in einem neuen Speicherbereich abgelegt.
• Call (passed) by value, Wertparameter
- Kopie wird an die gerufene Methode übergeben
- Änderungen nur an der Kopie wirksam
- Kopie verliert ihre Gültigkeit, wenn die Methode verlassen wird
Wie kann die Rückgabe von Ergebnissen aus einer gerufenen Methode an die rufende
Methode erfolgen?
? Alle in einer Methode deklarierten Variablen verlieren ihre Gültigkeit, wenn
die Methode beendet ist.
? Über den Rückgabewert einer Methode kann ein Wert an die rufende
Methode zurück gegeben werden.
? Zu diesem Rückgabewert muss ein entsprechender Datentyp (return type)
definiert werden
• Wird auch als Methodentyp (method‘s type) bezeichnet
? Datentyp des Rückgabewertes wird vor den Methodennamen geschrieben
? Wert in der return-Anweisung ist der Rückgabewert
num getHoursWorked()
num workHours
...
workHours = ...
return workHours
Erläutern Sie die Parameterübergabe „Passed by reference“!
Wann wird diese Übergabeform verwendet?
Übergabe eines gesamten Feldes
• In der Parameterliste wird gekennzeichnet, dass ein Feld übergeben wird
- Eine ‘[ ]‘ (Eckige Klammer) folgt dem Datentyp des Paramters
• Durch den Feldnamen ist die Anfangsadresse des Feldes bekannt
• Es wird nur die Startadresse des Feldes übergeben
• Diese Übergabe wird als ‘passed by reference‘ bezeichnet
• Alle Änderungen an einzelnen Feldelementen bleiben erhalten
• Call (passed) by reference, Referenzparamter
- Adresse (Referenz) der Variablen wird an die gerufene Methode übergeben
- Keine Konstanten (da keine Adresse berechnet werden kann)
- Änderungen bleiben auch nach der Beendigung der Methode wirksam
Erläutern Sie den Begriff „Überladen von Methoden“ (Overloading)!
Welche Bedingungen sind zum Overloading einzuhalten?
Überladen von Methoden
• Es existieren zwei oder mehr Methoden mit gleichen Namen aber
unterschiedlichem
Inhalt
• Die unterschiedlichen Methoden liefern auch unterschiedliche Ergebnisse
Bedingungen
• überladene Methoden haben einen identischen Namen aber unterschiedliche
Parameterlisten
- Signatur: Name der Methode, Anzahl und Typen ihrer Parameter und dem Typ
des Rückgabewertes.
Was sind IPO-Diagramme?
IPO-Modell
• Konzeptionelles Modell eines allgemeinen Systems
• Bestandteile
- Input (Eingabe), Process (Verarbeitung), Output (Ausgabe)
? Neben dem Flussdiagramm ist ein IPO-Diagramm ein weiteres Hilfsmittel,
um die Logik eines Programms zu verstehen und zu dokumentieren.
Erläutern Sie die Begriffe Klasse, Objekt und Instanz!
Klasse (class)
• Eine Beschreibung für eine Gruppe (Kollektion) von Objekten mit gemeinsamen
Merkmalen (Attributen)
?Objekt
? Jedes Ding ist ein Objekt und jedes Objekt ist Mitglied in einer Klasse
• Dabei gilt Ding für materielle und immaterielle Güter
• Objekte mit gleichen Attributen bilden eine Klasse
? Instanz (instance)
• Existierendes Objekt einer Klasse
• Jede Instanz „nimmt“ sich die Attribute seiner Klasse
Nennen Sie drei wichtige Eigenschaften der OOP!
Erläutern Sie eine Eigenschaft im Detail!
?Polymorphie
? Vererbung
? Kapselung (information hiding)
Polymorphie
Verschiedene Objekte können auf die gleiche Nachricht unterschiedlich
reagieren.
• Wird die Zuordnung einer Nachricht zur Reaktion auf die Nachricht erst zur
Laufzeit
aufgelöst, dann wird dies späte Bindung genannt.
• Beispiel Polymorhie: Überladen von Methoden
Vererbung
• Aus einer Basisklasse entsteht durch Vererbung eine abgeleitete Klasse, die
ebenfalls Methoden und Attribute der Basisklasse besitzt.
• Neue Arten von Klassen können auf der Basis bereits vorhandener
Klassendefinitionen festgelegt werden.
• Es können neue Bestandteile hinzugenommen werden oder vorhandene
überlagert werden.
• Wird keine Vererbung zugelassen, so spricht man zur Unterscheidung oft auch
von objektbasierter Programmierung.
Kapselung (information hiding)
• Verbergen von Implementierungsdetails
• Kein direkter Zugriff auf die interne Datenstruktur
• Zugriff erfolgt nur über definierte Schnittstellen
• Objekte können den internen Zustand anderer Objekte nicht in unerwarteter
Weise lesen oder ändern.
• Ein Objekt hat eine Schnittstelle, die darüber bestimmt, auf welche Weise mit
Dem Objekt interagiert werden kann.
Erläutern Sie die drei logischen Bestandteile für eine Klassendefinition!
Klassendefinition
• Beschreibt die Attribute und Methoden einer Klasse
? Drei Bestandteile
• Namen und optionale Parameter zur Instanziierung
• Optional: Attribute
• Optional: Methoden
Wofür werden typischer Weise get- und set-Methoden verwendet?
Get-Methoden
? Gibt einen Wert aus der Klasse nach Außerhalb
? Set-Methoden
? Methoden zum „Setzen“ von Attributwerten
• Werte kommen vielfach von außerhalb der Klasse
Erläutern Sie die Zugriffsmethoden Private und Public Access!
? Zugriffskontrolle (access control)
• Wie kann auf Attribute und Methoden zugegriffen werden?
? Prinzipiell gibt es zwei Formen
• private access
• public access
? Private Access
• Privat, eigene Klasse
? private-Methoden können nur von Methoden verwendet werden, die in der
selben Klasse gültig sind
• Arbeitsmethoden
? Public Access
• Öffentlich, global, offen auch für andere Klassen
? public-Methoden können auch von „außerhalb“ aufgerufen werden
• get- und set-Methoden
Über welche Zugriffsmethoden soll auf Attribute und Methoden zugegriffen werden?
Attribute als private
Methoden als public
Erläutern Sie den Unterschied zwischen Instanzen- und Klassenmethoden!
Instanzmethode
• Werden auf ein Objekt (Instanz) bezogen und operieren mit den konkreten
Attributwerten dieses Objektes
? Wie wird garantiert, dass eine Instanzmethode zu dem entsprechenden
Objekt aufgerufen wird?
• this-Referenz (Adresse des aktuellen Objektes wird als Parameter übergeben)
? Klassenmethode
• Es wird keine this-Referenz generiert
? erhalten zusätzlich das Schlüsselwort static
• static: Sind für die Klasse gültig und NICHT für einzelne Objekte
• Werden auch als statische Methoden bezeichnet
Erläutern Sie den Begriff Konstruktor?
Wie wird der Name für einen Konstruktor bestimmt?
Ein Konstruktor instanziiert ein Objekt
• Wird bei der Instanziierung eines Objektes aufgerufen
• Allokiert den Speicherplatz und initialisiert die Attribute
? Jeder Konstruktor trägt den Namen seiner Klasse
Erläutern sie den Begriff Destruktor!
Kann ein Destruktor überladen werden? (Begründe)
Eine spezielle Methode, die automatisch beim Zerstören (Vernichten) eines
Objektes aufgerufen wird
? Ein Destruktor kann nicht überladen (overloading) werden.
Erläutern Sie den Begriff Vererbung!
Vererbung (allgemein)
• Wissen aus einer allgemeinen Kategorie wird auf eine spezifische Kategorie
übertragen.
? Vererbung (OOP)
• Vorgehensweise, um neue Klassen unter Verwendung von bestehenden Klassen
hierarchisch aufzubauen
• Beziehung wird auch als „is-a relationship“ bezeichnet
Erläutern Sie die Begriffe Komplexität und Kompliziertheit in Verbindung mit
Systemen!
Komplexes System
• Große Anzahl von Elementen und Beziehungen
• Fertigung von Tausenden von Autos in einem Unternehmen
Kompliziertes System
• Große Zahl von verschiedenen Elementen
• Zwischen einer Vielzahl von Elementen bestehen sich untereinander bedingende
logische Beziehungen
• Ein Automobil besteht beispielsweise aus vielen verschiedenartigen
Zulieferteilen, die
zum richtigen Zeitpunkt an der richtigen Stelle im Montageprozess verbaut
werden müssen.
• Kompliziertheit kann als Gegensatz zur Einfachheit (im Sinne von simpel)
Gesehen werden.
Erläutern Sie die Prozesskette zum Erstellen eines Modellsystems anhand eines selbst gewählten Beispiels!
1. Ableitung der Diskurswelt aus der realen Welt
Computer und Mitarbeiter in MD ----------- Computer und Mitarbeiter an der Uni MD
Reale Welt ------------ Diskurswelt Uni Magdeburg
Handlungsrelevanz
BIS für Uni MD
2. Ableitung eines Objektsystems SO aus der Diskurswelt
Computer und Mitarbeiter an der Uni MD ------ Mitarbeiter an der Uni MD
Meier Hans 01.04.1980 4000,00
Müller Fritz 01.06.1986 3000,00
Computer an der Uni MD
123567 Geb 19-115 2006 0,3 kW
123568 Geb 19-116 2008 0,5 kW
Diskurswelt Uni Magdeburg ------- Objektsystem SO Uni Magdeburg
Subjektive
Interpretation
3. Ableitung eines Modellsystems SM aus dem Objektsystem SO
Mitarbeiter an der Uni MD ---------- Entity mit Attributen
Meier Hans 01.04.1980 4000,00
Müller Fritz 01.06.1986 3000,00 Mitarbeitername Geburtsdatum
Mitarbeiter
Vorname Gehalt
Objektsystem SO Uni Magdeburg ---------- Modellsystem SM Uni Magdeburg
Subjektive
Interpretation
Erläutern Sie die Begriffe semantisches und logisches Datenmodell!
Worauf ist bei der semantischen Modellierung streng zu achten?
Semantisches Datenmodell (conceptual schema):
- Abstrakte, formale Beschreibung der Diskurswelt
- Häufig Entity-Relationship-Modelle
• Logisches Datenmodell (logical schema):
- Festlegungen, welche Daten in einer Datenbank in welcher Form gespeichert
werden
- Festlegungen, welche Beziehungen zwischen den Daten bestehen
Semantische Datenmodell liefert ein Begriffsystem für die Diskurswelt
Jeder Begriff muss einen modellierten Sachverhalt eindeutig
Repräsentierten
Erläutern Sie die drei Grundbausteine eines ER-Models an einem selbst gewählten
Beispiel!
Entity-Relationship-Modell
ERM basiert auf den drei Grundbausteinen
• Entity,
• Relationship und
• Attribut
Entity (Entität)
• Objekte, über die Informationen gespeichert werden
• Real existierende Objekte
- Mitarbeiter Fritz Krause
- Kunde Boris Becker
• Immaterielle Objekte
- Verkaufsauftrag Einfamilienhaus
Relationship (Beziehung)
• Repräsentiert Beziehungen zwischen Entitys
• Bsp.:
- Mitarbeiter berät Kunden
- Pizzabäckerei produziert Pizzas
- Student besucht Übung
Attribut
• Entspricht einer Eigenschaft von Entitys oder Beziehungen
• Bsp.:
- Name und Personalnummer eines Mitarbeiters
- Name einer Pizza
- UnivIS-Nummer einer Übung
Was wird durch die Stelligkeit von Beziehungen beschrieben?
Stelligkeit
- Wie viele Entitytypen sind mit einem Beziehungstyp verbunden
Was verstehen Sie unter dem Begriff Kardinalität von Beziehungen?
Welche Hauptformen werden unterschieden?
Kardinalität
- Wie viele Instanzen eines Entitytyps können jeweils in den Beziehungstyp
Eingehen
Prinzipiell lassen sich drei Formen unterscheiden:
• 1:1-Beziehung
• 1:n- bzw. n:1-Beziehung
• m:n-Beziehung
Erläutern Sie eine 1:n-Beziehung allgemein und an einem selbst gewählten Beispiel
1:n-Beziehung
• Jedem Entity vom Typ E1 sind beliebig viele Entitys vom Typ E2 zugeordnet
• Gleichzeitig gibt es zu jedem Entity vom Typ E2 maximal ein Entity vom Typ E1
Beispiele
• Eine Mutter hat Kinder
- Eine Mutter kann mehrere Kinder haben, aber ein Kind hat nur eine Mutter
• Fahrer fährt Pizzas aus
- Ein Fahrer kann mehrere Pizzas ausfahren, aber eine Pizza wird nur von einem
Fahrer ausgefahren