IT Skills

Klausurvorbereitung

Klausurvorbereitung


Kartei Details

Karten 90
Lernende 19
Sprache Deutsch
Kategorie Informatik
Stufe Grundschule
Erstellt / Aktualisiert 07.07.2012 / 26.06.2025
Weblink
https://card2brain.ch/box/it_skills
Einbinden
<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