C# - PROGRAMME MIT PLUGINS ERWEITERN

Größe: px
Ab Seite anzeigen:

Download "C# - PROGRAMME MIT PLUGINS ERWEITERN"

Transkript

1 C# - PROGRAMME MIT PLUGINS ERWEITERN Schreibt man ein Programm welches erweiterbar sein soll, dann gibt es häufig mehrere Möglichkeiten dies umzusetzen. Die Objektorientierung ist dabei der erste Schritt, da eine Erweiterbarkeit immer mit einer gut umgesetzten Modularisierung und Kapselung anfängt. Hat man eine Basis geschaffen wird sie in ein Programm gegossen und veröffentlicht. Damit ist der erste Schritt getan (vereinfacht gesprochen). Nun kommt der Zeitpunkt, an dem noch Funktionalität hinzugefügt werden soll z.b. Ein Report soll generiert werden, oder ein Diagramm soll angezeigt werden, oder irgend eine Berechnung soll durchgeführt werden. Normalerweise öffnet man nun sein Projekt, schreibt ein paar Klassen und Methoden drückt auf Kompilieren und die neue Version ist fertig. Nachteil bei der ganzen Sache nur der Programmierer, der das Programm geschrieben hat, bzw. den Quelltext hat, kann Funktionalität hinzufügen. Das ist der Punkt an dem Plugins ansetzen. Der Programmierer der eine Software entwickelt stellt eine Schnittstelle bereit um jedem (und sich selbst) zu ermöglichen Funktionen hinzuzufügen, ohne die eigentliche Programmbasis angreifen zu müssen. Darüber hinaus ist es nun möglich, dass der Nutzer nur die Funktionalität bekommt die er auch braucht, ohne lange konfigurieren zu müssen. Das Prinzip von Plugins ist z.b. vom Firefox-Browser gut bekannt bei dem Zusatzfunktionalität über das eigentliche Programm hinaus (jedoch auf ihm basierend) angeboten werden. Um diesen Ansatz in C# für einen selbst nutzbar zu machen gibt es ein einfaches Verfahren welches ich im Folgenden vorstellen möchte. Dabei sei gesagt, dass es sich nicht um eine Muster-Implementation handelt, sondern lediglich um eine Prinzip-Studie. Grundlage für die Erweiterbarkeit durch Plugins ist eine Programm-Basis welche Plugins verwenden kann. Nehmen wir an, wir schreiben ein Programm zur persönlichen Zeiterfassung in dem wir unsere Tätigkeiten mit Datum und Stundenaufwand erfassen können. Dieses Programm soll grundlegend erst einmal die Möglichkeit bieten eine Tätigkeit anzulegen, sie zu bearbeiten (korrigieren) und sie ggf. wieder zu löschen. Die Tätigkeiten sollen in einer Datenbank (z.b. SQLite) abgelegt werden. Nehmen wir an, wir hätten dieses Programm soweit, dass die Programmbasis steht und funktioniert. (siehe Abbildung 1) Nun fällt einem auf, dass die einzelnen Tage nicht sehr gut als zusammenhängender Block zu erkennen sind. An dieser Stelle nun wollen wir ein Plugin verwenden, welches zusammenhängende Tage (dem Datum nach) farblich voneinander abhebt. Wir gehen dabei wie folgt vor: 1. Im Hauptprogramm wird eine Schnittstelle bereitgestellt, welche später von jedem Plugin implementiert werden soll. Schnittstelle aus Punkt 1 implementiert. 2. Es wird neues Projekt für das Plugin erstellt dem eine Referenz auf die Assembly des Hauptprogramms hinzugefügt wird. In diesem Projekt wird nun eine Klasse erstellt, welche die 3. Im Hauptprogramm muss nun noch die Funktionalität implementiert werden, welche die fertige Assembly des Plugins lädt und eine Instanz davon erstellt und bedient.

2 using System; using System.Windows.Forms; using System.Data.SQLite; using System.Data; namespace Zeiterfassung /// <summary> /// Interface welches jedes Plugin implementieren muss /// um von der Zeiterfassung verwendet werden zu können /// </summary> public interface IZeitPlugin void Init(MainForm MainForm, SQLiteConnection Connection); void RefreshView(); void Shutdown(); später ermöglichen möchte, stelle ich entsprechende Informationen bereit. Beginnen wir bei Punkt 1 der Schnittstelle (Listing 1). Generell gibt es viele Möglichkeiten ein Interface für ein Plugin zu gestalten es kommt auf die Möglichkeiten an, welche ein Plugin später bieten können soll. Möchte ich einem Plugin ermöglichen die Oberfläche meine Applikation anzupassen oder zu verändern, langt es ihm die entsprechenden Informationen z.b. das MainForm oder das MainMenu zu übergeben. Möchte ich aber, dass es darüber hinaus noch mehr kann, so muss ich auch das Interface entsprechend gestalten. Je nach Umfang des Eingriffs, den ich den Plugins In unserem Fall habe ich vorgesehen, dass Plugins nicht nur auf die Oberfläche des Programms zugreifen können, sondern auch auf die SQLiteConnection welche im Programm verwendet wird. Mein Interface bietet daher die Methode Init welcher die eben genannten Referenzen übergeben werden. Sie wird aufgerufen, sobald ein Plugin geladen wird. Damit das Plugin wieder aus der Software auskoppelt kann (weil ich das Plugin z.b. abwähle oder die Software schließe gibt es eine Methode Shutdown welche dem Plugin die Möglichkeit gibt, auf diese Ereignisse zu reagieren. (z.b. Menüeinträge die mit Laden des Plugins angelegt wurden wieder auszublenden etc.) Zu Guter Letzt gibt es noch eine Methode RefreshView welche dem Plugin signalisieren soll, dass für die Anzeige relevante Daten aktualisiert werden müssen / sollen. Dieses Interface bildet so den Rahmen für alle Plugins und ich muss mir beim Entwurf im Klaren darüber sein, dass Dinge die hier fehlen später nur schwer hinzugefügt werden könne, da alle Plugins auf dieser Schnittstelle basieren. Ändere ich das Interface sind die Plugins nicht mehr kompatibel, da sie gegen das alte Interface kompiliert wurden und jetzt zuerst das neue implementieren müssen. Es ist also nötig große Vorsicht walten zu lassen und vorausschauend das Interface zu planen. Kommen wir nun zu Punkt 2 der Implementation des Plugin (Listing 2).

3 using System; using Zeiterfassung; using System.Windows.Forms; using System.Data.SQLite; using System.Data; using System.Drawing; namespace PluginBlockColor /// <summary> /// BlockColor. /// </summary> public class BlockColor : IZeitPlugin private MainForm mainform = null; private SQLiteConnection connection = null; public BlockColor() public void Init(MainForm MainForm, System.Data.SQLite.SQLiteConnection Connection) mainform = MainForm; connection = Connection; public void RefreshView() string columnvalue = null; Random rnd = new Random(DateTime.Now.Millisecond); bool bright = true; Color rowcolor = Color.FromArgb(220 + rnd.next(35), rnd.next(35), rnd.next(35)); foreach (DataGridViewRow row in mainform.dgvzeiten.rows) if (columnvalue == null) columnvalue = row.cells["columndatum"].value.tostring(); if (columnvalue!= row.cells["columndatum"].value.tostring()) columnvalue = row.cells["columndatum"].value.tostring(); if (bright) rowcolor = Color.FromArgb(220 + rnd.next(35), rnd.next(35), rnd.next(35)); bright = false; else rowcolor = Color.FromArgb(150 + rnd.next(35), rnd.next(35), rnd.next(35)); bright = true; foreach (DataGridViewCell cell in row.cells) cell.style.backcolor = rowcolor; public void Shutdown()

4 Unser Plugin nennt sich BlockColor und implementiert wie bereits geschildert unser Interface. Dabei werden die Referenzen auf das MainForm und die SQLiteConnection, die an Init übergeben werden, als Felder gespeichert und können anschließend in RefreshView angesprochen werden. Die Funktionsweise des Plugins werde ich nur kurz erläutern: wird RefreshView aufgerufen, so wird das als public deklarierte DataGridView auf dem MainForm durchlaufen und geprüft ob in der Zelle für das Datum, der gleiche Wert steht wie in der vorhergehenden Zeile wenn ja, so wird die gleiche Farbe wie in der vorhergehenden Zelle verwendet, ansonsten eine neue (zufällig erstellte). Was sich ergibt sind zusammenhängende mit der gleichen Farbe gekennzeichnete Blöcke (darum auch BlockColor). Die Methode Shutdown ist nicht implementiert obwohl hier denkbar wäre, dass sie alle Zellen / Zeilen wieder auf einen weißen Hintergrund zurücksetzt. Damit ist unser Plugin eigentlich schon fertig es muss nur noch geladen und angesprochen werden und damit sind wir am Punkt 3 angelangt. Der Lade- / Management-Funktionalität im Hauptprogramm (Listing 3). void LoadPlugins() if (Directory.Exists(pluginsPath)) DirectoryInfo dir = new DirectoryInfo(pluginsPath); FileInfo[] files = dir.getfiles("*.dll"); foreach (FileInfo file in files) Assembly pluginassembly = Assembly.LoadFrom(file.FullName); foreach (Type type in pluginassembly.gettypes()) if (type.getinterface("izeitplugin")!= null) IZeitPlugin plugin = (IZeitPlugin)Activator.CreateInstance(type); plugin.init(this, connection); plugins.add(plugin); IZeitPlugin (unser Plugin-Interface) implementieren. Hier passiert die eigentliche Arbeit: Es wird überprüft ob ein Plugin-Pfad existiert (aus dem die Assemblies für die Plugins geladen werden) Wenn ja werden alle *.dll-dateien aus diesem Verzeichnis der Reihe nach geladen (Assembly.LoadFrom). Aus der jeweiligen Assembly werden alle Typen (also Klassen) geladen der Reihe nach durchgeschaut ob sie ein Interface mit Namen Ist dies der Fall so wird von dem jeweiligen Typ / der jeweiligen Klasse eine Instanz erstellt (Activator.CreateInstance) welche dann über das Interface angesprochen werden kann (Basisklassen- Pointer bzw. Interface-Pointer). Sofort nach dem Erstellen einer Instanz deren Methode Init aufgerufen und die entsprechenden Informationen übergeben. Nun wird das Objekt nur noch in der Liste für geladene Plugins abgelegt und ist nun im Hauptprogramm aktiv. Diese Methode ist in MainForm selbst zu platzieren und natürlich sind die entsprechenden privaten Felder für die Plugin-Liste und den Plugin-Pfad anzulegen und zu konfigurieren. Um anschließend Plugins zu laden, einfach die Methode LoadPlugins im Event-Handler MainFormShown aufrufen. Starten wir so unsere Zeiterfassung sehen wir, dass wir nichts sehen denn die Methode RefreshView wird noch nirgendwo aufgerufen.

5 In meinem Fall habe ich eine Methode RefreshDB welche die Daten aus der Datenbank lädt und anzeigt, wenn Änderungen, Löschungen oder neue Einträge erfolgt sind. In dieser Methode durchlaufe ich einfach die Liste der Plugins und rufe für jedes die Methode RefreshView auf (Listing 4) foreach (IZeitPlugin plugin in plugins) plugin.refreshview(); Wenn jetzt noch die Shutdown -Methode auf die gleiche Weise im Event-Handler MainFormClosing aufruft, dann ist man mit dem Hauptprogramm fertig und kann sich immer neue Plugins ausdenken. Das Ergebnis des eben entworfenen Plugins soll natürlich auch betrachtet werden können: Ich hoffe ich konnte euch das Prinzip und auch die konkrete Implementierung etwas näher bringen. Es handelt sich bei dieser Zeiterfassung nicht um ein esoterisches Beispiel ich habe sie Tatsächlich in Gebrauch. Mittlerweile haben sich noch ein paar Plugins hinzugesellt: PluginSummen: Berechnet die Summe des Stundenaufwandes über alle in der Liste markierten Zeilen (Kontext-Menü-Eintrag) PluginÜberstunden: Zeigt mir für (m)eine Wochenarbeitszeit von 37 Stunden (Mo-Do = 8h, Fr = 5h) an, wie viele Überstunden ich schon gemacht habe. PluginSuchfunktionen: Da sagt der Name eigentlich alles. PluginReports: Erstellt mir verschiedene Reporte, angefangen von der einfachen Übersicht über die Stunden des Monats bis hin zur Tortengrafik über die Zeiten pro Tätigkeit in einem Monat.

6 Ihr könnt das fertige Programm, sowie auch die Solution bei mir hier downloaden. Eine kleine Entschuldigung vorab: das Programm ist ein bisschen Quick&Dirty implementiert, weil es von mir tatsächlich dringend gebraucht wurde. Ich bitte einfach darüber hinweg zu sehen in der Hauptsache geht es um den Plugin- Mechanismus.

VMscope GmbH. Plugins entwickeln für den VM Slide Explorer 2010. Daniel Heim, 17.08.2011 Seite 1/15

VMscope GmbH. Plugins entwickeln für den VM Slide Explorer 2010. Daniel Heim, 17.08.2011 Seite 1/15 Plugins entwickeln für den VM Slide Explorer 2010 Daniel Heim, 17.08.2011 Seite 1/15 Inhaltsverzeichnis 1 Allgemeines... 3 2 Ein Plugin schreiben... 4 3 Ein Plugin registrieren... 11 4 Aktivieren von Plugins...

Mehr

WCF Services in InfoPath 2010 nutzen

WCF Services in InfoPath 2010 nutzen WCF Services in InfoPath 2010 nutzen Abstract Gerade wenn man schreibend von InfoPath aus auf eine SQL-Server Datenbank zugreifen will, kommt man quasi um einen Web Service nicht herum. In diesem Post

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer

Mehr

Einführung in das Microsoft.NET-Framework. Programmiersprache C# MEF Das Managed Extensibility Framework. André Kunz

Einführung in das Microsoft.NET-Framework. Programmiersprache C# MEF Das Managed Extensibility Framework. André Kunz Einführung in das Microsoft.NET-Framework Programmiersprache C# MEF Das Managed Extensibility Framework André Kunz 21.09.2010 1 In dieser Einführung bekommen Sie einen kurzen Einstieg in das.net-framework

Mehr

Folge 18 - Vererbung

Folge 18 - Vererbung Workshop Folge 18 - Vererbung 18.1 Ein einfacher Fall der Vererbung Schritt 1 - Vorbereitungen Besorgen Sie sich - vielleicht aus einer der Übungen der Folge 17 - ein fertiges und lauffähiges Listenprojekt,

Mehr

13 OOP MIT DELPHI. Records und Klassen Ein Vergleich

13 OOP MIT DELPHI. Records und Klassen Ein Vergleich 13 OOP MIT DELPHI Delphi war früher "Object Pascal". Dieser Name impliziert eine Funktionalität, welche in der Welt der Programmierung nicht mehr wegzudenken ist: die objektorientierte Programmierung,

Mehr

Eine Kommando-Oberfläche für.net

Eine Kommando-Oberfläche für.net Institut für Systemsoftware O.Univ.-Prof. Dr. Hanspeter Mössenböck Eine Kommando-Oberfläche für.net In.NET (wie auch in vielen anderen Systemen) haben Programme nur einen einzigen Eintrittspunkt (ihre

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

GetName(), GetName(), GetGeschlecht() und AelterWerden().

GetName(), GetName(), GetGeschlecht() und AelterWerden(). 11. Vererbung Vererbung ist eine der mächtigsten Funktionalitäten der objektorientierten Programmiersprachen. Man versteht unter Vererbung die Tatsache, dass eine Klasse alle Methoden und Variablen einer

Mehr

Wirtschafts-Informatik-Wietzorek Ulmweg 7 73117 Wangen 31.10.2009. Programm zur komfortablen Datenauswertung der JTL-WAWI Betaversion

Wirtschafts-Informatik-Wietzorek Ulmweg 7 73117 Wangen 31.10.2009. Programm zur komfortablen Datenauswertung der JTL-WAWI Betaversion Cubeinfo Programm zur komfortablen Datenauswertung der JTL-WAWI Betaversion Kurzbeschreibung Diese Software ist Freeware und darf weitergegeben werden. Zum Öffen der ZIP- Files benötigen Sie ein Kennwort,

Mehr

Software Engineering Klassendiagramme Einführung

Software Engineering Klassendiagramme Einführung Software Engineering Klassendiagramme Einführung Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Aufgabe Erstellen Sie eine Klasse Person in Java. Jede Person verfügt

Mehr

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung Übersicht 3.1 Modell Konto 3.2 Modell Konto - Erläuterungen 3.3 Benutzer Ein- und Ausgabe mit Dialogfenster I 3.4 Benutzer Ein- und Ausgabe mit Dialogfenster II 3.5 Klassen- und Objekteigenschaften des

Mehr

Ogre Einführung Teil 1

Ogre Einführung Teil 1 Inhalt -Einleitung -Installieren und Einrichten von Ogre -Die erste Anwendung Ogre Einführung Teil 1 Einleitung Eine 3D Engine ist eine sehr komplexe Software und besteht aus mehreren tausend Zeilen Programmcode.

Mehr

Wo bekomme ich die benötigten Dateien?

Wo bekomme ich die benötigten Dateien? Dieser Artikel stammt aus dem Magazin von C++.de (http:magazin.c-plusplus.de) Wie kann man mit Nero und C# eine CD/DVD brennen??? Inhaltsverzeichnis 1. Einleitung 2. Was benötigen wir dazu? 3. Wo bekomme

Mehr

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH Java Einleitung - Handout Kurzbeschreibung: Eine kleine Einführung in die Programmierung mit Java. Dokument: Autor: Michael Spahn Version 1.0 Status: Final Datum: 23.10.2012 Vertraulichkeit: öffentlich

Mehr

Dropbox Verschlüsselung mit TrueCrypt

Dropbox Verschlüsselung mit TrueCrypt 1 von 8 19.04.2013 15:17 Datenbank Dropbox Verschlüsselung mit TrueCrypt http://www.hpier.de/wb» Software» Dropbox Verschlüsselung mit TrueCrypt Daten in der Dropbox Cloud mit TrueCrypt sicher verschlüsseln

Mehr

Schritt 1 - Ein Spielfeld

Schritt 1 - Ein Spielfeld Schritt 1 - Ein Spielfeld Wir beginnen mit zwei einfachen Java-Klassen, dem eigentlichen Spielfeld und dem Applet zum Anzeigen des Spielfeldes (und später der Buttons und der anderen Bedienelemente). Hier

Mehr

Programme deinstallieren,

Programme deinstallieren, Programme deinstallieren, Programme mit Windows deinstallieren: Sie haben Programme auf Ihrem Rechner, die Sie gar nicht oder nicht mehr gebrauchen. Sie sollten solche Programme deinstallieren, denn die

Mehr

Fakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011. Übungen zur Vorlesung Informatik II, Blatt 6

Fakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011. Übungen zur Vorlesung Informatik II, Blatt 6 WS 2011/12 Fakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011 Prof. Dr. Bernhard Bauer Übungen zur Vorlesung Informatik II, Blatt 6 Abgabe: Montag, 05.12.2011, 12.00 Uhr, Informatik

Mehr

Wie halte ich Ordnung auf meiner Festplatte?

Wie halte ich Ordnung auf meiner Festplatte? Wie halte ich Ordnung auf meiner Festplatte? Was hältst du von folgender Ordnung? Du hast zu Hause einen Schrank. Alles was dir im Wege ist, Zeitungen, Briefe, schmutzige Wäsche, Essensreste, Küchenabfälle,

Mehr

Vererbung & Schnittstellen in C#

Vererbung & Schnittstellen in C# Vererbung & Schnittstellen in C# Inhaltsübersicht - Vorüberlegung - Vererbung - Schnittstellenklassen - Zusammenfassung 1 Vorüberlegung Wozu benötigt man Vererbung überhaubt? 1.Um Zeit zu sparen! Verwendung

Mehr

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Objektorientierte Programmierung für Anfänger am Beispiel PHP Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten

Mehr

Probeklausur: Programmierung WS04/05

Probeklausur: Programmierung WS04/05 Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,

Mehr

Druckanpassung von Mahnungen

Druckanpassung von Mahnungen Druckanpassung von Mahnungen Nur wenn Sie die faktura in der Einzelversion nutzen, steht Ihnen für die Druckanpassung der Mahnungen auch der Formularassistent zur Verfügung. Dort können Sie die gewünschten

Mehr

4 Vererbung, Polymorphie

4 Vererbung, Polymorphie 4 Vererbung, Polymorphie Jörn Loviscach Versionsstand: 21. März 2014, 22:57 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html This work

Mehr

Anleitung zur Daten zur Datensicherung und Datenrücksicherung. Datensicherung

Anleitung zur Daten zur Datensicherung und Datenrücksicherung. Datensicherung Anleitung zur Daten zur Datensicherung und Datenrücksicherung Datensicherung Es gibt drei Möglichkeiten der Datensicherung. Zwei davon sind in Ges eingebaut, die dritte ist eine manuelle Möglichkeit. In

Mehr

Einkaufslisten verwalten. Tipps & Tricks

Einkaufslisten verwalten. Tipps & Tricks Tipps & Tricks INHALT SEITE 1.1 Grundlegende Informationen 3 1.2 Einkaufslisten erstellen 4 1.3 Artikel zu einer bestehenden Einkaufsliste hinzufügen 9 1.4 Mit einer Einkaufslisten einkaufen 12 1.4.1 Alle

Mehr

Software Engineering Klassendiagramme Assoziationen

Software Engineering Klassendiagramme Assoziationen Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen

Mehr

Mein erstes Tableau-Dashboard. Tableau Software Schritt für Schritt kennenlernen und ein erstes Dashboard erstellen

Mein erstes Tableau-Dashboard. Tableau Software Schritt für Schritt kennenlernen und ein erstes Dashboard erstellen Tableau Software Schritt für Schritt kennenlernen und ein erstes Dashboard erstellen Vorgehensweise 1) Datenaufbereitung in Microsoft Excel 2) Tableau - Datenimport 3) Erstellung verschiedener Tableau-Arbeitsblätter

Mehr

Delphi DLL Tutorial Wie exportiere ich Komponenten aus einer DLL?

Delphi DLL Tutorial Wie exportiere ich Komponenten aus einer DLL? Delphi DLL Tutorial Wie exportiere ich Komponenten aus einer DLL? Von Padmalcom (20.03.2009) www.jofre.de Nach dem Tutorial 1 von Leonardo M. Ramé 1 Ja, es geht wirklich! Im Internet sind tausende Forenbeinträge

Mehr

Software Engineering II

Software Engineering II Software Engineering II Codegenerierung für den SmartIO Editor mit der Modeling Workflow Engine Wintersemester 10/111 Fachgebiet Software Engineering Albert Zündorf / Wiederholung Bisher im Laufe des Semesters

Mehr

Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9

Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9 Prof. Dr. Wilhelm Schäfer Paderborn, 15. Dezember 2014 Christian Brenner Tristan Wittgen Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9 Aufgabe 1 Codegenerierung

Mehr

5.5.8 Öffentliche und private Eigenschaften

5.5.8 Öffentliche und private Eigenschaften 5.5.8 Öffentliche und private Eigenschaften Schnittstellen vs. Implementierungen: Schnittstelle einer Klasse beschreibt, was eine Klasse leistet und wie sie benutzt werden kann, ohne dass ihre Implementierung

Mehr

So erstellen bzw. ändern Sie schnell und einfach Texte auf der Aktuelles -Seite Ihrer Praxishomepage

So erstellen bzw. ändern Sie schnell und einfach Texte auf der Aktuelles -Seite Ihrer Praxishomepage Anleitung zum Einpflegen von Praxisnachrichten auf LGNW Praxishomepages Stand: 15.September 2013 So erstellen bzw. ändern Sie schnell und einfach Texte auf der Aktuelles -Seite Ihrer Praxishomepage 1.

Mehr

Email-Server: IMAP-Server

Email-Server: IMAP-Server 1 von 5 15.02.2007 13:31 Navigationsleiste Direktzugriff Software Home Email-Server: IMAP-Server Im zweiten Teil des Email-Servers [1] erfährst du wie die Benutzer die Emails von deinem Email-Server abholen.

Mehr

Visual Basic Express erstes Projekt anlegen

Visual Basic Express erstes Projekt anlegen Inhalt Dokument Beschreibung... 1 Erstes Projekt anlegen... 1 Verweise hinzufügen... 2 Imports setzen... 5 Public Class vorbereiten... 6 Mehrere Tools programmieren... 7 Dokument Beschreibung Nach der

Mehr

12 Den Inhalt eines Ordners im fileadmin zum download anbieten (Filelist-Element)

12 Den Inhalt eines Ordners im fileadmin zum download anbieten (Filelist-Element) 12 Den Inhalt eines Ordners im fileadmin zum download anbieten (Filelist-Element) Inhaltsverzeichnis 12 Den Inhalt eines Ordners im fileadmin zum download anbieten (Filelist-Element) 1 12.1 Vorbereitungen......................................

Mehr

RÖK Typo3 Dokumentation

RÖK Typo3 Dokumentation 2012 RÖK Typo3 Dokumentation Redakteur Sparten Eine Hilfe für den Einstieg in Typo3. Innpuls Werbeagentur GmbH 01.01.2012 2 RÖK Typo3 Dokumentation Inhalt 1) Was ist Typo3... 3 2) Typo3 aufrufen und Anmelden...

Mehr

Erstellung von Bibliotheken in CoDeSys V3

Erstellung von Bibliotheken in CoDeSys V3 Dokument Version 2.0 3S - Smart Software Solutions GmbH Seite 1 von 10 INHALT 1 EINFÜHRUNG 3 2 BIBLIOTHEKSKONZEPT IM DETAIL 4 2.1 Kategorien von Bibliotheken 4 2.1.1 System 4 2.1.2 Internal 4 2.1.3 Application

Mehr

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt

Mehr

Wir basteln einen Jahreskalender mit MS Excel.

Wir basteln einen Jahreskalender mit MS Excel. Wir basteln einen Jahreskalender mit MS Excel. In meinen Seminaren werde ich hin und wieder nach einem Excel-Jahreskalender gefragt. Im Internet findet man natürlich eine ganze Reihe mehr oder weniger

Mehr

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Anmeldung http://www.ihredomain.de/wp-admin Dashboard Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Das Dashboard gibt Ihnen eine kurze Übersicht, z.b. Anzahl der Beiträge,

Mehr

1. Software installieren 2. Software starten. Hilfe zum Arbeiten mit der DÖHNERT FOTOBUCH Software

1. Software installieren 2. Software starten. Hilfe zum Arbeiten mit der DÖHNERT FOTOBUCH Software 1. Software installieren 2. Software starten Hilfe zum Arbeiten mit der DÖHNERT FOTOBUCH Software 3. Auswahl 1. Neues Fotobuch erstellen oder 2. ein erstelltes, gespeichertes Fotobuch laden und bearbeiten.

Mehr

Wie kann ich meine Daten importieren? Wie kann ich meine Profile verwalten?

Wie kann ich meine Daten importieren? Wie kann ich meine Profile verwalten? Administration: Wie kann ich meine Daten importieren? Wie kann ich meine Profile verwalten? Wie kann ich von «Einzelgesellschaft» zu «Mehrere Gesellschaften» wechseln? Gebrauch Wie kann ich einen Arbeitnehmer

Mehr

i n g e n i e u r b ü r o f ü r s o f t w a r e t e c h n o l o g i e w w w. v o e l t e r. d e Servlet Debugging

i n g e n i e u r b ü r o f ü r s o f t w a r e t e c h n o l o g i e w w w. v o e l t e r. d e Servlet Debugging Servlet Debugging Markus Völter, voelter@acm.org, www.voelter.de Bei der Arbeit mit Servlets kommt man recht schnell an den Punkt, an dem man Servlets vernünftig testen oder debuggen will. Mit Hilfe des

Mehr

DOKUMENTATION VOGELZUCHT 2015 PLUS

DOKUMENTATION VOGELZUCHT 2015 PLUS DOKUMENTATION VOGELZUCHT 2015 PLUS Vogelzucht2015 App für Geräte mit Android Betriebssystemen Läuft nur in Zusammenhang mit einer Vollversion vogelzucht2015 auf einem PC. Zusammenfassung: a. Mit der APP

Mehr

Handbuch ECDL 2003 Professional Modul 2: Tabellenkalkulation Vorlagen benutzen und ändern

Handbuch ECDL 2003 Professional Modul 2: Tabellenkalkulation Vorlagen benutzen und ändern Handbuch ECDL 2003 Professional Modul 2: Tabellenkalkulation Vorlagen benutzen und ändern Dateiname: ecdl_p2_02_03_documentation.doc Speicherdatum: 08.12.2004 ECDL 2003 Professional Modul 2 Tabellenkalkulation

Mehr

Objektorientierte Programmierung mit C++ Vector und List

Objektorientierte Programmierung mit C++ Vector und List Vector und List Ziel, Inhalt Wir lernen die Klassen vector und list aus der Standard-C++ Library kennen und anwenden. In einer Übung wenden wir diese Klassen an um einen Medienshop (CD s und Bücher) zu

Mehr

SANDBOXIE konfigurieren

SANDBOXIE konfigurieren SANDBOXIE konfigurieren für Webbrowser und E-Mail-Programme Dies ist eine kurze Anleitung für die grundlegenden folgender Programme: Webbrowser: Internet Explorer, Mozilla Firefox und Opera E-Mail-Programme:

Mehr

C# 2000 Expression Beispielcodes für Konsolen- und Formularanwendung

C# 2000 Expression Beispielcodes für Konsolen- und Formularanwendung C# 2000 Expression Beispielcodes für Konsolen- und Formularanwendung 1. "Hai!" [Konsolenanwendung] Console.WriteLine("Hai, wie geht's?"); 2. Muktiplikation mit sich selbst [Konsolenanwendung] // Ausgabe

Mehr

PIWIN 1 Übung Blatt 5

PIWIN 1 Übung Blatt 5 Fakultät für Informatik Wintersemester 2008 André Gronemeier, LS 2, OH 14 Raum 307, andre.gronemeier@cs.uni-dortmund.de PIWIN 1 Übung Blatt 5 Ausgabedatum: 19.12.2008 Übungen: 12.1.2009-22.1.2009 Abgabe:

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java Dateien lesen und schreiben 2 Übersicht der heutigen Inhalte File Streams try-with-resources Properties csv-dateien 3 Klasse File Die Klasse java.io.file bietet Unterstützung im Umgang

Mehr

Hier ist die Anleitung zum Flashen des MTK GPS auf der APM 2.0. Prinzipiell funktioniert es auch auf der APM 2.5 und APM 1.

Hier ist die Anleitung zum Flashen des MTK GPS auf der APM 2.0. Prinzipiell funktioniert es auch auf der APM 2.5 und APM 1. Hier ist die Anleitung zum Flashen des MTK GPS auf der APM 2.0. Prinzipiell funktioniert es auch auf der APM 2.5 und APM 1. Vorweg: Die neue MTK Firmware 1.9 (AXN1.51_2776_3329_384.1151100.5_v19.bin) ist

Mehr

Outlook - CommuniGate Pro Schnittstelle installieren. Outlook - Elemente freigeben. Outlook - Freigegebene Elemente öffnen

Outlook - CommuniGate Pro Schnittstelle installieren. Outlook - Elemente freigeben. Outlook - Freigegebene Elemente öffnen Microsoft Outlook 1 Nutzung der Groupware mit Microsoft Outlook 1.1 Outlook - CommuniGate Pro Schnittstelle installieren 4 1.2 Outlook - Elemente freigeben 11 1.3 Outlook - Freigegebene Elemente öffnen

Mehr

Aufgabe 1. »Programmieren«, WS 2006/2007. Nino Simunic M.A.

Aufgabe 1. »Programmieren«, WS 2006/2007. Nino Simunic M.A. »Programmieren«, WS 006/007 Nino Simunic (nino.simunic@uni-due.de) Übungsblatt 4 Aufgabe 1 OOP In dieser Aufgabe sollen Sie Autos als Klasse Car modellieren. Die Eigenschaften auf attributiver Ebene sind:

Mehr

5.4 Klassen und Objekte

5.4 Klassen und Objekte 5.4 Klassen und Objekte Zusammenfassung: Projekt Figuren und Zeichner Figuren stellt Basisklassen für geometrische Figuren zur Verfügung Zeichner bietet eine übergeordnete Klasse Zeichner, welche die Dienstleistungen

Mehr

Jetzt wird auf die Zahl 2 geklickt und die Höhe der Zeile 2 eingestellt. Die Vorgehensweise ist wie

Jetzt wird auf die Zahl 2 geklickt und die Höhe der Zeile 2 eingestellt. Die Vorgehensweise ist wie Hergestellt nur für den privaten Gebrauch von Harry Wenzel. w Kopieren Vervielfältigen nur mit Genehmigung des Verfassers! apple Mit Excel einen Kalender für das Jahr 2013 erstellen. Vorab erst noch ein

Mehr

Jetzt sollt ihr von der Vorlage der Grundversion 1.0 ein eigenes Textadventure erstellen.

Jetzt sollt ihr von der Vorlage der Grundversion 1.0 ein eigenes Textadventure erstellen. Teil B: Erweiterungen Jetzt sollt ihr von der Vorlage der Grundversion 1.0 ein eigenes Textadventure erstellen. Die folgenden Aufgaben und Ausführungen geben einige Hilfestellungen, welche (mindestens

Mehr

Bedienungsanleitung EasyStechuhr

Bedienungsanleitung EasyStechuhr Thomas Schiffler Langestrasse 4 65366 Geisenheim http://www.thomasschiffler.de info@thomasschiffler.de Version 1.2 Inhaltsverzeichnis Inhaltsverzeichnis... 2 Einleitung... 3 Datenspeicherung... 3 Grundvoraussetzung...

Mehr

Aufgabenblatt Nr. 5 Generizität und TicTacToe

Aufgabenblatt Nr. 5 Generizität und TicTacToe Aufgabenblatt Nr. 5 Generizität und TicTacToe 1 Generische Sortier-Methode 1.1 Aufgabe: Entwickeln einer generischen Sortiermethode für Objekte mit der Schnittstelle Comparable Ihnen ist aus der Vorlesung

Mehr

Inhalt. Max Lini. ax. inie. Einleitung... VII

Inhalt. Max Lini. ax. inie. Einleitung... VII rst Inhalt Einleitung....................................................... VII 1 Schöne neue Welt: Objektorientierte Programmierung in PHP 5.............. 1 Klassen, Interfaces und Objekte...................................

Mehr

Handbuch für die Erweiterbarkeit

Handbuch für die Erweiterbarkeit Handbuch für die Erweiterbarkeit Inhalt Pakete für die Erweiterbarkeit... 2 Actions... 2 Items... 2 Itemset... 2 Die UseCaseNewAction... 3 Eigene Shapes... 4 Der Shape Container... 5 User Objects... 6

Mehr

Installation des edu- sharing Plug- Ins für Moodle

Installation des edu- sharing Plug- Ins für Moodle Installation des edu- sharing Plug- Ins für Moodle [edu-sharing Team] [Dieses Dokument beschreibt die Installation und Konfiguration des edu-sharing Plug-Ins für das LMS Moodle.] edu- sharing / metaventis

Mehr

Anleitung für die Registrierung und das Einstellen von Angeboten

Anleitung für die Registrierung und das Einstellen von Angeboten Anleitung für die Registrierung und das Einstellen von Angeboten Das FRROOTS Logo zeigt Ihnen in den Abbildungen die wichtigsten Tipps und Klicks. 1. Aufrufen der Seite Rufen Sie zunächst in Ihrem Browser

Mehr

Eigene Seiten erstellen

Eigene Seiten erstellen PhPepperShop Anleitung Datum: 3. Oktober 2013 Version: 2.1 Eigene Seiten erstellen Eigene Inhalte / CMS Glarotech GmbH Inhaltsverzeichnis Anleitung zur Erstellung von eigenen Inhalten/Links...3 1. Anmeldung

Mehr

Schulberichtssystem. Inhaltsverzeichnis

Schulberichtssystem. Inhaltsverzeichnis Schulberichtssystem Inhaltsverzeichnis 1. Erfassen der Schüler im SBS...2 2. Erzeugen der Export-Datei im SBS...3 3. Die SBS-Datei ins FuxMedia-Programm einlesen...4 4. Daten von FuxMedia ins SBS übertragen...6

Mehr

Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert

Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert Beamen in EEP Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert Zuerst musst du dir 2 Programme besorgen und zwar: Albert, das

Mehr

Klausur Grundlagen der Programmierung

Klausur Grundlagen der Programmierung Klausur Grundlagen der Programmierung Aufgabenstellung: Martin Schultheiß Erreichte Punktzahl: von 60 Note: Allgemeine Hinweise: Schreiben Sie bitte Ihren Namen auf jedes der Blätter Zugelassene Hilfsmittel

Mehr

SCHNELLEINSTIEG ZUM TOOL NODEBUILDER

SCHNELLEINSTIEG ZUM TOOL NODEBUILDER Fakultät Informatik, Institut für Angewandte Informatik, Professur Technische Informationssysteme SCHNELLEINSTIEG ZUM TOOL NODEBUILDER Betreuer: Dipl.-Ing. A. Cemal Özlük Dipl.-Inf. Uwe Ryssel ALLGEMEINE

Mehr

Übungspaket 19 Programmieren eigener Funktionen

Übungspaket 19 Programmieren eigener Funktionen Übungspaket 19 Programmieren eigener Funktionen Übungsziele: Skript: 1. Implementierung und Kodierung eigener Funktionen 2. Rekapitulation des Stack-Frames 3. Parameterübergabe mittels Stack und Stack-Frame

Mehr

Visual C# 2008 Kochbuch

Visual C# 2008 Kochbuch Walter Doberenz, Thomas Gewinnus Visual C# 2008 Kochbuch ISBN-10: 3-446-41442-8 ISBN-13: 978-3-446-41442-6 Leseprobe Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-41442-6

Mehr

.NET Code schützen. Projekt.NET. Version 1.0

.NET Code schützen. Projekt.NET. Version 1.0 .NET Code schützen Projekt.NET Informationsmaterial zum Schützen des.net Codes Version 1.0 Autor: Status: Ablage: Empfänger: Seiten: D. Hoyer 1 / 6 Verteiler : Dokument1 Seite 1 von 1 Änderungsprotokoll

Mehr

WOT Skinsetter. Nun, erstens, was brauchen Sie für dieses Tool zu arbeiten:

WOT Skinsetter. Nun, erstens, was brauchen Sie für dieses Tool zu arbeiten: WOT Skinsetter WOT Skinsetter steht für World of Tanks skinsetter (WOTS von nun an). Mit diesen Tool können Sie Skins importieren und ändern, wann immer Sie möchten auf einfache Weise. Als World of Tanks

Mehr

In dieser Aufgabe sollen Teile eines kleinen Pong-Spiels analysiert und implementiert werden. Gegeben sei dazu das folgende Szenario:

In dieser Aufgabe sollen Teile eines kleinen Pong-Spiels analysiert und implementiert werden. Gegeben sei dazu das folgende Szenario: IF1-Informatik Eph GK (GA) Bearbeitungszeit: 90 min. Seite 1 Aufgabe 1: Greenfoot mit Kara Ein Pong-Spiel In dieser Aufgabe sollen Teile eines kleinen Pong-Spiels analysiert und implementiert werden. Gegeben

Mehr

Vermittler (Mediator) Sabine Müller - Sven Richter - Jens Wagenbreth 03IN2-P-D

Vermittler (Mediator) Sabine Müller - Sven Richter - Jens Wagenbreth 03IN2-P-D Vermittler (Mediator) Sabine Müller - Sven Richter - Jens Wagenbreth 03IN2-P-D 1 1. EINLEITUNG... 3 2. ZWECK... 3 3. MOTIVATION... 3 4. ANWENDBARKEIT... 6 5. STRUKTUR... 6 6. TEILNEHMER... 7 7. INTERAKTION...

Mehr

Access Grundlagen. David Singh

Access Grundlagen. David Singh Access Grundlagen David Singh Inhalt Access... 2 Access Datenbank erstellen... 2 Tabellenelemente... 2 Tabellen verbinden... 2 Bericht gestalten... 3 Abfragen... 3 Tabellen aktualisieren... 4 Allgemein...

Mehr

FlowFact Alle Versionen

FlowFact Alle Versionen Training FlowFact Alle Versionen Stand: 29.09.2005 Brief schreiben, ablegen, ändern Die FlowFact Word-Einbindung macht es möglich, direkt von FlowFact heraus Dokumente zu erzeugen, die automatisch über

Mehr

Auslesen von SAS Systeminformationen über die aktuelle Log- Ausgabe

Auslesen von SAS Systeminformationen über die aktuelle Log- Ausgabe News Artikel Foren Projekte Links Über Redscope Join List Random Previous Next Startseite Foren Allgemeine Fragen zu SAS Auslesen von SAS Systeminformationen über die aktuelle Log- Ausgabe 4 September,

Mehr

14.4.2016. Technische Hochschule Georg Agricola WORKSHOP TEIL 3. IKT (Informations- und Kommunikationstechnik) an einer MorseApp erklärt

14.4.2016. Technische Hochschule Georg Agricola WORKSHOP TEIL 3. IKT (Informations- und Kommunikationstechnik) an einer MorseApp erklärt 14.4.2016 Technische Hochschule Georg Agricola WORKSHOP TEIL 3 IKT (Informations- und Kommunikationstechnik) an einer MorseApp erklärt Inhaltsverzeichnis 1. Kurzfassung zur Projekterstellung... 2 2. Morse-Tabelle...

Mehr

Einführung in Javadoc

Einführung in Javadoc Einführung in Javadoc Johannes Rinn http://java.sun.com/j2se/javadoc Was ist Javadoc? Javadoc ist ein Werkzeug, dass eine standardisierte Dokumentation für die Programmiersprache Java unterstützt. Vorteil:

Mehr

EBW Systems HANDBUCH Offline Programm

EBW Systems HANDBUCH Offline Programm EBW Systems HANDBUCH Offline Programm Seite 1 von 7 Inhaltsverzeichnis 1. Programmsteuerung 2. Veranstaltungen verwalten 3. Daten absenden 4. Sonstige Hinweise Seite 2 von 7 1. Programmsteuerung Programm

Mehr

Kurzanleitung Drupal. 1. Anmeldung

Kurzanleitung Drupal. 1. Anmeldung Kurzanleitung Drupal 1. Anmeldung Anmeldung erfolgt bis zum Umzug unter http://haut.mjk-design.de/login und nach erfolgreichem Domainumzug unter http://www.haut.net/login mit Benutzername und Passwort.

Mehr

Leseprobe. Jan Tittel. Office 2010 Programmierung mit VSTO und.net 4.0. Word, Excel und Outlook erweitern und anpassen

Leseprobe. Jan Tittel. Office 2010 Programmierung mit VSTO und.net 4.0. Word, Excel und Outlook erweitern und anpassen Leseprobe Jan Tittel Office 2010 Programmierung mit VSTO und.net 4.0 Word, Excel und Outlook erweitern und anpassen Herausgegeben von Holger Schwichtenberg ISBN: 978-3-446-42411-1 Weitere Informationen

Mehr

5.1 Bestehende Projekte bearbeiten 79 5.2 Neue Projekte erstellen 85

5.1 Bestehende Projekte bearbeiten 79 5.2 Neue Projekte erstellen 85 Projekte per DOM bearbeiten KAPITEL 5 5.1 Bestehende Projekte bearbeiten 79 5.2 Neue Projekte erstellen 85 Bisher haben wir uns angesehen, wie List & Label mit Ihren Daten bekannt gemacht werden kann und

Mehr

Betreutes Programmieren Vorlesung Informatik II, Blatt 7 Musterlösung

Betreutes Programmieren Vorlesung Informatik II, Blatt 7 Musterlösung SS 2011 Fakultät für Angewandte Informatik Lehrprofessur für Informatik 15.06.2011 Prof. Dr. Robert Lorenz Betreutes Programmieren Vorlesung Informatik II, Blatt 7 Musterlösung Programmieraufwand für geübte

Mehr

Softwaretechnik (WS 11/12)

Softwaretechnik (WS 11/12) Universität Augsburg, LSt. Softwaretechnik, K. Stenzel, H. Seebach, G. Anders Softwaretechnik (WS 11/12) Lösungsvorschlag 5 Aufgabe 1 (System Behavior: System Sequence Diagrams) (10/5 Punkte) a) Was sind

Mehr

Vorkurs C++ Programmierung

Vorkurs C++ Programmierung Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:

Mehr

Der Kalender im ipad

Der Kalender im ipad Der Kalender im ipad Wir haben im ipad, dem ipod Touch und dem iphone, sowie auf dem PC in der Cloud einen Kalender. Die App ist voreingestellt, man braucht sie nicht laden. So macht es das ipad leicht,

Mehr

DGNB System Software: Unterschiede zwischen Version 1 und Version 2

DGNB System Software: Unterschiede zwischen Version 1 und Version 2 DGNB System Software: Unterschiede zwischen Version 1 und Version 2 1 DGNB GmbH 2015 Inhaltsverzeichnis (1) 1. Aufteilung in Web-Oberfläche und Client 2. Anmeldung in der Web-Oberfläche 3. Installieren

Mehr

Ereignisbehandlung 21

Ereignisbehandlung 21 Ereignisbehandlung 21 3 Ereignisbehandlung Dieses Kapitel beschäftigt sich mit der Ereignisbehandlung, d.h. der Reaktion eines Programms auf Eingaben durch benutzende Personen. Nach einigen ersten Beispielen

Mehr

Handbuch. Anlegen von Vermittlern, Gruppen und Anwendern. 1. Auflage. (Stand: 24.09.2014)

Handbuch. Anlegen von Vermittlern, Gruppen und Anwendern. 1. Auflage. (Stand: 24.09.2014) Handbuch NAFI Online-Spezial Anlegen von Vermittlern, Gruppen und Anwendern 1. Auflage (Stand: 24.09.2014) Copyright 2015 by NAFI GmbH Unerlaubte Vervielfältigungen sind untersagt! Inhaltsangabe Einleitung...

Mehr

Methoden. von Objekten definiert werden, Methoden,, Zugriffsmethoden und Read-Only

Methoden. von Objekten definiert werden, Methoden,, Zugriffsmethoden und Read-Only Methoden Wie Konstruktoren und Destruktoren zum Auf- und Abbau von Objekten definiert werden, Wie inline-methoden Methoden,, Zugriffsmethoden und Read-Only Only- Methoden einzusetzen sind, Der this-pointer

Mehr

Arbeiten mit BlueJ. Objektorientiertes Programmieren in Java mit BlueJ

Arbeiten mit BlueJ. Objektorientiertes Programmieren in Java mit BlueJ Arbeiten mit BlueJ Compilieren, Editieren, Objekte erzeugen, Methoden aufrufen, Objekte inspizieren, vorhandene Klassen benutzen, eigene Klassen und Methoden erstellen In BlueJ geht es einfach BlueJ durch

Mehr

Praktische Übung 'JUnit-Test'

Praktische Übung 'JUnit-Test' Praktische Übung 'JUnit-Test' Starten Sie für die folgende Übung Eclipse und laden Sie das Testprojekt von folgender URL: http://pi.informatik.uni-siegen.de/berlik/swt/currency.zip Darin ist die Klasse

Mehr

Servergespeicherte Profile in Windows Domänen Umgebungen

Servergespeicherte Profile in Windows Domänen Umgebungen Servergespeicherte Profile in Windows Domänen Umgebungen Was sind servergespeicherte Profile? Wer einen Windows Server als Domänencontroller in seinem Netzwerk verwendet, ermöglicht es jedem Benutzer,

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung Ein Computerprogramm besteht aus Funktionen (Programmabschnitten, die etwas tun) und Variablen (Speicherplätzen für Informationen). Werden Funktionen aktiviert, verändern

Mehr

Anleitung für das Content Management System

Anleitung für das Content Management System Homepage der Pfarre Maria Treu Anleitung für das Content Management System Teil 5 Fotogalerien Anlegen neuer Fotoalben Das Anlegen neuer Fotoalben erfolgt in zwei bzw. drei Schritten: Im ersten Schritt

Mehr

Probeklausur: Programmierung WS04/05

Probeklausur: Programmierung WS04/05 Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,

Mehr

Gobales Gedächtnis. AntMe. Sebastian Loers. lb-sys.info. Projekt: AntMe - Globales Gedächtnis (Version 1.0)

Gobales Gedächtnis. AntMe. Sebastian Loers. lb-sys.info. Projekt: AntMe - Globales Gedächtnis (Version 1.0) AntMe Sebastian Loers lb-sys.info Projekt: AntMe - Globales Gedächtnis (Version 1.0) Dokument Version: 1.0 Erstellt am: 15.04.2007 Geändert am: 30.04.2007 Copyright 2007 lb-sys.info. Alle Rechte vorbehalten.

Mehr