einführung: linux / objektorientierte programmierung einleitung suse linux (system- und...
TRANSCRIPT
Einführung: Linux / Objektorientierte Programmierung
Einleitung
Suse Linux (System- und Software-Entwicklung)
Allgemein:- freies und portables Betriebssystem- ursprünglich von Linus Torvalds geschrieben- unter Bedingungen der GNU General Public License veröffentlicht- stark Unix-orientiert
Einführung: Linux / Objektorientierte Programmierung
Einleitung
C++
Allgemein:- Basiert auf Programmiersprache C- Erweitert C um Datentypen, Klassen mit Vererbung und virtuellen Funktionen, Inlinefunktionen, u.v.m.
Einige Stärken:- Hocheffiziente Code-Programmierung möglich- Weite Verbreitung- Sowohl maschinennahe als auch hochabstrakte Programmierung ist möglich- Kompatibel mit C
Einige Schwächen:- Die aktuellen Compiler produzieren nicht immer optimalen Code, sowohl in Bezug auf Geschwindigkeit als auch auf Code-Größe.
Einführung: Linux / Objektorientierte Programmierung
1. Rechner anschalten
2. Suse Linux 9.1 mit Pfeiltasten auswählen und mit Return starten
3. Einloggen:
- Benutzername: infII<Matrikelnummer mit „0“ am Anfang>
Beispiel für Benutzername: infII0654321
- Passwort: x
- Mit Klick auf „OK“ einloggen
4. Eventuelle Fragen zur Hardware-Konfiguration schließen
5. Willkommensnachricht von Suse schließen
Getting started
Einführung: Linux / Objektorientierte Programmierung
KDE
Programmstartleiste
Eigene Dateien (Home-Directory)
Shell
Hilfe
Konqueror (Browser)
Email-Programm (nicht eingerichtet)
Einführung: Linux / Objektorientierte Programmierung
Shell
Shell starten:
Passwort ändern:
„passwd“ eingeben, mit Return bestätigenAltes Passwort eingeben („x“)Neues Passwort eingebenNeues Passwort bestätigen
Einführung: Linux / Objektorientierte Programmierung
Shell
Arbeitsverzeichnis anzeigen: „pwd“ – Print Working Directory
Pfad des momentanen Verzeichnisses, in diesem Fall Verzeichnis für eigene Dateien (Home Directory)
Einführung: Linux / Objektorientierte Programmierung
Shell
Verzeichnis anlegen: „mkdir <Verzeichnisname>“ – Make Directory
Es wird ein neuer Ordner/Verzeichnis (Directory) mit dem Namen „praktikum“ angelegt.
(„md“ ist die Abkürzung unter SUSE für „mkdir“)
Einführung: Linux / Objektorientierte Programmierung
Shell
Verzeichnisinhalt anzeigen : „ls“
Anzeige aller Dateien und Verzeichnisse im aktuellen Verzeichnis.
Verzeichnisse erscheinen in blauer Farbe, Dateien in Schwarz
Verzeichnis „praktikum“ wurde im vorherigen Schritt mit „md praktikum“ angelegt.
Einführung: Linux / Objektorientierte Programmierung
Shell
In ein Verzeichsnis wechseln : „cd <Verzeichnisname>“ – Change Directory
Mit „cd <Verzeichnisname>“ wird in das Verzeichnis gewechselt.Auch hier ist Groß- und Kleinschreibung zu beachten.„~“ ist das Kürzel für das Home Directory.„~/praktikum“ bedeutet also, dass man sich im Unterordner des Home Directorys namens „praktikum“ befindet.
„cd ..“ wechselt in das nächst höher gelegene Verzeichnis.
Einführung: Linux / Objektorientierte Programmierung
Shell
emacs starten : „emacs <Dateiname.cpp> &“
Aufruf des Texteditors emacsDateinameWenn Datei existiert: bearbeitenWenn Datei nicht existiert: neue Datei mit dem Namen anlegen
Groß-/Kleinschreibung!
„&“ bedeutet, dass der vorstehende Befehl ausgeführt wird undnicht auf das Beenden des emacs-Editors gewartet wird.
Einführung: Linux / Objektorientierte Programmierung
emacs
Programmieren mit emacs:
„#include <iostream>" fügt eine Headdatei hinzu. Sie enthält z.B. die Funktion „cout“ zur Bildschirmausgabe.
„using namespace std;“ Zu jeder Funktion gehört ein Namensraum. Zu „cout“ gehört „std“.
„cout << „Hallo Welt!“;“ Gibt „Hallo Welt!“ auf dem Bildschirm aus. In C: „printf(“Hallo Welt!“);“
Einführung: Linux / Objektorientierte Programmierung
emacs
Programmieren mit emacs:
Nach dem Programmieren wird die Datei mit strg+x strg+s abgespeichert. Am einfachsten: strg-Taste gedrückt halten, dann Tasten „x“ und „s“nacheinander drücken.
Es folgt der Wechsel zum Shell-Fenster, entweder durch Mausklick insShell-Fenster oder durch Tastenkombination „alt+Tab“.
Einführung: Linux / Objektorientierte Programmierung
Shell
Datei kompilieren : „g++ -o <Dateiname> <Dateiname.cpp>“
ruft den C++ Compiler auf
erstellt eine ausführbare Datei (hier mit Namen „testprogramm“)
C++-Quellcode, der in ausführbare Datei gewandelt werden soll
Einführung: Linux / Objektorientierte Programmierung
Shell
Datei kompilieren : „g++ -o <Dateiname> <Dateiname.cpp>“
Eventuelle Compilerfehler erscheinen mit Angabe der Zeile unterdem Aufruf des G++-Compilers.
Einführung: Linux / Objektorientierte Programmierung
Shell
Datei ausführen : „./<Dateiname> “
Ausführbare Datei
Backup-Datei des Quellcodesvon Emacs, erkennbar am „~“
Ausführen der compilierten Datei
Mit „cout“ programmierte Bildschirmausgabe
C++ Quellcode
Einführung: Linux / Objektorientierte Programmierung
Shell
Datei löschen : „rm <Dateiname>“ rm - Remove Directory
„rm <Dateiname>“ löscht eine Datei.
Einführung: Linux / Objektorientierte Programmierung
Shell
Datei löschen : „rm <Dateiname>“ rm - Remove
Es gibt beim Löschen über die Shell KEINEN Mülleimer!Gelöschte Dateien sind unwiderrufllich weg.
„rm –rf <Verzeichnisname>“Löscht ein Verzeichnis mit gesamtem Inhalt.Das „r“ steht dabei für den gesamten Inhalt„f“ sorgt dafür, dass keine Bestätigungsabfrage zum Löschen erscheint.
„rm prakt*“ löscht alle Dateien die mit „prakt“ beginnen.
Einführung: Linux / Objektorientierte Programmierung
Shell
Datei umbennen : „mv <AlterDateiname> <NeuerDateiname>“
Der Befehl „mv“ kann eine Datei umbennen (s.o.) oder verschieben.„mv testprogramm.cpp ~“ hätte die Datei ins Homeverzeichnis verschoben.
Syntax: „mv <Dateiname> Ziel“ Verschieben„mv <AlterDateiname> <NeuerDateiname>“ Umbenennen
Einführung: Linux / Objektorientierte Programmierung
Shell
Quellcode per Mail zuschicken: „mail <Emailadresse> < Datei“
Es macht nur Sinn Quellcodes (mit .cpp-Endung) zuzusenden.Mit compilierte Dateien kann man nicht den Quellcode einsehen.Diese laufen nur auf Linux-Rechnern, nicht auf Windows-PCs.
Der Emacs wird mit der Tastenkombination strg+x strg+c beendet.
Einführung: Linux / Objektorientierte Programmierung
Shell
Allgemein:
- Vor dem Compilieren: Quelltext abspeichern (strg+x strg+s)- Immer Groß- und Kleinschreibung beachten- Beim Löschen von Dateien ist Vorsicht geboten. Gelöschte Dateien lassen sich nicht wiederherstellen.- Quellcodes an die eigene Emailadresse senden, nicht die compilierten Daten- Keine Datei mit dem Namen „test“ anlegen, test ist ein Linuxbefehl
Einführung: Linux / Objektorientierte Programmierung
Shell
essentielle Unix- / Linuxbefehle:ls zeigt den Inhalt des jeweiligen Verzeichnissescd <Verzeichnis> wechselt in ein Verzeichnisrm <Dateiname> löscht die Datei UNWIDERRUFLICHmd <Dateiname> legt ein Verzeichnis anrm -rf <Verzeichnis> löscht ein Verzeichnis UNWIDERRUFLICH./<Dateiname> führt ein Programm auspwd zeigt den Verzeichnispfad an
Wichtige Befehle für Emacs:strg+x strg+s Datei speichernstrg+x strg+c Emacs beenden
Compilen: g++ –o <AusführbareDatei> <Dateiname.cpp>Programme ausführen : ./Dateiname
Einführung: Linux / Objektorientierte Programmierung
Ende
Kleine Anmerkung aus einer Email von Dr. Möller:
„Das ist schon eine gute (und sanfte) Einfuehrung. Wir werden das Lerntempo natuerlich exponentiell steigern:-)“
Viel Spaß beim Programmieren.