Datenbanken

Als Programmierer ist es unumgänglich, sich mit Datenbanken auseinander zu setzten. So ziemlich jedes CMS basiert auf einer Datenbank und jede App, bei der irgendwelche Daten gespeichert werden, benötigt eine Datenbank. Somit ist es also sehr wichtig damit umgehen zu können.

In der Vorlesung haben wir grundlegende Kenntnisse über den Aufbau und den Einsatz eines relationalen Datenbanksystems erlangt. Dazu gehören die Datenmodellierung, das mathematische Fundament relationaler Systeme in Form der relationen Algebra und die Standard-Zugriffssprache SQL. Die Theoretischen Kenntnisse haben wir in praktischen Übungen umgesetzt und somit den Prozess von der Problemstellung bis zum Umgang mit der „fertigen“ Datenbank geübt.

Schwerpunkte der Vorlesung waren:

  • allgemeiner Aufbau eines Datenbanksystems
  • Modellierung mit dem Entity-Relationship-Modell
  • Umsetzung eines Entity-Relationship-Modells in ein relationales Modell als Grundlage relationaler Datenbanksysteme
  • Relationale Algebra
  • Die Sprache SQL (Definition des Datenbank-Schemas, Datenmanipulationen, Formulierung von Anfragen an den Datenbestand, Integritätssicherung und Transaktionskonzepte)

Computergrafik und Bildverarbeitung

In dem Kurs „Computergrafik und Bildverarbeitung“ haben wir die Grundlagen der bildlich-visuellen Datenverarbeitung anhand konkreter Beispiele aus dem Bereich Umwelt erlernt. Im Schwerpunkt standen folgende Themen:

  • Grundlagen der graphischen Datenverarbeitung
  • Rastergrafik / Vektorgrafik
  • Die Visualisierungspipeline
  • Computergraphik und Multimedia
  • Algorithmen zur Bildbe- und -verarbeitung
  • Medienintegration
  • Einführung in Standardsoftware zur Computervisualistik

Als Leistungsnachweis sollte ein Plakat erstellt werden, welches im DIN-A3 Format und für den Druck fertig aufbereitet ist. Auf dem Plakat sollten 5 von den Übungen, die wir während des Semesters machen mussten, präsentiert werden. Unter anderem befindet sich auf meinem Plakat eine Übung, bei der man aus einem Foto ein Objekt entfernen musste. Dabei kam Photoshop zum Einsatz, welches die nötigen Werkzeuge bietet um diese Aufgabe zu bewältigen.Das Plakat gibt es als PDF (Plakat).

Plakat

3D Modellierung

Ein Semester lang habe ich in dem Kurs 3D-Modellierung verschiedene Techniken, zum Erstellen von Objekten und ganzen Szenen, kennen gelernt. Dabei nutzen wir die Software Cinema 4D, die sehr beliebt und verbreitet ist, um die Grundlagen zu erlernen und unser eigenes Projekt in Form einer komplexen Szene als Leistungsnachweis für den Kurs zu erstellen. Zu den im Kurs behandelten Schwerpunkten gehörten unter anderem:

  • Allgemeine Grundlagen
  • Modellierung unter Nutzung von Grundkörpern, Splinekurven und Generatoren
  • Polygonmodellierung
  • Umgebungen und Beleuchtung
  • Materialien und Shader
  • Rendern

Für mein Projekt setzte ich mir als Ziel, eine kleine Wohnung zu modellieren. Ich plante eine Küche, Wohnbereich, Essbereich und ein Büro zu erstellen. Die Umsetzung kann man sich hier durchlesen  (Dokumentation). Hier die Ergebnisse:

Gesamtansicht: gesamt

Die Küche:Küche

Der Wohnbereich:Wohnzimmer

Das Büro: Büro

AngularJs

AngularJs ist ein Open-Source JavaScript Framework von Google. Es basiert auf dem MVC-Model und bietet ein „Bidirektionales Databinding“, was bedeutet, dass es eine automatische Synchronisation von Daten zwischen Model (Template) und View (Anzeige) gibt.

Mit AngularJs kann man mit wenigen Zeilen Code eine schöne Webanwendung erstellen. Wie z.B. der Blog Bereich auf meiner Website. Die Blogposts werden von einem REST Service meines WordPress Blogs als JSONP Objekt angefordert.

$http({ method: 'JSONP', url: 'http://pierrelaub.de/wordpress/api/get_recent_posts/?callback=JSON_CALLBACK' }).
success(function (data, status, headers, config) {
$scope.posts = data.posts;
}).
error(function (data, status, headers, config) {
});

Das empfangene Objekt beinhaltet alle Posts mit den nötigen Informationen.  Im HTML kann man nun mit dem ng-repeat Befehl von Angular, also so ähnlich wie in einer while-Schleife, alle Post anzeigen lassen. Die Ergebnisse lassen sich ganz leicht durch die Eingabe eines Input Feldes Filtern.

Angular Blog Posts

Dies soll nur eine kleine Demonstration sein, wie einfach Angular ist. Anschauen lohnt sich auf jeden Fall und es macht viel Spaß. http://docs.angularjs.org/tutorial