Für viele ist es selbstverständlich, dass sie mehrere Programme gleichzeitig verwenden können oder dass Programme so komplex sind, dass sie auf mehrere Rechner zugreifen müssen. Aber wie werden solche Anwendungen programmiert? Das Lehrbuch behandelt zwei eng miteinander verknüpfte Basisthemen der Informatik: die Programmierung paralleler (nebenläufiger) und verteilter Anwendungen. Als Programmiersprache wird Java verwendet. Es werden zunächst anhand zahlreicher Beispiele grundlegende Synchronisationskonzepte für die Programmierung paralleler Abläufe präsentiert. Neben den "klassischen" Synchronisationsmechanismen von Java werden auch die Konzepte aus der JavaConcurrency-Klassenbibliothek vorgestellt. Verteilte Anwendungen werden in Form eigenständiger Client-Server-Anwendungen behandelt, wobei die Kommunikation über Sockets oder AMI erfolgt, und in Form webbasierter Client-Server-Anwendungen.
Neu in der 6. Auflage: Cloud Computing, verteilte Anwendungen mit indirekter Kommunikation sowie verschlüsselte Kommunikation über SSL (Secure Socket Layer) bzw. TLS (Transport Layer Security).
Das Lehrbuch wendet sich an Studierende der Informatik und ingenieurwissenschaftlicher Studiengänge mit Grundkenntnissen in Java und Objektorientierung sowie Softwareentwickler:innen.
Aus dem Inhalt
Grundlegende Synchronisationskonzepte in Java
Fortgeschrittene Synchronisationskonzepte in Java
Parallelität und grafische Benutzeroberflächen
Verteilte Anwendungen mit Sockets
Verteilte Anwendungen mit RMI
Verteilte Anwendungen mit indirekter Kommunikation
Die Begriffe Parallelität und Nebenläufigkeit werden nicht überall einheitlich benutzt. Um Missverständnisse zu vermeiden, werden in dieser Leseprobe zunächst Begriffe wie echte Parallelität und Pseudoparallelität sowie Programme, Prozesse und Threads geklärt. Einen ersten Einblick in die Praxis gibt der Auszug aus Kapitel 2, "Grundlegende Synchronisationskonzepte in Java".
Wer hat's geschrieben?
Prof. Dr. Rainer Oechsle ist Professor für Rechnernetze und Verteilte Systeme im Fachbereich Informatik an der Hochschule Trier.
Parallele und verteilte Anwendungen in Java
Einstieg in zwei grundlegende Konzepte der Informatik