Uploaded by ExklusivLebendigerLoewe

Informatik Grundlagen Zusammenfassung

advertisement
EINFÜHRUNG IN DIE INFORMATIK
EINFÜHRUNG
Computer Algebra System (CAS): Computerprogramm, das der Bearbeitung algebraischer
Ausdrücke dient. Es löst nicht nur mathematische Aufgaben mit Zahlen (wie ein einfacher
Taschenrechner), sondern auch solche mit symbolischen Ausdrücken (wie Variablen,
Funktionen, Polynomen und Matrizen).
SSL-Verbindung (SSL = Secure Socket Layer): Gesicherte Verbindung. Wichtig bei der
Übermittlung von sensiblen Daten.
Sensitive Daten: Kreditkartennummer, Bankverbindung, Name plus Geburtsdatum, weitere
Angaben in Verbindung mit personenbezogenen Daten, welche die Identifikation der
Personen erlauben.
PDF – Portable Document Format: PDF-Dokumente sind hervorragend zum Austausch
geeignet, da sie auf nahezu allen Plattformen, zum Beispiel mit dem Acrobat Reader, gelesen
werden können.
INFORMATIK
Die Informatik ist eine Strukturwissenschaft. Sie untersucht vom Menschen geschaffene
Systeme und Strukturen. Die Betrachtungsgegenstände sind meist immateriell. Die
Informatik ist nicht auf Erkenntnisgewinn und Beschreibung von Sachverhalten beschränkt,
sondern erzielt praktisch anwendbare Ergebnisse.
Der Gegenstandsbereich Informatik vereint die Begriffe: Hardware, Software,
Organisationsstrukturen (Orgware) und Benutzer (Anwender).
Teilgebiete der Informatik:
Kerninformatik: Theoretische Informatik, Praktische Informatik, Technische Informatik.
Angewandte Informatik: Wirtschaftsinformatik, Ingenieurinformatik, Medizininformatik.
Branchen mit hohen Softwareanteil: Telekommunikationsindustrie, Automobilbau,
Maschinen- und Anlagenbau, Medizintechnik, Haushaltselektronik.
SOFTWARE
Vier wesentliche Bestandteile:
Programme,
zugehörige Daten,
Dokumentation und
Lizenz.
Die programmbezogene Dokumentation verdeutlicht den Zweck des Programms. Die
anwenderbezogene Dokumentation beschreibt Funktionalität und Verwendung des
Programms in einer dem Anwender verständlichen Weise.
Quellprogramm: In einer Programmiersprache geschriebene Fassung eines Programms.
Ausführbares Programm: Prozessor-lesbare binäre Form eines Programms.
Ausführung eines Programms:


Möglichkeit 1: Übersetzung des Quellprogramms in ein ausführbares Programm
durch den Compiler - Erzeugung einer Binärdatei, diese benötigt zur Ausführung
weder Quellprogramm noch Compiler.
Möglichkeit 2: Ausführung des Quellprogramms durch den Interpreter Quellprogramm wird in den Interpreter geladen und ausgeführt - Quellprogramm
und Interpreter müssen zur Ausführungszeit vorhanden sein.
Kontrollstrukturen: Sequenz, Verzweigungen, Schleifen, Prozeduraufrufe.
Eine Programmiersprache wird als Turin-vollständig bezeichnet, wenn sie über zumindest
eine Auswahl- und eine Wiederholungsanweisung verfügt.
Bei einem Algorithmus muss jeder Schritt tatsächlich ausführbar sein, der Algorithmus muss
eine endliche Anzahl an Schritten besitzen und er muss eine eindeutige Beschreibbarkeit mit
einem endlichen Text besitzen.
Deterministischer Algorithmus: Haben genau eine Möglichkeit der Fortsetzung.
Nicht-deterministischer Algorithmus: Haben mehrere, jedoch genau definierte
Möglichkeiten der Fortsetzung.
Heuristiken: bezeichnet die Kunst, mit begrenztem Wissen (unvollständigen Informationen)
und wenig Zeit dennoch zu wahrscheinlichen Aussagen oder praktikablen Lösungen zu
kommen. Beispiele: Basisheuristik, Analogie, Verallgemeinerung, Spezialisierung, Variation,
Rückwärtssuche, Teile und herrsche, Vollständige Enumeration, Versuch und Irrtum (Trial
and Error).
Prinzip der Verkapselung: Daten und Funktionen bilden eine Einheit. Die Daten sind
verborgen (Geheimnisprinzip) und der Zugriff auf sie ist nur über Funktionen möglich, d.h.
ein Datum kann nicht direkt, sondern nur indirekt über den Aufruf einer Funktion
manipuliert werden.
Klasse: definieren Daten und Methoden eines Objektes (allgemeiner Bauplan für Objekte
des gleichen Typs).
Objekt: verfügt über individuelle Ausprägung der Daten und über die von der Klasse
bereitgestellten Methoden (konkrete Ausprägung).
ENTWICKLUNG
Software:







unterliegt keinem Verschleiß; es entsteht auch bei beliebig vielen Abläufen keine
Abnutzung.
handelt sich um ein immaterielles Produkt.
ist nicht durch physikalische Gesetze begrenzt; ist ein künstliches Produkt des
menschlichen Geistes.
ist (meist) leichter und schneller änderbar als ein technisches Produkt; Änderungen
an technischen Produkten erfordert meist speziell zu erstellende Werkzeuge, was bei
der Änderung an der Software nicht benötigt wird.
benötigt keine Ersatzteile; Teilstücke müssen nicht ausgetauscht werden, da Defekte
direkt behoben werden und kein Verschleiß bei Software auftritt.
altert, wenn sie nicht im Laufe der Zeit den geänderten Anforderungen durch ein
geändertes Umfeld angepasst wird.
ist schwer zu vermessen; Qualität von Software ist schwierig zu definieren und
quantifizieren.
Semantische Kluft:
Der Anwender von Software beschreibt sein Problem mit Hilfe von Begriffen und
Merkmalen aus seinem Anwendungsumfeld (Domäne). Der Entwickler hingegen erstellt
Software mit ihm bekannten Mitteln der Softwareentwicklung wie z.B, Softwaremodellen,
Programmiersprachen und Bibliotheken. Anwender und Entwickler sprechen somit
unterschiedliche Sprachen. Die Problematik des Verstehens der jeweils anderen Seite
bezeichnet man als semantische Kluft. Der Entwickler muss die Anforderungen des
Anwenders verstehen und mit geeigneten Mitteln der Softwareentwicklung umsetzen.
Abschnitte im „Leben von Software“:


Entwicklung:
Planung, Definition, Entwurf, Implementierung, Test
Einsatz:
Abnahme und Einführung, Wartung und Pflege, Außer-Betriebnahme.
Prozessmodelle:
beschreibt eine Menge von Aktivitäten, die in bestimmter Reihenfolge und von bestimmten
Rollen durchgeführt werden, um Software-Produkte zu erstellen.
Beispiele: Wasserfallmodell, Wasserfallmodell V-Modell und V-Modell XT Evolutionäres
Modell Inkrementelles Modell Spiralmodell Agile Prozessmodelle, wie Extreme
Programming.
Wasserfallmodell: - jede Entwicklungsaktivität möglichst vollständig bearbeitet -> laufen
streng sequenziell ab -> Rückkehr nur in die jeweils vorangehende Aktivität möglich - N:
große Verzögerungen, Anforderungen zu früh fixiert, Anforderungen können sich ändern
V-Modell: - altes V-Modell erweitert Wasserfallmodell um Maßnahmen zur
Qualitätssicherung - aktuell: V-Modell-XT: leichtgewichtigere Durchführung, bindet
Auftraggeber stärke ein
Evolutionäres Modell - Implementierung wichtiger und wesentlicher Anforderungen in
Kernsystem -> Auftraggeber sammelt Erfahrungen und definiert neue Anforderungen ->
Bewertung: Risiko, das Systemarchitektur bei Erweiterungen grundlegend verändert werden
muss
Inkrementelles Modell - Zu Beginn vollständige Erfassung und fachliche Modellierung der
Anforderungen - Entwurf und Implementierung von Teilsystemen -> Rückmeldungen des
Auftraggebers gehen in nächste Ausbaustufe ein -> Bewertung: hoher Zeitaufwand, Risiko
sinkt (siehe Evolutionäres Modell)
Spiralmodell: - ist ein übergeordnetes Modell, welches für jedes Teilprodukt und jeden
folgenden Entwicklungszyklus erneut präzisiert wird - Identifikation potentieller Risiken +
Ergreifung von Maßnahmen zur Prävention -> Bewertung: anpassbares Prozessmodell, hoher
Managementaufwand
Agile Prozessmodelle: - Menge von Prozessmodellen für Entwicklungsvorhaben mit sich
rasch ändernden Anforderungen - Maßnahmen: enge Kooperation mit Auftraggeber,
Entwicklung in kleinen Teams - bekannter agiler Prozess: Extreme Programmierung Bewertung: Minimierung des Risikos einer Produktentwicklung das nicht den
Kundenwünschen entspricht, sowie überflüssiger Entwicklungsarbeit
Lastenheft:
Das Lastenheft enthält die grundlegenden Anforderungen des Kunden an die zu
entwickelnde Software. Es wird Vertragsbestandteil und schützt somit beide Seiten,
Kunden/Anwender und Auftragnehmer/Entwickler, vor Missverständnissen und
Unklarheiten. Das Lastenheft entsteht in der Planungs- und Definitionsphase. Änderungen
während der Entwicklungsphase müssen in aktualisierte Fassungen des Lastenhefts
aufgenommen werden.
ERGONOMIE
Mensch-Maschine-System:
Ein Mensch-Maschine-System beschreibt das Zusammenwirken von Mensch und Maschine
zur Realisierung eines stofflich-energetischen Prozesses. Dabei kommt es zu einem
wechselseitigen Informationsaustausch mit dem Ziel einen sicheren und effektiven Ablauf
eines Prozesses.
Varianten: Computer ist Teil der Maschine; Maschine selbst ist sichtbar und ggfs.
beobachtbar. Reale Maschine tritt in den Hintergrund; ihre Systemzustände sind
ausschließlich auf dem Computer einsehbar. Maschine wird im Computer visualisiert und
darüber gesteuert; Nachbildung der Realität auf dem Computer.
Faktor-Mensch-Anpassung:
Anpassen des Menschen an: die Arbeit, die Technik, die Umwelt.
Anthropotechnik:
Die Arbeit, die Technik und die Umwelt an den Menschen anpassen.
Software-Ergonomie:
Teilbereich der Ergonomie, der sich mit der menschengerechten Gestaltung von
Benutzungsschnittstellen zwischen Computer und Mensch befasst. Das Ziel ist die sichere,
effiziente und befriedigende Anwendung von Informationstechnik.
Aufgabenangemessenheit: Dialog belastet den Benutzer durch Eigenschaften des
Dialogsystems nicht unnötig.
Selbstbeschreibungsfähigkeit
Erwartungskonformität: Dialog entspricht erfahrungsbasierten Erwartungen des Benutzers.
Steuerbarkeit & Wartezeiten: Benutzer kann die Geschwindigkeit des Ablaufs sowie die
Auswahl und Reihenfolge von Arbeitsmitteln selbst beeinflussen.
Fehlertoleranz, -robustheit & Benutzerakzeptanz
(Lernförderlichkeit): Geschwindigkeit des Dialogablaufs passt sich an Benutzer an.
Grundsätze der Dialoggestaltung nach DIN 66 234/8:
Steuerbarkeit, Aufgabenangemessenheit, Selbstbeschreibungsfähigkeit
Erwartungskonformität und Fehlerrobustheit.
INFORMATION
Bit: Binary Digit. Ein Bit ist die elementare Informationseinheit und kann die Werte 0 und 1
annehmen.
Informationscodes: Binärcode, Genetischer Code, Lateinisches Alphabet, Dekadisches
Zahlensystem…
Bit
8
Byte
1
1024
1024*1024
1 Megabit = 1 000 000 Bit
Kilobyte
Megabyte
1
1024
1
Gigabyte
Additonssystem: Wert ergibt sich aus der Addition ihrer Ziffern. Beispiel Strichliste oder
Römisches Zahlensystem.
INFORMATIONSTHEORIE
MSB = Most Significant Bit -> nimmt die höchste Position an
LSB = Least Significant Bit -> steht an der Stelle 0
 Dezimalwert der nicht-vorzeichenbehafteten Binärzahl 10011011
o 155
 Dezimalwert der vorzeichenbehafteten Binärzahl 10000101
o Negieren: 01111010
o +1 = 01111011
o =123
o Minus davor = -123
 Oktalzahl 2701 in Binärzahl
o 010 111 000 001. Jede Stelle der Oktalzahl wird mit 3 Bit binärcodiert
 Binärzahl 1110011011110101 in Hexadezimal
o 1110 0110 1111 0101 = E 6 F 5
Little Endian Format: Das höchstwertige Byte steht nach dem niederwertigsten Byte
 111111000000 wird zu 000000111111
 Beispiele Zeichencodes:
o ASCII
o ANSI-Code
 Ein Zeichen belegt 8 Bit
o Unicode
 Belegt 16 Bit und erlaubt system-, programm- und sprachunabhängige
Darstellung von Zeichen
o EBCDIC
 IEEE-Format
o Vorzeichen der Zahl
o Exponent (gibt an, um wie viele Stellen die Mantisse vor oder hinter das
Komma zu verschieben ist)
o Mantisse (enthält signifikanten Stellen der Zahl)
o  Es kann zu Genauigkeitsverlusten und Rundungsfehler kommen
 Verschlüsselung
o Begriffe
 Klartext: unverschlüsselte Information
 Schlüssel: zur Verschlüsselung verwendete Information
 Chiffrieren: verschlüsseln  Chiffrat oder Chiffre: verschlüsselte
Information
 Dechiffrieren: entschlüsseln
o Zweck
 Vertraulichkeit
 Integrität
 Authentifizierung
 Verbindlichkeit
o Verschlüsselungsverfahren
 Symmetrische Verschlüsselung: selber Schlüssel für Ver- und
Entschlüsselung
 Stromchiffre: Klartext wird Zeichen für Zeichen verschlüsselt
 Blockchiffre: bestimmte Menge von Zeichen werden auf einmal
verschlüsselt
 Asymmetrische Verschlüsselung: verschiedene Schlüssel für Ver- und
Entschlüsselung
 Empfänger besitzt eigenen geheimen privaten Schlüssel zur
Entschlüsselung
 Komprimierung
o verlustfreie: exakte Wiederherstellung der Originalinformation, Grundprinzip:
Beseitigung von Wiederholungen oder nichtangepassten Darstellungen,
mehrere Verfahren:
 Tokenbasierte Kompression: häufig vorkommende Wörtern werden
eindeutige Tokens zugeordnet
 Huffman-Codierung: Information wird mit Code variabler Länge
codiert
 Arithmetische Codierung: Auftretenswahrscheinlichkeiten für Zeichen
werden unterschiedliche Intervalle zugeordnet
 LZW-Codierung: Ablegung mehrfach vorkommende Zeichenfolgen in
einer Tabelle
 RLE-Codierung: Run Lenght Encording, Speicherung von Anzahl und
Wert einer Wiederholung
o verlustbehaftete: keine exakte Wiederherstellung der Originalinformation
möglich, Grundprinzip: Beseitigung unwichtiger oder nichtwahrnehmbarer
Informationen
 Audiokompression: MP3, Ogg Vorbis Bildkompression: JPEG, GIF
 Videokompression: MPE
HARDWARE
3 Arten von Mikroprozessoren: Central Processing Unit (CPU), Mathematischer Coprozessor,
Grafikprozessor, Soundprozessor.
 CPU
o Hauptbestandteile
 Steuerwerk (kontrolliert Ablauf der Operationen)
 Rechenwerk (führt Rechenoperationen aus)
 Register (dienen der Zwischenspeicherung von Informationen)
 VGA – analog
 DVI-D – digital
NETZE
 Übertragungsmedien
o Verdrilltes Kupferkabel, Glasfaserkabel, Koaxialkabel, Richtfunk, Infrarot,
Kurzstreckenfunk, Bluetooth, WLAN
 ISO/OSI-Architekturmodell
o Schicht 1: Physikalische Schicht (Bitübertragungsschicht)
o Schicht 2: Leitungsschicht (Sicherungsschicht)
o Schicht 3: Netzwerkschicht (Vermittlungsschicht)
o Schicht 4: Transportschicht
o Schicht 5: Sitzungsschicht
o Schicht 6: Darstellungsschicht
o Schicht 7: Anwendungsschicht
 Network Adress Translation (NAT)
o Aufgrund der Knappheit verfügbarer IPv4-Adressen, werden lokale NetzAdressen durch einen Router ersetzt, ausgehende Datenpakete erhalten die
OP-Adresse des Routers, der Router verwaltet die aktuellen Verbindungen in
einer NAT- Tabelle und leitet die einkommenden Datenpakete entsprechen an
die lokalen IP-Adressen weiter
 Domain Name Service (DNS)
o Verteiltes, hierarchisches System, welches Server-Bezeichner in IP-Adressen
auflöst
 UDP und TCP
o UDP: verbindungslose, unzuverlässige Datenübermittlung, ungeordnete
Zustellung der Pakete bei Übertragung
o TCP: verbindungsorientierte, zuverlässige Datenübermittlung, Reihenfolge der
übertragenen Pakete garantiert, verloren gegangen Pakete werden erneut
angefordert
 IP-Adresse 192.168.1.255
o Es handelt sich um eine Broadcastadresse eines privaten Netzwerkes.
Datenpakete mit dieser Zieladresse gehen an alle Rechner des Netzwerkes
 Dynamic Host Configuration Protocol (DHCP)
o Weist einem Netzwerkrechner eine dynamische IP-Adresse und weitere
Einstellungen, insbesondere die IP-Adressen des Gateways und auch des DNSServers, zu.
 Bestandteile URL
o http:// - Protokoll
o www.mozilla.org -Server
o :80 - Portangabe
o /products/thunderbird/sysreq.html - Zugriffspfad der Ressource auf dem
Server
Download