Packages (1) Einführung in Perl Packages und Module. Packages noch ein Beispiel. Packages Beispiel

Größe: px
Ab Seite anzeigen:

Download "Packages (1) Einführung in Perl Packages und Module. Packages noch ein Beispiel. Packages Beispiel"

Transkript

1 Packages Einführung in Perl Packages und Module Gültigkeitsbereich von Variablen Strict Pragma local vs. my wiederverwendbarerer Code Standard-Bibliothek Module Pragmas BEGIN- und END-Routine Packages (1) erlauben Namensräume ( name spaces ) zu begrenzen sinnvoll, z.b. wenn fertiges Programmteil in neues Programm geladen werden soll (siehe Module) mehrere Programmierer am selben Programm arbeiten verhindern ungewollte Verwendung von anderweitig belegten Variablen Beginn eines Packages: package Name des Pakets; alle Variablen und Subroutinen (= Funktionen) sind in Bezug auf Packages definiert $Name des des Pakets::Array, etc. &Name des Pakets::Subroutine Perl, Pakte & Module 1 Perl, Pakte & Module 2 Packages Beispiel Packages noch ein Beispiel package Camel; $animal = "Amelia"; print "$animal\n"; das selbe ausführlicher: package Camel; $Camel::animal = "Amelia"; print "$Camel::animal\n"; # Beginn des Namensraums Camel # Belegung der Variable animal im # Namensraum Camel # Ausgabe: :> Amelia # Beginn des Namensraums Camel # Belegung der Variable animal im # Namensraum Camel # Ausgabe: :> Amelia package Camel; $animal = "Amelia"; &feed($animal); package Dog; $animal = "Fido"; &feed($animal); sub Camel::feed { my $x = $_[0]; print "Ich fuettere das Kamel $x.\n" sub Dog::feed{ my $x = $_[0]; print "Ich fuettere den Hund $x.\n"; # Ausgabe: # :>Ich fuettere das Kamel Amelia. # :>Ich fuettere den Hund Fido. Perl, Pakte & Module 3 Perl, Pakte & Module 4

2 Packages (3) jede Variable wird mit Package verbunden auch z.b. $ Ausnahme: mit my definierte Variablen jedes Package besitzt eigenen symbol table Symboltabelle speichert Variablennamen und -werte aller Skalaren, Arrays, Hashes und Subroutinen Geltungsbereich ( scope ) eines Pakets: Block, Datei, andere Packagedeklaration Perl, Pakte & Module 6 Gültigkeitsbereich von Variablen (1) Verfügbarkeit und Existenz einer Variable im Skript global immer ansprechbar potentielle Namenskonflikte ggf. in Paketen organisieren über Paketnamen ansprechen Perl, Pakte & Module 8 Packages (2) Aufruf nicht-lokaler Variablen etc. $Name des Pakets::Variable wenn kein Package definiert wird, gilt Standardpackage main vgl. Fehlermeldungen wie:: Name "main::n" used only once: possible typo at test sub.pl line 2. Beispiel: package Camel; # Beginn des Namensraums Camel $animal = "Amelia"; # Variable $animal im Namensraum Camel package Dog; # Beginn des Namensraums Dog $animal = "Fido"; # Variable $animal im Namensraum Dog print "Kamel: $Camel::animal\n"; # Zugriff auf Variable # eines anderen Namensraums # :>Amelia print "Hund: $animal\n"; # Zugriff auf lokale Variable # :>Fido Perl, Pakte & Module 5 Packages (4) altes Format: $Package Variable wird noch unterstützt, Problem bei: this $owner s house Variable s von Package owner Ausweg: This ${owner s house Perl, Pakte & Module 7

3 strict pragma (1) erzwingt Verwendung von lokalen Variablen # /usr/local/bin/perl -w use strict; my %namen = (); # quasi globaler Skalarer # quasi globales Hash my ($x,$y,$z); # gemeinsame = qw / Elke Katja Sabine/; # Fehler! Perl, Pakte & Module 10 Beispiel local vs. my (1) $global = " globale Variable hier verfuegbar\n"; &suba(); print "Hauptskript:\n"; foreach $var ($global, $mylocal, $locallocal) { if (defined $var){ print $var; sub suba { my $mylocal = " mylocal-variable hier verfuegbar\n"; local $locallocal = " lokale local-variable hier verfuegbar\n"; print "SubA: \n"; foreach $var ($global, $mylocal, $locallocal){ if (defined $var) { print $var; &subb(); Perl, Pakte & Module 12 Gültigkeitsbereich von Variablen (2) lokal durch my deklarierte Variablen lexikalischer Bereich stehen nicht in Symboltabelle sind nicht von außerhalb ansprechbar effiziente Verarbeitung durch local definiert dynamischer Bereich vorübergehender Eintrag in Symboltabelle (ggf. temporäre Ersetzung) bevorzuge my! Perl, Pakte & Module 9 strict pragma (2) foreach $key (sort keys %namen) { # Fehler! # Ausweg # ======= foreach my $key (sort keys %namen) { # Unix my ($key); foreach $key (sort keys %namen) { # Windows Perl, Pakte & Module 11

4 Beispiel local vs. my (3) # Ausgabe: SubA: globale Variable hier verfuegbar mylocal-variable hier verfuegbar lokale local-variable hier verfuegbar SubB: globale Variable hier verfuegbar lokale local-variable hier verfuegbar Hauptskript: globale Variable hier verfuegbar Perl, Pakte & Module 14 Typen von wiederverwendbarem Code (2) Perl-Module definieren eigene Pakete (eigener Satz von Variablen) importieren über use Standardname: Name.pm, Bsp. English.pm Pragmas besondere Module Standardnamen: kleingeschrieben,z.b. strict.pm beeinflussen Kompilierung des Programms Perl, Pakte & Module 16 Beispiel local vs. my (2) sub subb{ print "SubB: \n"; foreach $var ($global, $mylocal, $locallocal){ if (defined $var) { print $var; Perl, Pakte & Module 13 Typen von wiederverwendbarem Code (1) vordefinierte Funktionen, z.b. print Perl-Bibliothek veraltet Sammlung von Perl-Code, der in anderen Skripten wiederverwendet werden kann importieren über require Standardnamen: Name.pl Perl, Pakte & Module 15

5 Standard-Bibliothek Schnittstllen zu Datenbanken Einfache Netzwerke Spracherweiterungen, Unterstützung zur Software-Entwicklung, dynamisches Laden von Modulen und Funktionen Textverarbeitung Objektorientierte Programmierung Höhere Mathematik Programmierung mit Dateien, Verzeichnissen und Befehlszeilenarg Fehlerbehandlung Datum und Uhrzeit Lokale (zur Erstellung internationaler Skripts) Perl, Pakte & Module 18 Module (1) Package in eigener Datei Dateiname: package name.pm ( perl module ) komplexer Dateiname; Name a::name b = Pfad im Unterverzeichnis../Name a/name b.pm z.b. Math::BigFloat.pm grundlegende Einheit der Programm-Wiederverwendung in Perl Aufruf mit use (veraltet: require) Perl, Pakte & Module 20 Quellen für wiederverwendbaren Code Standard-Perl-Bibliothek Dokumentation perldoc perlmod Pfade sind angegeben perl -V in Aufruf z.b. perl -le print Comprehensive Perl Archive CPAN ( das WWW allgemein Perl, Pakte & Module 17 Quellen vorübergehend ergänzen dauerhaft ergänzen C-Shell: setenv PERL5LIB bei Programmaufruf ergänzen perl -I/home/heike/perl-lib /weiterer/pfad einzelnes zusätzliches Modul use lib /home/helmut/perl-lib Perl, Pakte & Module 19

6 Module (2) standardmäßig exportierte = qw(fileparse fileparse set fstype basename dirname); optionale OK = qw(cmp compare text); eingeschränkter TAGS = qw //; Aufruf: Module (3) use MODULE; #symbols named in module s are used use MODULE LIST; # Schema use Fred; # if Fred.pm = qw(flintstone) use Fred qw(flintstone); # else &flintstone(); # this calls &Fred::flintstone flintstone(); # the same Perl, Pakte & Module 21 Perl, Pakte & Module 22 Objekt-orientierte Module (1) bereits installierte Module finden: Programm inside (unter objekt-orientiertes Programmieren: Jedes Objekt gehört zu einer Klasse eine Klasse wird als Modul implementiert das Modul definiert ein Package mit dem Namen der Klasse Übergeordnete Klasse in is a -Array (@ISA) Modul-Datei: package Bestiary; require Exporter; Objekt-orientierte Module (2) # definiert Namensraum # Aufruf des Exporter-Moduls = qw(exporter); # our definiert Package-Variable vgl. my nennt uebergeordnetes Modul, # aus dem Methoden importiert werden koennen = qw (camel); # Symbole die standardmaessig exportiert werden = qw ($weight); # Symbole, die auf Anfrage exportiert werden our $VERSION = 1.00; ########################### Belegung der Symbole sub camel { print One-hump dromedary $weight = 1024; 1; # wahrer Rueckgabewert untergeordnete Klasse hat Zugriff auf Funktionen (=Methoden) der übergeordneten Klasse Aufruf use Bestiary; importiert Funktion camel Aufruf use Bestiary qw(camel $weight); importiert Funktion und Variable Perl, Pakte & Module 23 Perl, Pakte & Module 24

7 Modul File::Basename (1) Modul File::Basename (2) Aufgabe: ermittle Datei-Basisnamen aus langem Dateinamen $name = "/usr/local/bin/perl"; ($basisname = $name) =~ s#.*/##; print "$basisname\n"; Probleme: Perl-Standardmodul Information über perldoc File::Basename Funktionen: basename, dirname, fileparse ist plattform-unabhänging (Unix-)Dateinamen können Newline-Zeichen enthalten Routine ist Unix-spezifisch ( Slash als Verzeichnistrennzeichen) man versucht das Rad neu zu erfinden es gibt schon eine Lösung use File::Basename; $name = "/usr/local/bin/perl"; $basisname = basename $name; $verzeichnis = dirname $name; # Aufruf von Modul File::Basename # ergibt perl # ergibt /usr/local/bin Perl, Pakte & Module 25 Perl, Pakte & Module 26 Modul File::Spec (1) erlaubt Dateispezifikationen zu manipulieren ermittelt auch aktuelles Verzeichnis $curdir = File::Spec->curdir(); alternativ: Modul Cwd objektorientiertes Modul ( OO ) Methoden (= Funktionen) aus OO-Modul müssen mit langem Namen angesprochen werden use File::Basename; use File::Spec; $ name = "/usr/local/bin/perl"; $basisname= basename $name; $verzeichnis = dirname $name; $basisname =~ s/^/kein_/; Modul File::Spec (2) # Aufruf der Module # Praefix hinzufuegen my $neuer_name = File::Spec->catfile($verzeichnis, $basisname); # Aufruf der Funktion catfile aus # Modul File::Spec mit zwei Argumen print "$neuer_name"; # ergibt /usr/local/bin/kein_perl rename ($name, $neuer_name) or warn "Kann $name nicht in $neuer_name umbennenen: $!" Perl, Pakte & Module 27 Perl, Pakte & Module 28

8 Modul English nimmt Einfluß auf Skriptinterpretation erlaubt längere Aliase für Spezialvariablen z.b. $& = $MATCH $ = $PREMATCH siehe perdoc perlvar Perl, Pakte & Module 30 Pragmas besondere Module führen keine neuen Funktionen ein wikrt in Kompilierzeit verändern die Ausführung von Perl kann auf Block beschränkt werden Bsp.: warnings, diagnostic, strict, integer, lib use warnings; # Warnings-Modus wird eingestellt { no warnings; # Keine Warnings bis zum Ende des Blocks # Blockende # Warnings-Modus automatisch wieder eingestellt Perl, Pakte & Module 32 Modul File::Copy kopiert oder verschiebt Dateien plattformunabhängiges copy, move use file::copy; copy ("quelle", "ziel") or die "Kann quelle nicht nach ziel kopieren: $!"; Perl, Pakte & Module 29 Weitere Module File::Find rekursives Verzeichnisdurchsuchen top-down: find(gesuchtes, (Liste von) Verzeichnis(sen)) bottom-up: find(gesuchtes, (Liste von) Verzeichnis(sen)) Getopt::Std Standardmethode für die Übergabe von Kommandozeilenoptionen siehe auch Getopt::Long Math::Complex, Math::BigInt, Math::BigFloat Perl, Pakte & Module 31

9 BEGIN- und END-Blöcke spezielle Subroutinen: Paketkonstruktor und -destruktor & ist beim Aufruf optional BEGIN-Blöcke werden ausgeführt, sobald sie definiert sind können ausgeführt werden, bevor Rest des Programms geparst ist können Interpretation des Rests beeinflussen END-Blöcke werden so spät wie möglich ausgeführt END-Blöcke werden auch dann noch ausgeführt, wenn Programm mit die verlassen wurde Anwendung z.b. bei Kommandozeilenaufruf (aber auch innerhalb von Dateien) BEGIN und END Beispiel perl -p -e BEGIN{print"Liste: n" print"$. ";END{print"Ende n" namen10.txt perl benütze Perl -p erzeugt while-schleife, die die Datei(en) (=aufrufendes Argument) per zeilenweise nach $ einliest und am Ende (ggf. nach anderen, explizit genannten Kommandos) mittels print auf der Standardausgabe ausgibt -e aktiviert Kommandozeilenfunktion. BEGIN Subroutinenaufruf (sub kann weggelassen werden). Routine wird vor allem anderen ausgeführt, auch vor der durch -p aktivierten while-schleife {print Liste n Kommandoblock der Subroutine BEGIN print $. ; Kommando, das innerhalb der durch -p erzeugten while-schleife interpretiert wird (druckt aktuelle Zeilennummer und Leerstelle) END Subroutinenaufruf. Routine wird nach allem anderen durchgeführt {print Ende n Kommandoblock der Subroutine END namen10.txt aufrufendes Argument = zu bearbeitende Datei Perl, Pakte & Module 33 Perl, Pakte & Module 34 Übung 12 Schreiben Sie ein kleines Programm, das das Modul Getopt aus der Standard-Bibliothek verwendet. Es soll und mit zwei bis drei verschiedenen Optionen aufrufbar sein und jeweils eine andere Funktionalität bzw. Ausführung haben. Abgabe Donnerstag, Referenzen Schwartz, Randal L. & Tom Phoenix, Einführung in Perl. Köln, O Reilly Packages & Module: Kapitel 13 Tom Christiansen & Nathan Torkington, Perl Cook Book, O Reilly & Associates, Inc. Perlguide von Bernd Schamberger, Kap Perl, Pakte & Module 35 Perl, Pakte & Module 36

Referenz (1) Einführung in Perl Referenzen. Zwei Typen von Referenz. Referenz (2) Referenz = Verweis auf andere Daten

Referenz (1) Einführung in Perl Referenzen. Zwei Typen von Referenz. Referenz (2) Referenz = Verweis auf andere Daten Referenz (1) Referenz = Verweis auf andere Daten Referenzierung = eine Referenz erzeugen Syntax: vorangestellter Backslash $str = "Das ist ein String\n"; # String $ref = \$str; # Referenz auf String @array

Mehr

Fehlersuche. Einführung in Perl Debugger. Start des Debuggers (1) Beispiel (1) #! /usr/local/bin/perl -wd. (M-x perl-mode) - Menü: Perl - Debugger

Fehlersuche. Einführung in Perl Debugger. Start des Debuggers (1) Beispiel (1) #! /usr/local/bin/perl -wd. (M-x perl-mode) - Menü: Perl - Debugger Fehlersuche bisher Option -w oder pragma warnings Syntaxfehler schlechter Stil eingestreute print-anweisungen Verlaufskontrolle Variablenbelegung komfortabler Quellcode-Debugger Quelltextanzeige schrittweises

Mehr

Perl-Praxis. Subroutinen. Jörn Clausen, Jan Krüger Jens Reeder, Alex Sczyrba. AG Praktische Informatik Technische Fakultät Universität Bielefeld

Perl-Praxis. Subroutinen. Jörn Clausen, Jan Krüger Jens Reeder, Alex Sczyrba. AG Praktische Informatik Technische Fakultät Universität Bielefeld Perl-Praxis Subroutinen Jörn Clausen, Jan Krüger Jens Reeder, Alex Sczyrba AG Praktische Informatik Technische Fakultät Universität Bielefeld {asczyrba,jkrueger@techfak.uni-bielefeld.de Übersicht Subroutinen

Mehr

Einführung in Perl. O'REILLY Beijing Cambridge Farnham Köln Sebastopol Taipei Tokyo. Randal L. Schwartz, Tom Phoenix & brian dfoy

Einführung in Perl. O'REILLY Beijing Cambridge Farnham Köln Sebastopol Taipei Tokyo. Randal L. Schwartz, Tom Phoenix & brian dfoy Einführung in Perl Randal L. Schwartz, Tom Phoenix & brian dfoy Deutsche Übersetzung von Jörgen W. Lang O'REILLY Beijing Cambridge Farnham Köln Sebastopol Taipei Tokyo Inhalt Vorwort XI 1 Einleitung 1

Mehr

MASCHINELLE SPRACHVERARBEITUNG Gertrud Faaß Basierend auf Folien von Dr. H Zinsmeister. Einführung in PERL

MASCHINELLE SPRACHVERARBEITUNG Gertrud Faaß Basierend auf Folien von Dr. H Zinsmeister. Einführung in PERL Einführung in PERL BASIEREND AUF FOLIEN VON DR. H. ZINSMEISTER und dem Buch `Einführung in Perl (Lama Buch) von RL Schwartz&T Phoenix Gertrud Faaβ Universität StuVgart, InsXtut für maschinelle Sprachverarbeitung

Mehr

Klassen und Objekte. Klassen und Objekte

Klassen und Objekte. Klassen und Objekte Klassen und Objekte Klassen und Objekte Klassen Eine Klasse definiert die Eigenschaften (Instanzvariablen oder Felder) und das Verhalten (Methoden) von (gleichartigen) Objekten. In Perl sind Klassen als

Mehr

Übersicht. Einführung in Perl Mustersuche III/ Datentypen II. Mehrzeiliges Matching (1) Mehrzeiliges Matching (2) chomp

Übersicht. Einführung in Perl Mustersuche III/ Datentypen II. Mehrzeiliges Matching (1) Mehrzeiliges Matching (2) chomp Einführung in Perl Mustersuche III/ Datentypen II Universität Stuttgart Institut für maschinelle Sprachverarbeitung http://www.ims.uni-stuttgart.de/lehre/teaching/2003-ws/perl/home.html Heike.Zinsmeister@ims.uni-stuttgart.de

Mehr

Einführung in Perl. Packages, OO-Programmierung

Einführung in Perl. Packages, OO-Programmierung Einführung in Perl Packages, OO-Programmierung Jörn Clausen Georg Fuellen Übersicht Modularisierung von Programmen Objekt-orientierte Programmierung Tugenden des Software-Designs Laziness Impatience Hubris

Mehr

Benutzerfunktionen Was ist eine Funktion, was ist eine Prozedur?

Benutzerfunktionen Was ist eine Funktion, was ist eine Prozedur? Was ist eine Funktion, was ist eine Prozedur? Aufbau einer "Prozedur" (d.h. ohne Rückgabewerte) sub FktName (Parameter) {Anweisungsblock sub ausgabe {print "Hallo Welt!" Aufbau einer "Funktion" (d.h. mit

Mehr

Kommandozeileneingabe. Einführung in Perl Kommandozeileneingabe etc. Kommandozeileneingabe Optionen. Kommandozeileneingabe Bsp (1)

Kommandozeileneingabe. Einführung in Perl Kommandozeileneingabe etc. Kommandozeileneingabe Optionen. Kommandozeileneingabe Bsp (1) Einführung in Perl Kommandozeileneingabe etc. Kommandozeileneingabe index-funktion rindex-funktion substr-operator grep-operator map-operator Kommandozeileneingabe Ausführung von Perl-Kommandos direkt

Mehr

PERL. Eine Einführung. von Serap Tekke & Elif Öner

PERL. Eine Einführung. von Serap Tekke & Elif Öner PERL Eine Einführung von Serap Tekke & Elif Öner Inhalt 1. Allgemeines 2. Datentypen 3. Algorithmische Elemente 4. Module 5. Objektorientiertes Programmieren 6. Pattern Matching 2 Was ist Perl... Perl

Mehr

Objekterkennung auf Bildern mit OpenCV und Image::ObjectDetect

Objekterkennung auf Bildern mit OpenCV und Image::ObjectDetect Objekterkennung auf Bildern mit OpenCV und Image::ObjectDetect Autor: EMail: Datum: Simon Wilper simon AT ruhr.pm.org http://ruhr.pm.org/ Template Version 0.3 The use of a camel image in association with

Mehr

Übersicht. Einführung in Perl Datenstrukturen I. Datentypen Übersicht (1) Kernbegriffe. Kernbegriffe. Einführung der Datentypen.

Übersicht. Einführung in Perl Datenstrukturen I. Datentypen Übersicht (1) Kernbegriffe. Kernbegriffe. Einführung der Datentypen. Übersicht Kernbegriffe Einführung der Datentypen Skalare im Detail Vergleichsoperatoren Standardeingabe chomp-operator while-schleife Perl, 24.10.03 Datentypen I 1 Datentypen Übersicht (1) Datentyp Erklärung

Mehr

Arithmetik in der tcsh

Arithmetik in der tcsh Arithmetik in der tcsh Variablen speichern Zeichenketten (also Strings/Wörter) @ statt set Interpretation als arithmetische Ausdrücke (aus Ziffern, (, ), +, -, *, /, % bestehend) Beispiele: @ var = (3

Mehr

Eine Beschreibung des Programms und der dahinter stehenden Philosophie.

Eine Beschreibung des Programms und der dahinter stehenden Philosophie. 1 Geschichte Larry Wall schrieb ein Konfigurationsmanagementsystem und benötigte dazu ein Berichtwerkzeug, das mehrere Dateien gleichzeitig öffnen konnte. Awk konnte es damals nicht, daher schrieb er eine

Mehr

Objektorientiertes Programmieren

Objektorientiertes Programmieren Perl-Praxis Objektorientiertes Programmieren Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Objektorientierung in Perl Klassen, Objekte, Methoden Attribute Perl-Praxis Objektorientiertes Programmieren

Mehr

select Einführung in Perl Dateien, Verzeichnisse und Prozesse II Autoflush - Bsp (1) Autoflush

select Einführung in Perl Dateien, Verzeichnisse und Prozesse II Autoflush - Bsp (1) Autoflush Einführung in Perl Dateien, Verzeichnisse und Prozesse II Dateihandle - select - ungepufferte Ausgabe - open, ergänzt - In-place Bearbeitung Dateien manipulieren - löschen - umbenennen Verzeichnisse manipulieren

Mehr

10 Block 10: Verwendung von Modulen in Perl

10 Block 10: Verwendung von Modulen in Perl 10 Block 10: Verwendung von Modulen in Perl 10.1 Lernziele... 2 10.2 Theorie... 3 10.2.1 Warum Module?... 3 10.3 Praxis... 5 10.3.1 Module erstellen... 5 10.3.2 Module aufrufen... 6 10.3.3 Aufgabe... 8

Mehr

Richtig einsteigen: Access 2007 VBA-Programmierung

Richtig einsteigen: Access 2007 VBA-Programmierung Lorenz Hölscher Richtig einsteigen: Access 2007 VBA-Programmierung Miaosott Teill Erste Schritte 1 Einleitung 9 1.1 Die Themenschwerpunkte dieses Buches 9 Visual Basic for Applications 9 Die Beispiel-Datenbank

Mehr

Programmierung und Angewandte Mathematik

Programmierung und Angewandte Mathematik Programmierung und Angewandte Mathematik C++ /Scilab Programmierung und Einführung in das Konzept der objektorientierten Anwendungen zu wissenschaftlichen Rechnens SS 2012 Ablauf Was sind Funktionen/Methoden

Mehr

Programmieren lernen mit Perl

Programmieren lernen mit Perl Xpert.press Programmieren lernen mit Perl Bearbeitet von Joachim Ziegler 1. Auflage 2002. Buch. XIV, 400 S. Hardcover ISBN 978 3 540 42685 1 Format (B x L): 15,5 x 23,5 cm Gewicht: 783 g Weitere Fachgebiete

Mehr

Übersicht. Einführung in Perl. Einleitung. Organisatorisches. Organisatorisches. Heike Zinsmeister

Übersicht. Einführung in Perl. Einleitung. Organisatorisches. Organisatorisches. Heike Zinsmeister IMS Heike Zinsmeister Einführung in Perl Übersicht Heike Zinsmeister Universität Stuttgart Institut für maschinelle Sprachverarbeitung http://www.ims.uni-stuttgart.de/lehre/teaching/2003-ws/perl/home.html

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 16 Einstieg in die Informatik mit Java Innere Klassen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 16 1 Einführung 2 Element-Klassen 3 Lokale Klassen 4 Anonyme Klassen

Mehr

Nachtrag: Funktionen ord und chr. Einführung in Perl für Linguisten Dateihandle, etc. Nachtrag: for und foreach (1) Nachtrag: for und foreach (2)

Nachtrag: Funktionen ord und chr. Einführung in Perl für Linguisten Dateihandle, etc. Nachtrag: for und foreach (1) Nachtrag: for und foreach (2) Nachtrag: Funktionen ord und chr die Funktion ord ermittelt den ASCII-Zahlenwert eines Zeichens; kann Zahlen zwischen 0 und 255 zurückgeben die Funktion chr ermittelt den Zeichenwert einer entsprechenden

Mehr

Programmieren in Lua

Programmieren in Lua Roberto lerusalimschy Programmieren in Lua 3. Auflage Open Source Press Inhaltsverzeichnis Vorwort 13 I Die Sprache 21 1 Einführung 23 1.1 Chunks 24 1.2 Einige lexikalische Konventionen 26 1.3 Globale

Mehr

Perl 5. Grundlagen und CGI-Programmierung. Ralph Steyer, Peter Teich. 2. Ausgabe, Juli 2016 ISBN PRL5

Perl 5. Grundlagen und CGI-Programmierung. Ralph Steyer, Peter Teich. 2. Ausgabe, Juli 2016 ISBN PRL5 Ralph Steyer, Peter Teich 2. Ausgabe, Juli 2016 ISBN 978-3-86249-587-0 Perl 5 Grundlagen und CGI-Programmierung PRL5 4 Perl 5 Grundlagen und CGI-Programmierung 4 Einfache Sprachelemente In diesem Kapitel

Mehr

Threads. Netzwerk - Programmierung. Alexander Sczyrba Jan Krüger

Threads. Netzwerk - Programmierung. Alexander Sczyrba Jan Krüger Netzwerk - Programmierung Threads Alexander Sczyrba asczyrba@cebitec.uni-bielefeld.de Jan Krüger jkrueger@cebitec.uni-bielefeld.de Übersicht Probleme mit fork Threads Perl threads API Shared Data Mutexes

Mehr

Übersicht PERL. !!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!!

Übersicht PERL. !!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!! !!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!! Erste Zeile eines PERL-Scripts: #! /usr/bin/perl Variablen in PERL: Normale Variablen beginnen mit einem $-Zeichen Array-Variablen beginnen mit

Mehr

Perl-Praxis CPAN. Jörn Clausen

Perl-Praxis CPAN. Jörn Clausen Perl-Praxis CPAN Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Organisation des CPAN Module suchen und finden Perl-Module installieren Module für shared libraries installieren Fehler in Perl-Skripten

Mehr

Ursprünge. Die Syntax von Java. Das Wichtigste in Kürze. Konsequenzen. Weiteres Vorgehen. Rund um Java

Ursprünge. Die Syntax von Java. Das Wichtigste in Kürze. Konsequenzen. Weiteres Vorgehen. Rund um Java Ursprünge Die Syntax von Java Borland Software Corp 1995 Syntax: Pascal Objektorientierte Prorammierung optional Plattformen: Windows (Linux, Mac OS X) Sun Microsystems 1995 Syntax: C/C++ Objektorientiert

Mehr

Python zur Lösung von AvA Übung 1 VON MORITZ FEY

Python zur Lösung von AvA Übung 1 VON MORITZ FEY Python zur Lösung von AvA Übung 1 VON MORITZ FEY Übersicht 2 Einführung Socket-Schnittstellen Datei-Zugriff Aufbau der Nachrichten und Serialisierung Besonderheiten von Python Realisierung des Programms

Mehr

Mojolicious. Ich zeige dir jetzt, wie du mit Mojolicious eine Vorlage. Das Mojolicious-Gerüst

Mojolicious. Ich zeige dir jetzt, wie du mit Mojolicious eine Vorlage. Das Mojolicious-Gerüst 6 Ich zeige dir jetzt, wie du mit Mojolicious eine Vorlage für deine Web-Anwendung erstellst, die wir dann im Rest des Buchs immer weiter ausbauen. Sie enthält zu Beginn nur das Notwendige, um sie im Browser

Mehr

Eine Mini-Shell als Literate Program

Eine Mini-Shell als Literate Program Eine Mini-Shell als Literate Program Hans-Georg Eßer 16.10.2013 Inhaltsverzeichnis 1 Eine Mini-Shell 1 1.1 Einen Befehl parsen......................... 2 1.2 Was tun mit dem Kommando?...................

Mehr

Python Einführung. Monica Selva Soto. 24 März Mathematisches Institut

Python Einführung. Monica Selva Soto. 24 März Mathematisches Institut Mathematisches Institut mselva@math.uni-koeln.de 24 März 2009 Übungen zur Numerik 1 Vorlesung Übungen praktische Aufgaben Webseite: (Anmeldung, Übungsblätter) http://www.mi.uni-koeln.de/~mselva/numerik1.php

Mehr

Korn-Shell: Einführung in Shellscripte 1. Übersicht: Einführung - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung

Korn-Shell: Einführung in Shellscripte 1. Übersicht: Einführung - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung 1. Übersicht: Einführung - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung 1. Übersicht und Einführung 1.1 Die Shell allgemein 1.2 Die korn-shell 1.3 Der Weg zum ersten Skript 1.4 Nutzen und

Mehr

Innere Klassen. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java

Innere Klassen. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java Innere Klassen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 13.06.07 G. Bohlender (IANM UNI Karlsruhe) Innere Klassen 13.06.07 1 / 11

Mehr

Musterlösung

Musterlösung Musterlösung 7 12.12.2003 Spielerstatistik In der Datei vfb.txt finden Sie eine Tabelle mit Informationen zu Spielern des VFB Stuttgart. Die einzelnen Spalten sind jeweils mit Tabulator getrennt. Einlesen

Mehr

Algorithmen und ihre Programmierung

Algorithmen und ihre Programmierung Veranstaltung Pr.-Nr.: 101023 Algorithmen und ihre Programmierung Veronika Waue WS 07/08 Einführung Definition: Algorithmus Ein Algorithmus ist eine genau definierte Folge von Anweisungen zur Lösung eines

Mehr

Computer & GNU/Linux Einführung Teil 4

Computer & GNU/Linux Einführung Teil 4 Inst. für Informatik [IFI] Computer & GNU/Linux EinführungTeil 4 Simon Haller, Sebastian Stab 1/20 Computer & GNU/Linux Einführung Teil 4 Simon Haller, Sebastian Stabinger, Benjamin Winder Inst. für Informatik

Mehr

C++ - Variablen: Gültigkeit - Sichtbarkeit

C++ - Variablen: Gültigkeit - Sichtbarkeit C++ - Variablen: Gültigkeit - Sichtbarkeit Reiner Nitsch 8417 r.nitsch@fbi.h-da.de Attribute von Variablen und Funktionen Attribute von Variablen sind Name (name), Typ (type), Wert (value) Attribute von

Mehr

Modularisierung in Java: Pakete Software Entwicklung 1

Modularisierung in Java: Pakete Software Entwicklung 1 Modularisierung in Java: Pakete Software Entwicklung 1 Annette Bieniusa, Mathias Weber, Peter Zeller Um zusammengehörende Klassen, Interfaces, etc. gemeinsam zu verwalten, Sichtbarkeiten einzugrenzen und

Mehr

Das Einsteigerseminar Objektorientierte Programmierung in Java

Das Einsteigerseminar Objektorientierte Programmierung in Java Alexander Niemann Das Einsteigerseminar Objektorientierte Programmierung in Java -H-H Inhalt Vorwort 13 Einleitung 15 1 Java 21 1.1 Die Geschichte von Java 22 1.2 Das Konzept 24 Klassisch - Compiler und

Mehr

Programmierkurs Python I

Programmierkurs Python I Programmierkurs Python I Michaela Regneri & Stefan Thater Universität des Saarlandes FR 4.7 Allgemeine Linguistik (Computerlinguistik) Winter 2010/11 Übersicht Kurze Wiederholung: while Sammeltypen (kurz

Mehr

Einführung in den Einsatz von Objekt-Orientierung mit C++ I

Einführung in den Einsatz von Objekt-Orientierung mit C++ I Einführung in den Einsatz von Objekt-Orientierung mit C++ I ADV-Seminar Leiter: Mag. Michael Hahsler Syntax von C++ Grundlagen Übersetzung Formale Syntaxüberprüfung Ausgabe/Eingabe Funktion main() Variablen

Mehr

C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren

C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren hat eine Kantenlänge hat eine Füllfarbe Kantenlänge setzen Füllfarbe lesen Volumen berechnen Leibniz Universität IT Services Anja Aue

Mehr

Verkettete Datenstrukturen: Listen

Verkettete Datenstrukturen: Listen Verkettete Datenstrukturen: Listen 2 Listen Formal: Liste = endliche Folge von Elementen [a 1, a 2,..., a n ]. Spezialfall: leere Liste [ ]. Länge einer Liste = Anzahl der Elemente (bei leerer Liste: 0).

Mehr

Alexander Niemann. Das Einsteigerseminar" < Objektorientierte ^ Programmierung in Java. bhv. i.-

Alexander Niemann. Das Einsteigerseminar < Objektorientierte ^ Programmierung in Java. bhv. i.- Alexander Niemann Das Einsteigerseminar" < Objektorientierte ^ Programmierung in Java i.- bhv Vorwort 11 Einleitung 13 Lernen - Üben 13 Über dieses Buch 14 Teil \ LöRTEn ;...-.,-......Al f Java 19 Die

Mehr

Linux II. Reguläre Ausdrücke Editoren Scripting. 2 Linux II. Linux I II III Res WN/TT NLTK XML Weka E Reguläre Ausdrücke Editoren Scripting

Linux II. Reguläre Ausdrücke Editoren Scripting. 2 Linux II. Linux I II III Res WN/TT NLTK XML Weka E Reguläre Ausdrücke Editoren Scripting Linux II 2 Linux II Reguläre Ausdrücke Editoren Scripting Reguläre Ausdrücke Reguläre Ausdrücke beschreiben eine Menge von Zeichenfolgen und werden benutzt um m festzustellen, ob eine Zeichenkette Teil

Mehr

Dynamische Datentypen. Destruktor, Copy-Konstruktor, Zuweisungsoperator, Dynamischer Datentyp, Vektoren

Dynamische Datentypen. Destruktor, Copy-Konstruktor, Zuweisungsoperator, Dynamischer Datentyp, Vektoren Dynamische Datentypen Destruktor, Copy-Konstruktor, Zuweisungsoperator, Dynamischer Datentyp, Vektoren Probleme mit Feldern (variabler Länge) man kann sie nicht direkt kopieren und zuweisen Probleme mit

Mehr

2. Programmierung in C

2. Programmierung in C 2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten Operatoren, Ausdrücke und Anweisungen Kontrollstrukturen (Steuerfluss)

Mehr

Einführung in Python. Übung zur Vorlesung NLP Beate Krause, Dominik Benz NLP-Übung: Einführung in Python 1

Einführung in Python. Übung zur Vorlesung NLP Beate Krause, Dominik Benz NLP-Übung: Einführung in Python 1 Einführung in Python Übung zur Vorlesung NLP Beate Krause, Dominik Benz 22.04.2008 23.04.2008 NLP-Übung: Einführung in Python 1 Ablauf der Übung Klärung von aktuellen Fragen zur Vorlesung Kurze Einführung

Mehr

Objektorientierte Programmierung in Java

Objektorientierte Programmierung in Java Objektorientierte Programmierung in Java 1. Auflage Taschenbuch. Paperback ISBN 978 3 8266 7414 3 Weitere Fachgebiete > EDV, Informatik > Programmiersprachen: Methoden > Prozedurorientierte Programmierung

Mehr

Verschlüsseln eines Bildes. Visuelle Kryptographie. Verschlüsseln eines Bildes. Verschlüsseln eines Bildes

Verschlüsseln eines Bildes. Visuelle Kryptographie. Verschlüsseln eines Bildes. Verschlüsseln eines Bildes Verschlüsseln eines Bildes Visuelle Kryptographie Anwendung von Zufallszahlen Wir wollen ein Bild an Alice und Bob schicken, so dass Alice allein keine Information über das Bild bekommt Bob allein keine

Mehr

OOP. Kapselung: Gruppierung von Daten und Funktionen als Objekte. Definieren eine Schnittstelle zu diesen Objekten.

OOP. Kapselung: Gruppierung von Daten und Funktionen als Objekte. Definieren eine Schnittstelle zu diesen Objekten. Polymorphismus OOP Kapselung: Gruppierung von Daten und Funktionen als Objekte. Definieren eine Schnittstelle zu diesen Objekten. Vererbung: Erlaubt Code zwischen verwandten Typen wiederverwendet sein.

Mehr

Themen. Formatierte und unformatierte Eingabe Bedingungsoperator Namespaces Kommandozeilenargumente

Themen. Formatierte und unformatierte Eingabe Bedingungsoperator Namespaces Kommandozeilenargumente Themen Formatierte und unformatierte Eingabe Bedingungsoperator Namespaces Kommandozeilenargumente Formatierte Eingabe mit cin Die Formatierung der Eingabe ist der Ausgabe sehr ähnlich: Die Flags werden

Mehr

Repetitorium Informatik (Java)

Repetitorium Informatik (Java) Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen

Mehr

Funktionen in JavaScript

Funktionen in JavaScript Funktionen in JavaScript Eine Funktion enthält gebündelten Code, der sich in dieser Form wiederverwenden lässt. Mithilfe von Funktionen kann man denselben Code von mehreren Stellen des Programms aus aufrufen.

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2010/11 Lokale und globale Variablen Namensräume Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund

Mehr

Die Syntax von Java. Ursprünge. Konsequenzen. Das Wichtigste in Kürze. Weiteres Vorgehen. Rund um Java. Sun Microsystems. Borland Software Corp

Die Syntax von Java. Ursprünge. Konsequenzen. Das Wichtigste in Kürze. Weiteres Vorgehen. Rund um Java. Sun Microsystems. Borland Software Corp Ursprünge Die Syntax von Java Borland Software Corp 1995 Syntax: Pascal Objektorientierte Prorammierung optional Plattformen: Windows (Linux, Mac OS X) Sun Microsystems 1995 Syntax: C/C++ Objektorientiert

Mehr

Grundlagen der Programmierung Prof. H. Mössenböck. 15. Pakete

Grundlagen der Programmierung Prof. H. Mössenböck. 15. Pakete Grundlagen der Programmierung Prof. H. Mössenböck 15. Pakete Idee Paket = Sammlung zusammengehöriger Klassen (Bibliothek) Zweck mehr Ordnung in Programme bringen bessere Kontrolle der Zugriffsrechte (wer

Mehr

Methoden. Gerd Bohlender. Einstieg in die Informatik mit Java, Vorlesung vom

Methoden. Gerd Bohlender. Einstieg in die Informatik mit Java, Vorlesung vom Einstieg in die Informatik mit Java, Vorlesung vom 2.5.07 Übersicht 1 2 definition 3 Parameterübergabe, aufruf 4 Referenztypen bei 5 Überladen von 6 Hauptprogrammparameter 7 Rekursion bilden das Analogon

Mehr

Richtig einsteigen: Access 2010 VBA-Programmierung

Richtig einsteigen: Access 2010 VBA-Programmierung Richtig einsteigen: Access 2010 VBA-Programmierung Von den Grundlagen bis zur professionellen Entwicklung von Lorenz Hölscher 1. Auflage Richtig einsteigen: Access 2010 VBA-Programmierung Hölscher schnell

Mehr

Funktionen in JavaScript

Funktionen in JavaScript Funktionen in JavaScript Eine Funktion enthält gebündelten Code, der sich in dieser Form wiederverwenden lässt. Es können ganze Programmteile aufgenommen werden. Mithilfe von Funktionen kann man denselben

Mehr

Effizientes Arbeiten mit dem Emacs.

Effizientes Arbeiten mit dem Emacs. Effizientes Arbeiten mit dem Emacs Emacs für Programmierer, Online-Hilfe und Konfiguration Rainer Orth Alexander Sczyrba {ro,asczyrba}@techfak.uni-bielefeld.de Überblick komfortable Unterstützung zum Schreiben

Mehr

Prozesse. Netzwerk - Programmierung. Alexander Sczyrba Madis Rumming

Prozesse. Netzwerk - Programmierung. Alexander Sczyrba Madis Rumming Netzwerk - Programmierung Prozesse Alexander Sczyrba asczyrba@cebitec.uni-bielefeld.de Madis Rumming mrumming@cebitec.uni-bielefeld.de Übersicht Prozesse fork() Parents und Children system() und exec()

Mehr

Konstruktoren, Packages und Scopes

Konstruktoren, Packages und Scopes Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski Konstruktoren, Packages und Scopes Dipl. Inf. Manuel Götz Lehrstuhl für Angewandte

Mehr

THE GO PROGRAMMING LANGUAGE. Michael Karnutsch & Marko Sulejic

THE GO PROGRAMMING LANGUAGE. Michael Karnutsch & Marko Sulejic THE GO PROGRAMMING LANGUAGE Part 1: Michael Karnutsch & Marko Sulejic Gliederung Geschichte / Motivation Compiler Formatierung, Semikolons Variablen, eigene Typen Kontrollstrukturen Funktionen, Methoden

Mehr

Objektorientiertes Programmieren II

Objektorientiertes Programmieren II Objektorientiertes Programmieren II Symbolische Programmiersprache. Benjamin Roth Folien von Annemarie Friedrich Wintersemester 2017/2018 Centrum für Informations- und Sprachverarbeitung LMU München 1

Mehr

Tag 5. Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme)

Tag 5. Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme) Tag 5 Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Methoden Deklaration

Mehr

Java Einführung Methoden. Kapitel 6

Java Einführung Methoden. Kapitel 6 Java Einführung Methoden Kapitel 6 Inhalt Deklaration und Aufruf von Methoden Lokale und globale Namen (Bezeichner) Sichtbarkeit und Lebensdauer von Variablen in Methoden Überladen von Methoden 2 Methoden

Mehr

Arbeiten mit der Shell Teil 1

Arbeiten mit der Shell Teil 1 Arbeiten mit der Shell Teil 1 Linux-Kurs der Unix-AG Zinching Dang 2. Mai 2017 Übersicht Wiederholung & Vertiefung Die Unix-Philosophie Shellbefehle Befehle & Optionen Zusammenfassung & Ausblick Tux im

Mehr

Okt 10, 16 17:29 UNIX/Linux Lösung

Okt 10, 16 17:29 UNIX/Linux Lösung Okt 10, 16 17:29 UNIX/Linux Lösung Seite 1/6 Technische Hochschule Nürnberg Name:... GEORG SIMON OHM Schriftliche Prüfung im Fach Vorname:... "Betriebssystem UNIX/Linux" Matrikel Nr.:... Prüfungstermin:

Mehr

Implementieren von Klassen

Implementieren von Klassen Implementieren von Klassen Felder, Methoden, Konstanten Dr. Beatrice Amrhein Überblick Felder/Mitglieder (Field, Member, Member-Variable) o Modifizierer Konstanten Methoden o Modifizierer 2 Felder und

Mehr

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil MÜNSTER Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++ 1. Teil 11. April 2012 Organisatorisches MÜNSTER Übung zur Vorlesung Wissenschaftliches

Mehr

Inhaltsverzeichnis Einleitung xi Kapitel 1: Die Vorbereitung aufs Abenteuer

Inhaltsverzeichnis Einleitung xi Kapitel 1: Die Vorbereitung aufs Abenteuer Inhaltsverzeichnis Einleitung Warum man programmieren können sollte.... xi Warum Python?.... xii Und warum Minecraft?... xii Was du in diesem Buch findest... xiii Online-Ressourcen....xv Möge das Abenteuer

Mehr

FEBE Die Frontend-Backend-Lösung für Excel

FEBE Die Frontend-Backend-Lösung für Excel FEBE Die Frontend--Lösung für FEBE Die Frontend--Lösung für FEBE.pptx 8.04.206 0:43 FEBE Die Frontend--Lösung für Nutzer A alle_aufträge neuer_auftrag Auftragsänderung Nutzer B alle_aufträge neuer_auftrag

Mehr

Inhalt 6 Vorwort 10 1 Warum Perl? 12 2 Grundlagen Variablen Spezial-Variablen Kontext Wahrheitswert 18 3 Skalare 20 3.

Inhalt 6 Vorwort 10 1 Warum Perl? 12 2 Grundlagen Variablen Spezial-Variablen Kontext Wahrheitswert 18 3 Skalare 20 3. Inhalt 6 Vorwort 10 1 Warum Perl? 12 2 Grundlagen 14 2.1 Variablen 14 2.2 Spezial-Variablen 16 2.3 Kontext 16 2.4 Wahrheitswert 18 3 Skalare 20 3.1 Zahlen 20 3.2 Operatoren 24 3.3 Mathematische Funktionen

Mehr

Das Grundlagenbuch zu FileMaker Pro 7- Datenbanken erfolgreich anlegen und verwalten

Das Grundlagenbuch zu FileMaker Pro 7- Datenbanken erfolgreich anlegen und verwalten Das Grundlagenbuch zu FileMaker Pro 7- Datenbanken erfolgreich anlegen und verwalten SMART BOOKS Inhaltsverzeichnis..««... Vorwort 13 Kapitel 1 - Einführung 17 Crashkurs: FileMaker Pro 7 anwenden 19 Eine

Mehr

C - PRÄPROZESSOR. Seminar effiziente C Programmierung WS 2012/13. Von Christian Peter

C - PRÄPROZESSOR. Seminar effiziente C Programmierung WS 2012/13. Von Christian Peter C - PRÄPROZESSOR Seminar effiziente C Programmierung WS 2012/13 Von Christian Peter Themen Was sind Präprozessoren? Beispiele für Präprozessoren Funktionsweisen Der C - Präprozessor Der # Präfix #include

Mehr

Einführung in die Programmierung Wintersemester 2016/17

Einführung in die Programmierung Wintersemester 2016/17 Einführung in die Programmierung Wintersemester 2016/17 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund : Gültigkeitsbereiche Inhalt Lokale und globale

Mehr

Geschachtelte Klassen

Geschachtelte Klassen Geschachtelte Klassen Die Programmiersprache Java bietet nicht nur die Möglichkeit innerhalb von Klassen Datenfelder und Methoden zu definieren, sondern auch Klassen. Solche Klassen heißen en geschachtelte

Mehr

Fachhochschule Südwestfalen Wir geben Impulse. Kontrollstrukturen und Schleifen in Octave

Fachhochschule Südwestfalen Wir geben Impulse. Kontrollstrukturen und Schleifen in Octave Fachhochschule Südwestfalen Wir geben Impulse Kontrollstrukturen und Schleifen in Octave Einführung Inhalt m-files Script-Files Function-Files Ein- Ausgabe von Variablen oder Ergebnissen For-Schleife While-Schleife

Mehr

Linux I II III Res/Pro WN/TT Reguläre Ausdrücke Editoren Scripting. Linux II. 2 Linux II. Reguläre Ausdrücke Editoren Scripting. Ressourcen-Vorkurs

Linux I II III Res/Pro WN/TT Reguläre Ausdrücke Editoren Scripting. Linux II. 2 Linux II. Reguläre Ausdrücke Editoren Scripting. Ressourcen-Vorkurs Linux II 2 Linux II Reguläre Ausdrücke Editoren Scripting POSIX POSIX POSIX ist ein UNIX-Standard, der bestimmte grundlegende Funktionen und Eigenschaften von UNIX-Systemen definiert. Dazu gehören auch

Mehr

Icinga Teil 2. Andreas Teuchert. 25. Juli 2014

Icinga Teil 2. Andreas Teuchert. 25. Juli 2014 Icinga Teil 2 Andreas Teuchert 25. Juli 2014 1 Nagios-Plugins Programme, die den Status von Diensten überprüfen können liegen in /usr/lib/nagios/plugins/ werden von Icinga aufgerufen, geben Status über

Mehr

C++ - Einführung in die Programmiersprache Header-Dateien und Funktionen. Leibniz Universität IT Services Anja Aue

C++ - Einführung in die Programmiersprache Header-Dateien und Funktionen. Leibniz Universität IT Services Anja Aue C++ - Einführung in die Programmiersprache Header-Dateien und Funktionen Leibniz Universität IT Services Anja Aue Modularisierung Logische Gliederung von Programmteilen mit Hilfe von Namensräumen. Aufteilung

Mehr

Objektorientierte Programmierung. Kapitel 22: Aufzählungstypen (Enumeration Types)

Objektorientierte Programmierung. Kapitel 22: Aufzählungstypen (Enumeration Types) Stefan Brass: OOP (Java), 22. Aufzählungstypen 1/20 Objektorientierte Programmierung Kapitel 22: Aufzählungstypen (Enumeration Types) Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester

Mehr

Informatik II Übung 05. Benjamin Hepp 3 April 2017

Informatik II Übung 05. Benjamin Hepp 3 April 2017 Informatik II Übung 05 Benjamin Hepp benjamin.hepp@inf.ethz.ch 3 April 2017 Java package Hierarchie import.. nur noetig um Klassen aus anderen Packeten zu importieren Es kann auch immer der vollstaendige

Mehr

Was ist neu an Perl 6? Mein Weg Stolperfallen Perl 6 in Perl 5 Mehr Praktisches Grundkonzepte

Was ist neu an Perl 6? Mein Weg Stolperfallen Perl 6 in Perl 5 Mehr Praktisches Grundkonzepte Rundschau Perl 6 Was ist neu an Perl 6? Mein Weg Stolperfallen Perl 6 in Perl 5 Mehr Praktisches Grundkonzepte Herbert Breunung Perl Mansfelder Land Mansfelder Land Ägypten aka Khem Kephra 0.4.3.32 Großes

Mehr

EiP Übung

EiP Übung Musterlösung zu Blatt 10: 2. Suchen Sie alle Überschriften im Text: (In html Dateien werden Überschriften mit den HTML-Tags ... , ... bis .. ausgezeichnet.) # Programm: findet Ueberschriften

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 26 Einstieg in die Informatik mit Java Methoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 26 1 Methoden 2 Methodendefinition 3 Parameterübergabe, Methodenaufruf

Mehr

Desktop ade: Me and my shell

Desktop ade: Me and my shell Ein Shelldiskurs Desktop ade: Me and my shell Erkan Yanar erkmerk@gmx.de casus belli Warum auf einem Linuxtag mit Schwerpunkt Desktop? Beherrschung der Shell := freie Wahl des Desktops Beherrschung der

Mehr

5. Übung - Kanalkodierung/Programmierung

5. Übung - Kanalkodierung/Programmierung 5. Übung - Kanalkodierung/Programmierung Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: Kanalkodierung a Folgende Kodes stehen Ihnen zur Verfügung: Kode 1: 0000000 Kode

Mehr

Objective-C Anwendungen entwickeln für Mac und iphone (Apple Software) Click here if your download doesn"t start automatically

Objective-C Anwendungen entwickeln für Mac und iphone (Apple Software) Click here if your download doesnt start automatically Objective-C 2.0 - Anwendungen entwickeln für Mac und iphone (Apple Software) Click here if your download doesn"t start automatically Objective-C 2.0 - Anwendungen entwickeln für Mac und iphone (Apple Software)

Mehr

Grundlagen der Programmierung

Grundlagen der Programmierung Übung 1: Unix Werkzeuge Robert Sombrutzki sombrutz@informatik.hu-berlin.de Unix Werkzeuge Warum? Diese Frage sollten Sie sich immer mal wieder stellen! Denkbare Antworten Weil Sie diese Werkzeuge immer

Mehr

Einführung in die Programmierung mit VBA

Einführung in die Programmierung mit VBA Einführung in die Programmierung mit VBA Vorlesung vom 07. November 2016 Birger Krägelin Inhalt Vom Algorithmus zum Programm Programmiersprachen Programmieren mit VBA in Excel Datentypen und Variablen

Mehr

Variablen. int Flugzeug. float. I write code Hund. String. long. Borchers: Programmierung für Alle (Java), WS 06/07 Kapitel

Variablen. int Flugzeug. float. I write code Hund. String. long. Borchers: Programmierung für Alle (Java), WS 06/07 Kapitel 4213 Variablen 17.834 float Flugzeug 36812736294 I write code Hund long String Borchers: Programmierung für Alle (Java), WS 06/07 Kapitel 3 + 4 1 Variablen sind wie Becher. Sie speichern etwas. // Variablen

Mehr

Linux Prinzipien und Programmierung

Linux Prinzipien und Programmierung Linux Prinzipien und Programmierung Dr. Klaus Höppner Hochschule Darmstadt Sommersemester 2014 1 / 25 2 / 25 Pipes Die Bash kennt drei Standard-Dateideskriptoren: Standard In (stdin) Standard-Eingabe,

Mehr

Vorlesung Skriptsprachen Duale Hochschule Stuttgart Sommersemester Dipl.-Ing. (FH) Volker Schepper

Vorlesung Skriptsprachen Duale Hochschule Stuttgart Sommersemester Dipl.-Ing. (FH) Volker Schepper Vorlesung Skriptsprachen Duale Hochschule Stuttgart Sommersemester 2017 Dipl.-Ing. (FH) Volker Schepper 1 Kommentar Kommentare sollen/müssen unbedingt verwendet werden. Sinnvolle Kommentare verwenden.

Mehr

Prinzipien der objektorientierten Programmierung (OOP)

Prinzipien der objektorientierten Programmierung (OOP) Die Ziele der OOP sind: - bessere Warbarkeit - Wiederverwendbarkeit 1.) Datenkapselung Prinzipien der objektorientierten Programmierung (OOP) Komplexe Datenstrukturen (wie zb ein Stack) werden vom Anwendungsprogramm

Mehr