SimpleOOP Opensource OOP Plugin



Ähnliche Dokumente
Java: Vererbung. Teil 3: super()

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Visual Basic Express Debugging

Ein + vor dem Ordnernamen zeigt an, dass der Ordner weitere Unterordner enthält. Diese lassen sich mit einem Klick (linke Maustaste) anzeigen.

Über die Internetseite Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt.

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

teischl.com Software Design & Services e.u. office@teischl.com

Hilfe bei Adobe Reader. Internet Explorer 8 und 9

Installation von Microsoft Visual C Express

Qt-Projekte mit Visual Studio 2005

Microsoft Access 2013 Navigationsformular (Musterlösung)

SRH - Kurzinformation

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 22

Datensicherung. Beschreibung der Datensicherung

Step by Step Softwareverteilung unter Novell. von Christian Bartl

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden.

Speichern. Speichern unter

Verschlüsseln von USB-Sticks durch Installation und Einrichtung von TrueCrypt

Installation von NetBeans inkl. Glassfish Anwendungs-Server

Sage Start Einrichten des Kontenplans Anleitung. Ab Version

Installationsanleitung. Update ATOSS SES 2.40 für Windows ATOSS Server

Empfehlungen zur Nutzung der CD zum Buch: Klee & Wiemann: Beweglichkeit und Dehnfähigkeit. Schorndorf: Hofmann,

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

Wie halte ich Ordnung auf meiner Festplatte?

Installation von horizont 4 bei Verwendung mehrerer Datenbanken

Hilfe zur Dokumentenverwaltung

Handbuch ECDL 2003 Basic Modul 3: Textverarbeitung Dokument bearbeiten und speichern

Uhlenbrock USB-LocoNet-Interface Treiber Setup. Windows 2000

Quartalsabrechnung! " " " " " " " Stufe 1! Beheben von Abrechnungsfehlern" Stufe 2! Neue Abrechnung erstellen"

SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen

Gezielt über Folien hinweg springen

Windows 7 Ordner und Dateien in die Taskleiste einfügen

SEPA-Anleitung zum Release 3.09

FastViewer Remote Edition 2.X

Version 0.3. Installation von MinGW und Eclipse CDT

Grundlagen von Python

ICS-Addin. Benutzerhandbuch. Version: 1.0

Sophos Anti-Virus. ITSC Handbuch. Version Datum Status... ( ) In Arbeit ( ) Bereit zum Review (x) Freigegeben ( ) Abgenommen

Verknüpfung zum Angebotsassistenten erstellen

Übung - Datensicherung und Wiederherstellung in Windows 7

1. Loggen Sie sich mit Ihrem Benutzernamen in den Hosting-Manager (Confixx) auf Ihrer entsprechenden AREA ein.

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Erstellen der Barcode-Etiketten:

OUTLOOK-DATEN SICHERN

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Mediator 9 - Lernprogramm

1. Allgemeines. Mit der Vertragsverwaltung können u.a.

TechNote. Produkt: TWINFAX 7.0 (ab CD_24), TWINFAX 6.0 Modul: SMTP, T611, R3 Kurzbeschreibung: Briefpapier- und Mailbodyunterstützung

WordPress. Dokumentation

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Serviceanleitung. Software Update. TRACK-Guide Bewahren Sie diese Serviceanleitung für künftige Verwendung auf.

2. Konfiguration der Adobe Software für die Überprüfung von digitalen Unterschriften

Bauteilattribute als Sachdaten anzeigen

Adobe Reader X Plug-in von Mozilla Firefox verwenden

Dateien mit Hilfe des Dateimanagers vom USB-Stick kopieren und auf der Festplatte speichern

Konvertieren von Settingsdateien

Objektorientierte Programmierung. Kapitel 12: Interfaces

32.4 Anpassen von Menüs und Symbolleisten 795i

Mit einem Doppelclick auf den Ortsnamen erhalten Sie eine Liste mit allen Pulheimer Adressen angezeigt.

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Wissenswertes über LiveUpdate

Lehrer: Einschreibemethoden

Arbeiten mit dem Outlook Add-In

AUTOMATISCHE -ARCHIVIERUNG. 10/07/28 BMD Systemhaus GmbH, Steyr Vervielfältigung bedarf der ausdrücklichen Genehmigung durch BMD!

Programmieren in Java

Anleitung zur Webservice Entwicklung unter Eclipse

Arbeiten mit UMLed und Delphi

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

Kurzanleitung. Toolbox. T_xls_Import

Anleitung zu T-Com Rechnungsprogramm für Excel

Informationen zur Verwendung von Visual Studio und cmake

Adobe Photoshop. Lightroom 5 für Einsteiger Bilder verwalten und entwickeln. Sam Jost

Zählen von Objekten einer bestimmten Klasse

Bilder zum Upload verkleinern

Inhaltserzeichnis. Datenübernahme

Installation OMNIKEY 3121 USB

Installationsanleitung für Magento-Module

4 Vererbung, Polymorphie

Word austricksen FORTSETZUNG. Serienbriefe Für Word XP. Word austricksen Fortsetzung: Serienbriefe. Roland Egli Educational Solutions

MetaQuotes Empfehlungen zum Gebrauch von

Datensicherung und Wiederherstellung

Erstellen eines Screenshot

Starten der Software unter Windows 7

Datenspooler Installationsanleitung Gültig ab Datenspooler-Version X

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Outlook 2000 Thema - Archivierung

Bedienungsanleitung. Stand: Copyright 2011 by GEVITAS GmbH

OSF Integrator für Btracking und Salesforce Anleitung für die Nutzer

Web-Kürzel. Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter

Anleitungen zum Einfügen eines Partnerlinks in Ihre Website

Dokumentation: Balanced Scorecard

Lizenzen auschecken. Was ist zu tun?

Frankieren in Microsoft Word mit dem E Porto Add in der Deutschen Post

Meldung Lokale Anwendung inkompatibel oder Microsoft Silverlight ist nicht aktuell bei Anmeldung an lokal gespeicherter RWE SmartHome Anwendung

Tevalo Handbuch v 1.1 vom

Zur drittletzten Zeile scrollen

Umstellung des Vergütungsverfahrens externer Gutachter beim Versorgungsamt Hamburg

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

Überprüfung der digital signierten E-Rechnung

Transkript:

SimpleOOP Opensource OOP Plugin Einführung SimpleOOP bringt PureBasic eine einfache OOP Unterstützung ohne komplizierten Syntax, mit besonderem Wert auf einen sauberen und simplen Code. SimpleOOP ist Opensource (Siehe License.txt) damit es für zukünftige PB Versionen keine Probleme gibt und man keine Angst haben muss, dass einmal das Plugin nach einem PureBasic update nicht mehr funktioniert. Um SimpleOOP zu installieren, starten Sie einfach den "SimpleOOP Installer.exe". Nach der Installation können Sie sofort losarbeiten, der Installer erledigt alles automatisch. Für den ersten Einstieg lesen Sie sich am besten diese Anleitung durch und schauen Sie sich auch den Examples Ordner an, wo nochmal alle Befehle anhand von Beispielen erklärt werden. mfg Sirhc.ITI

Manuelle Installation PureBasic IDE - im Verzeichnis "PureBasic\Compilers\" die Datei "PBDebugger.exe" in "_PBDebugger.exe" umbenennen und anschließend die beiliegende "PBDebugger.exe" in das Verzeichnis einfügen - die Datei "SimpleOOP.res" in das Verzeichnis "PureBasic\Residents\" kopieren - "SimpleOOP.exe" an eine geeignete Stelle kopieren und dann die nachfolgenden Einträge hierfür in der IDE erstellen Werkzeuge konfigurieren: (SimpleOOP.exe) 1. - Name: SimpleOOP Debug Start - Argumente: DebugStart "%CompileFile" "%CompileFile" "%Path" Format - Ereignis zum Ausl. des W.: Vor dem Kompilieren/Starten 2. - Name: SimpleOOP Debug Stop - Argumente: DebugStop "%CompileFile" "%Executable" "%Path" Format - Ereignis zum Ausl. des W.: Nach dem Kompilieren/Starten - Einstellungen: "Warten bis zum Beenden des Werkzeugs" deaktiviert 3. - Name: SimpleOOP Compile Start - Argumente: CompileStart "%CompileFile" "%CompileFile" "%Path" "" - Ereignis zum Ausl. des W.: Vor dem Erstellen des Executable 4. - Name: SimpleOOP Compile Stop - Argumente: CompileStop "%CompileFile" "" "%Path" "" - Ereignis zum Ausl. des W.: Nach dem Erstellen des Executable - Sie können das Argument "Format" weglassen, wenn Sie den veränderten Quellcode im eigenständigen Debugger sehen wollen - Sie können in den IDE Einstellungen unter "Eigene Schlüsselwörter", "Falten" und "Indentation", die SimpleOOP Schlüsselwörter hinzufügen - Durch gedrückt halten der "Strg" Taste beim Kompilieren, wird der veränderte Quellcode aufgerufen Info

Werkzeuge konfigurieren: (SimpleOOP ClassViewer.exe) 1. - Name: SimpleOOP ClassViewer - Argumente: "%TempFile - Ereignis zum Ausl. des W.: Menü oder Tastenkürzel (Strg + 1) - Einstellungen: "Warten bis zum Beenden des Werkzeugs" deaktiviert 2. - Name: SimpleOOP ClassViewer AutoCompleteOnBackslash - Argumente: AutoCompleteOnBackslash - Ereignis zum Ausl. des W.: Editor-Start - Einstellungen: "Warten bis zum Beenden des Werkzeugs" deaktiviert - Sie können das Werkzeug " SimpleOOP ClassViewer AutoCompleteOnBackslash " weglassen, wenn Sie keinen automatischen Autocomplete aufruf nach dem drücken von "\" haben wollen - Sie können in den IDE Einstellungen unter "Eigene Schlüsselwörter", "Falten" und "Indentation", die SimpleOOP Schlüsselwörter hinzufügen Info

Manuelle Installation japbe IDE - im Verzeichnis "PureBasic\Compilers\" die Datei "PBDebugger.exe" in "_PBDebugger.exe" umbenennen und anschließend die beiliegende "PBDebugger.exe" in das Verzeichnis einfügen - "SimpleOOP.exe" an eine geeignete Stelle kopieren und dann die nachfolgenden Einträge hierfür in der IDE erstellen Werkzeuge konfigurieren: (SimpleOOP.exe) 1. - Name: SimpleOOP Debug Start - Argumente: DebugStart "%CompileFile" "%CompileFile" "%Path" Format - Ereignis zum Ausl. des W.: Vor dem Kompilieren/Starten 2. - Name: SimpleOOP Debug Stop - Argumente: DebugStop "%CompileFile" "%Executable" "%Path" Format - Ereignis zum Ausl. des W.: Nach dem Kompilieren/Starten 3. - Name: SimpleOOP Compile Start - Argumente: CompileStart "%CompileFile" "%CompileFile" "%Path" "" - Ereignis zum Ausl. des W.: Vor dem Erstellen des Executable 4. - Name: SimpleOOP Compile Stop - Argumente: CompileStop "%TempFile" "" "%Path" "" - Ereignis zum Ausl. des W.: Nach dem Erstellen des Executable Werkzeuge konfigurieren: (SimpleOOP ClassViewer.exe) 5. (Werkzeug wird Manuel aus dem Menü Gestartet) - Name: SimpleOOP ClassViewer - Argumente: "%TempFile - Ereignis zum Ausl. des W.: Menü oder Tastenkürzel (Strg + 1) - Einstellungen: "Warten bis zum Beenden des Werkzeugs" deaktiviert - Sie können das Argument "Format" weglassen, wenn Sie den veränderten Quellcode im eigenständigen Debugger sehen wollen - Sie können in den japbe Einstellungen unter "Custom Keywords" und "Indentation/Completion", die SimpleOOP Schlüsselwörter hinzufügen - Durch gedrückt halten der "Strg" Taste beim Kompilieren, wird der veränderte Quellcode aufgerufen Info

ClassViewer Der ClassViewer hat zwei Funktionen. Einmal das Anzeigen aller Klassen im Quellcode inklusive Includes. Und zum anderen bietet er eine Autocomplete Liste um die Klasse des ausgewählten Objects anzuzeigen. Der ClassViewer kann Manuel über die IDE gestartet werden. Er listet alle im Quellcode vorhandenen Klassen inklusive deren Attribute, Methoden etc. auf. Befindet sich der Cursor im Quellcode hinter einem Backslash (z.b. "*Obj\", "Parent\", "This\"), so wird nach dem Aufruf des ClassViewers eine Autocomplete liste angezeigt sofern das Objekt eine Klasse besitzt. Hat man das IDE Tool "SimpleOOP ClassViewer AutoCompleteOnBackslash" aktiviert, so wird nach dem Schreiben eines Backslash automatisch die Autocomplete Liste aufgerufen sofern das Objekt eine Klasse besitzt. Die Autocomplete Liste zeigt immer nur die Methoden/Attribute an, die an der aktuellen aufruf Position sichtbar sind. d.h. Public und Protected Methoden/Attribute werden automatisch ausgeblendet/angezeigt. Dies funktioniert auch mit verschachtelten Objekten (z.b. "This\obj\obj2\"). Bei geöffneter Autocomplete/Class Liste kann man durch Schreiben des Wortes oder "Pfeil Hoch/Runter" auf der Tastatur den Eintrag auswählen und per doppelklick mit der Maus oder Eingabetaste in die IDE an der aktuellen Position einfügen. Befindet man sich mit dem Cursor hinter einem "NewObject.Class", so wird wen vorhanden, nach dem aufrufen das ClassViewers die Init Parameter der Klasse im Quellcode eingefügt. Mit einem Rechtsklick auf eine Methode, Attribut oder Procedure im ClassViewer, kann man zu der jeweiligen Zeile im Quellcode springen. Ein Rechtsklick auf einen Node im ClassViewer Faltet alle anderen Nodes zusammen und expandiert den aktuellen.

Polymorphie In SimpleOOP gibt es die Möglichkeit, Methoden zu überschreiben (Attribute können nicht überschrieben werden). Dabei überschreibt die Kindmethode immer die Elternmethode. Beim überschreiben sollte man darauf achten, dass sowohl Parameter und Rückgabetyp der Methoden gleich sind. Es ist zwar möglich dies nicht zu tun, allerdings kann das zu Problemen führen, wenn z.b. eine Elternklasse eine durch die Kindklasse überschriebene Methode aufrufen will, aber sich deren Parameter geändert haben. Ebenfalls kann nur eine Methode eine Elternmethode überschreiben, wenn sie den gleichen Scopetyp hat, d.h. beide Methoden müssen Public oder Protected sein, eine Protected Methode kann keine Public Methode überschreiben und umgekehrt. - Singleton - Class/ - Abstract - Private/BeginPrivate/EndPrivate - Protect/BeginProtect/EndProtect - Public/BeginPublic/EndPublic - Method/MethodReturn/ - Parent - This - NewObject - FreeObject - _ (Multiline Unterstützung) Schlüsselwörter Attribute Attribute verhalten sich wie Variablen in einer Struktur. Arrays, Maps und Listen werden auch in Klassen unterstützt. Val.l A.q B.f String$ Map Tools() List MyList() Array MyArray(5)

Singleton - macht die Klasse statisch - bei jedem NewObject wird das als erstes instanzierte Objekt zurückgegeben - der Konstruktor Init() wird nur beim ersten NewObject aufgerufen - FreeObject wird ignoriert, der Destruktor Release() wird nicht aufgerufen Singleton Method Test() Class/ - wie Strukturen, unterstützt Extends - Methoden werden direkt in die Klasse geschrieben - Prototypes können direkt in der Klasse stehen - Attributen kann ein fester Startwert zugewiesen werden String$ Val.l = 123 List MyList() Map MyMap() Array NewArray(5) Public Method Test() Prototype.i Proc(Num.d, *Pointer) Abstract - zum Erstellen abstrakter Methoden - Abtrakte Methoden müssen durch Kindmethoden überschrieben werden, andernfalls kann die Klasse nicht instanziert werden String$ Val.l Abstract Test() Public Abstract DoThat(Val.l, String$)

Private/BeginPrivate/EndPrivate - für private Attribute oder Methoden in Klassen - private Attribute oder Methoden können nur von der eigenen Klasse aufgerufen werden - standardmäßig sind alle Objekte einer Klasse privat, dieses Schlüsselwort ist imgrunde nur zur besseren Übersicht String$ ; ist auch Private BeginPrivate Val.l EndPivate Private Method Test() BeginPrivate Method Proc() ; Test EndPrivate Protect/BeginProtect/EndProtect - für geschützte Attribute oder Methoden in Klassen - geschützte Attribute oder Methoden können nur von der eigenen Klasse und deren Kindklassen aufgerufen werden Protect String$ BeginProtect Val.l EndProtect Protect Method Test() BeginProtect Method Proc() ; Test EndProtect

Public/BeginPublic/EndPublic - für öffentliche Attribute oder Methoden in Klassen - öffentliche Attribute oder Methoden können von überall aus aufgerufen werden Public String$ BeginPublic Val.l EndPublic Public Method Test() BeginPublic Method Proc() ; Test EndPublic Method/MethodReturn/ - wie Proceduren - innerhalb kann mit "This" gearbeitet werden - Methoden werden direkt in die Klasse geschrieben Method.s Test() MethodReturn "Hallo" Parent - Zum Aufrufen einer Elternmethode in einer Methode - Beachten Sie: wenn in der Elternmethode weitere Methoden aufgerufen werden, dass deren Parameter, gleich der, in der Kindklasse überschriebene Methoden sein sollten (Siehe Polymorphie) Class Second Extends First Method.s Test() Parent\Test() ; Calls Test() in Class First

This - für den Zugriff auf "sich selbst" in Methoden - alternativ kann auch *This geschrieben werden Method.s Test() Debug This\Val NewObject - zum Erstellen neuer Objekte - unterstützt Objekte, Arrays, Listen, Maps - objekte müssen immer mit "*" beginnen - die Konstruktor Methode "Init()" der Klasse wird automatisch aufgerufen, sofern vorhanden - nach "NewObject" kann man auch Parameter an den Konstruktor "Init()" übergeben - nach "NewObject" muß die zu erzeugende Klasse angegeben werden *Object.MyClass = NewObject.MyClass Dim *Array.MyClass(10) For I=0 To 10 *Array (I) = NewObject.MyClass() Next NewList *Liste.MyClass() AddElement(*Liste()) *Liste () = NewObject.MyClass *Object.MyClass = NewObject.MyClass("String", 123) FreeObject - löscht das Objekt - die Destruktor Methode "Release()" der Klasse wird automatisch aufgerufen, sofern vorhanden - setzt das Objekt automatisch auf 0 - beachten Sie: wenn Sie "This" freigeben, dass das Objekt außerhalb nicht automatisch auf 0 gesetzt wird, da der "This"-Zeiger "byval" übergeben wird *Object = FreeObject *Array(3) = FreeObject This = FreeObject ForEach *Liste() *Liste () = FreeObject DeleteElement(*Liste()) Next

_ (Multiline Unterstützung) - Um einen Befehl auf mehrere Zeilen aufzuteilen - Ein Befehl kann auf so viele Zeilen wie man will aufgeteilt werden - Bei Fehlern auf einer aufgeteilten Zeile, markiert der Debugger immer die erste Zeile OpenWindow(0, 0, 0, 640, 480, _ "PureBasic Window", _ #PB_Window_SystemMenu _ #PB_Window_MinimizeGadget _ #PB_Window_MaximizeGadget _ #PB_Window_ScreenCentered) Repeat Event = WaitWindowEvent() If Event = #PB_Event_CloseWindow End EndIf ForEver