Entwickler-Werkzeuge - Marcel Moré • Randnotizen
Transcription
Entwickler-Werkzeuge - Marcel Moré • Randnotizen
Entwickler-Werkzeuge Unentbehrliche Helferlein im Projekteinsatz Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Marcel Moré Jg. 1969 Marcel Moré Entwickler-Werkzeuge • Entwickler Informationsdesigner • Seit 21 Jahren selbständig als Entwickler und Berater • Zahlreiche Datenbankund WEB-Anwendungen für namhafte Kunden im Bereich Dienstleistung und Handel FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Was Sie in den folgenden 90 Minuten erwartet ... Tools, Tools, Tools für jede erdenkliche Lebenslage als Entwickler 1 2 3 Marcel Moré Entwickler-Werkzeuge Best Practices: konkrete Unterstützung im Projektablauf Spezialanwendungen: Script-Analyse & Projekt-Logbuch FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Was ist überhaupt ein Entwickler-Werkzeug? Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Entwickler-Werkzeuge Plugin Uralte Diskussion in der FileMaker-Szene: mit oder ohne Plugins entwickeln... Marcel Moré Entwickler-Werkzeuge ? IDE z.B. Eclipse, Aptana, NetBeans „richtige“ IDEs sind für FileMaker nicht verfügbar FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Entwickler-Werkzeuge ! Ein „Entwickler-Werkzeug“ ist jede Art von Tool oder Service, welches den Entwickler dabei unterstützt, seinen Job zu erledigen. Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Was für Werkzeuge gibt es? Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Arten von Werkzeugen • FileMaker Advanced • • • FileMaker Plugins • • externe Tools Tools für FileMaker Eigenentwicklungen mit FileMaker Websites und Onlineservices Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com FileMaker Advanced Script-Debugger Datenanzeige Marcel Moré Entwickler-Werkzeuge „DDR“ Entwicklungswerkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Plugins Troi CNS 360works 24U qutic MBS ... und viele andere mehr! Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Tools für FileMaker CrossCheck Inspector BaseElements fmXRaySpecs Layout-Analyse Code-Analyse 2empowerFM Developer Assistant Objekt-Suche FmPro Migrator Datenbank-Konverter FMDiff Datei-Forensik ... und viele andere mehr! Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Eigenentwicklungen mit FM Templates Frameworks CustomFunction Sammlung Spezial-Tools Dokumentation Viele sinnvolle Dinge lassen sich direkt in FileMaker lösen! Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Externe Tools Inspiration Outliner, Diagramme Snapz Pro X ScreenShots, ScreenCasts Typinator Text-Snippets Dropbox File-Sharing TeamViewer Desktop-Sharing Parallels Virtualisierung ... und viele andere mehr! Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Websites & Onlineservices Google Hangout draw.io Online Conferencing Online Diagramme filemakerstandards.org Guidelines modularfilemaker.org Funktions Module WWW briandunning.com Custom Functions github.com/petrowsky Code Repository ... und viele andere mehr! Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Ein ganzes Universum... ...an Möglichkeiten! Welche Werkzeuge für welchen Zweck? Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Entwicklungs-Zyklus Bug-Tracking Planung Support ProjektManagement Dokumentation Präsentation Schulung Deployment Marcel Moré Entwickler-Werkzeuge Design Coding Teamarbeit Analyse Debugging FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Entwicklungs-Zyklus Bug-Tracking Planung Support ProjektManagement Dokumentation Präsentation Schulung Deployment Marcel Moré Entwickler-Werkzeuge Design Coding Teamarbeit Analyse Debugging FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Anwendungsbeispiele Best Practices Tipps – ohne Anspruch auf Vollständigkeit – Nennungen von Software-Produkten sind rein subjektiv und dienen ausschließlich zur Illustration von Beispielen Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com IT-Services Stand 2012-03 Planung und Konzept Hardware Anwendung/Service ... Client-Server Protokoll Steuerung Apple Remote Desktop Admin VNC Tracker schreibt Daten Microsoft Remote Desktop Connection liest Daten Remote Admin Daten-Austausch Ablage PDF-Kataloge ... Katalog-Bilder Bilder Update Warenwirtschaft ABC-Auswertung Hitlisten Monatsauswertung Dokumente Shop Lagerbestände PayPal Shop Update iPayment Inspiration Backups Schnittstelle FM9 Schnittstelle FM9 TecDoc FileMaker Pro v6 Mail Browser USA-Shop Bestände MS Office 2004 Retrospect Client ... Anwender FileServer Batch-Scripte Retrospect 6 Server APC Tracker FileMaker Pro 6 Xserve Batch-Scripte Interarchy FTP Client iMagine Photo Mail Dateiarchiv Produktbilder mac mini „Data-Processing“ inspiration.com VM: GLS Gepard Connect Stammdaten VM: DPD DELISprint Stammdaten Modul Masterdaten TecDoc VM: DHL EasyLog Saab EPC Saab EAC FileMaker Pro v6 OmniGraffle FileMaker Runtime v10 MS Office 2004 Browser Parallels Desktop Anwender: Klaus · Stammdaten Master omnigroup.com Wiki, Blog Shop Update Schnittstelle FM6 Schnittstelle FM6 Parallels Server PDF-Kataloge FileMaker Pro 9 Batch-Scripte PHP-Proxy für Shop-Import Aufträge MAMP APC Tracker mac mini „Data-Processing-Shop-2“ Blockdiagramme VM: GLS Gepard Connect VM: TK-Anlage Config FileMaker Runtime v10 MS Office 2004 Datev Pro Server Adobe Suite CS5 Pro Parallels Desktop Datev Pro Client VM: DHL EasyLog OpenDirectory Slave Xserve6 FileMaker Pro v6 Datenablage Backup DATEV Pro FileMaker Server v10 Parallels Server (Reserve) Retrospect 9 Server Ablaufdiagramme Retrospect Server Schemata Datenablage Backup FileMaker Server v5.5 DBdialog Server APC Shutdown FMServe FileServer NAS Paypal visio.microsoft.com Network Managemt. Card iPayment VM: DB Dialog Client Postbank Multiweb USV Elster WEB VR Networld FileMaker Pro v6 Parallels Desktop Browser MS Office 2004 Shop Web-Server Browser MS Office 2004 Shop-System Anwender: Astrid FileMaker Pro v6 Batch-Scripte Mail-Server FTP-Server Mail-Server FTP-Server VPN Port Internet-Router Elster WEB Zoll Office Parallels Desktop DatenbankServer skandix.de Spedition VM: DHL EasyLog Client FileMaker Pro v6 Grob- und Fein-Planung im Outliner TK-Anlage Anwender: Buchhaltung www.draw.io SoftwareUpdateServer Shop-Schnittstelle PDF-Kataloge Google Products ... VM: DPD DELISprint Anwender: Mario · Einbaubilder Master draw.io OpenDirectory Master Xserve5 Einbaubilder Modul Masterdaten FileMaker Pro v6 Visio Shop Lagerbestände Verwendung für VM: VIDA skandix-usa.com DHL EasyLog Client DPD DELISprint Client GLS Gepard Connect Client MS Office 2001 Web-Server FTP-Server Mail-Server GLS DPD Paypal iPayment Web-Server FTP-Server Mail-Server Web-Server FTP-Server Mail-Server eBay amazon skandix.com ferrita.de ich-will-kfz-steuer-sparen.de Anwender: Lager DHL HBCI-Banking Google Adwords Spedition Elster WEB Web-Server Datenbank-Server Batch-Scripte FTP-Server Mail-Server Google Analytics VM: VIDA TecDoc Saab EPC Saab EAC FileMaker Pro v6 Anwender: Einkauf Marcel Moré Entwickler-Werkzeuge MS Office 2004 Google Merchant VIDA DATEV RZ skandix-test.de Browser Parallels Desktop TecDoc Cloud-Dienste Dropbox Internet-Hosting FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Projektmanagement Things culturedcode.com Verwendung für Projektplanung Aufgaben-Erfassung Merlin projectwizards.net TO DO Tracking wiederkehrende Aufgaben Notizen, Ideen MS Project microsoft.com Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Code Repositories Code Collector Pro getcodecollector.com Verwendung für Clip Manager myfmbutler.com Rückgriff auf fertige Code-Objekte FM Code Library Formelsammlung CustomFunctions schubec.com GitHub github.com Tipp: Marcel Moré Entwickler-Werkzeuge http://filemakerstandards.org/ display/dt/Managing+Custom +Functions+via+Git FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Change Requests Ultimate Pen snowmintcs.com Verwendung für Snapz Pro X ambrosiasw.com Dokumentation von Änderungen Skitch ScreenShots von Einstellungen, etc. evernote.com Snagit techsmith.com Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Team-Arbeit · Support Teamviewer teamviewer.com Verwendung für ARD apple.com RDC microsoft.com Gemeinsames Arbeiten Entwicklung auf entfernten Rechnern Anwender-Support Server-Support Screenhero screenhero.com Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Schulungen Jing · Camtasia techsmith.com Verwendung für ScreenFlow telestream.net ScreenCasts Demo Videos Training Videos Screenium syniumsoftware.com Screenr screenr.com Podcast: Marcel Moré Entwickler-Werkzeuge http://filemakertalk.com/media/ 12_fmt076_wendy_king.mp3 FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com kleine Helfer Camouflage briksoftware.com iScreen made-apps.com Verwendung für ablenkungsfreies Arbeiten bessere Produktivität Nocturne blacktree.com Nachtschicht Brightness Control splasm.com Info: Marcel Moré Entwickler-Werkzeuge Computer-Bildschirme stören den ruhigen Schlaf http://www.welt.de/9633133 FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Demo #1 Projekt-Logbuch Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Herausforderungen im Projekt Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com mehrere Entwickler Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com mehrere Projekte Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com langwierige Projekte Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com der ganz alltägliche Wahnsinn... Dokumentation Planung Kommunikation Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Analogie aus der Geschichte Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Seefahrer & Entdecker Anforderungen komplexe Projekte entfernte Ziele lange Dauer oft widrige Umstände Rechtfertigung gegenüber Auftraggeber Logbuch Dokumentation von Ressourcenverwendung Kursbestimmung aktuelle Position Umstände: Wetter, Stimmung besondere Ereignisse Entdeckungen übertragen auf FileMaker-Projekte Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Dokumentation von Projektabschnitten Fertigstellungsgrad von einzelnen Arbeitsschritten konkrete Umsetzung aufgetretene Besonderheiten nächste Schritte TO DO-Tracking BUG-Tracking Projekt-Logbuch im Detail... am Beispiel eines umfangreichen Migrations-Projekts von FM6 nach FM10 Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Übersicht Übersicht Ursprungsdateien Arbeitsabschnitte Fertigstellung pro Datei Übersicht Konsolidierung Hilfslisten Auswahl Arbeitsabschnitte BearbeitungsStatus Scriptnamen Logbuch 1 Eintrag pro Tag Logbuch Notizen zu Besonderheiten Dokumentation der Tagesarbeit was ist als nächstes dran TO DOs Status Klick auf Spalte ruft offene Einträge auf und sortiert nach ABC Klassifizierung: Fehler Postfix Verbesserung Neues Feature Hervorhebung kritischer Einträge TO DOs Alles was nicht in die Beschreibung passt, wird im TO DO-Ordner mit der Nummer des Eintrags abgelegt! Fazit • Grosse Hilfe bei Projekten mit langer Laufzeit, um den Überblick zu behalten • Hilfreich bei Wechsel zwischen Projekten, um den Wiedereinstieg in laufende Abschnitte zu finden • Dokumentation von Besonderheiten hilft Fallstricke zu identifizieren und vermeiden Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Demo #2 Script-Parser Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Herausforderung im Projekt Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Herausforderung • Migration und Konsolidierung einer über 15 Jahre gewachsenen Lösung von FileMaker v6 auf v10 • unzählige Altlasten, die z.T. auf Zeiten von FileMaker v3 zurückgehen müssen erkannt und bereinigt werden • so gut wie keine Dokumentation im Programm-Code vorhanden Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Ein Tool muss her! • CrossCheck als Grundlage für die Analyse der Lösung • Abhängigkeiten zwischen Scripten Modulübergreifend sichtbar machen • • effektive Navigation im „Script-Baum“ kritische Programmier-Techniken erkennen und bereinigen Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Typische Fallstricke im Code • Verwendung von Zwischenablage oder Globalfeldern für Parameter-Übergabe • veraltete Befehle zum ändern von Feldinhalten: „Text einfügen“, „Berechnetes Ergebnis einsetzen“, etc. • Konvertierung ergänzt „Fenster aktivieren“ nach „Gehe zu Bezugsdatensatz“ mit ungewollten Effekten Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Script-Parser im Detail... Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Übersicht wird aufgerufen von... aktuelles Script ruft folgende Subscripte auf... Funktionen Klick auf Eintrag navigiert in die höhere/tiefere Ebene Anzahl der über- und untergeordneten Knoten werden für jeden Eintrag wird aufgerufen angezeigt von... Klick auf CC öffnet Scripteintrag in CrossCheck aktuelles Script Graph erzeugen Klick erzeugt Objektbaum in GraphViz Ausgabe Artikel Extern.fp7 Suchen Aufruf mit Original Nr von Artikel Suchen Detail Suchen Start Volltext Suchen schnell Suchen Start Detailsuche Suchen Suche aufrufen Suchen Felder sichern Suchen schnell mit Original Nr von Artikel Suchen Layout vorbereiten Suchen Suche durchführen OK Suchen Start Schnellsuche Suchen Felder übertragen Schnellsuche Ausgabe mit Scriptschritten f15s39Steps Artikel Extern. Suchen Aufruf mit Original Nr von Artikel Feldwert setzen [ Artikel Extern::Suche neue Suche; '0' ] Feldwert setzen [ Artikel Extern::Suche neue Suche Volltext; '0' ] Script ausführen [ 'Suchen schnell mit Original Nr von Artikel' ] Suchen schnell mit Original Nr von Artikel en schnell Suchen Detail Script ausführen [ 'Suchen Layout vorbereiten' ] hen Layout vorbereiten' ] Script ausführen [ 'Suchen Layout vorbereiten' ] Gehe zu Layout [ 'Suchen' (Artikel Extern) ] hen' (Artikel Extern) ] Gehe zu Layout [ 'Suchen Detail' (Artikel Extern) ] Extern::Eingabe Bestell Nr ] n] Gehe zu Feld [ Artikel Extern::Eingabe Lieferant ] [ Auswählen/Ausführen ] Einfügen [ Artikel Extern::Eingabe Original Nr ] [ Auswahl; Ohne Stil ] Script ausführen [ 'Suchen Start Schnellsuche' ] Alle Scripts abbrechen Suchen Layout vorbereiten Gehe zu Layout [ 'Variablen' (Artikel Extern) ] Wenn [ Artikel Extern::Suche neue Suche='0' ] Löschen [ Artikel Extern::Eingabe Markiert ] [ Auswahl ] Löschen [ Artikel Extern::Eingabe Lieferant ] [ Auswahl ] Löschen [ Artikel Extern::Eingabe Lieferant Nr ] [ Auswahl ] Löschen [ Artikel Extern::Eingabe Bestell Nr ] [ Auswahl ] Löschen [ Artikel Extern::Eingabe Hersteller Nr ] [ Auswahl ] Demo Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com GraphViz Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com GraphViz • Open-Source Tool zur Erzeugung von gerichteten Graphen • • entwickelt von AT&T Labs • aus Eingabe von DOT-Textdatei erzeugt das Tool eine graphische Ausgabe basiert auf einer simplen Auszeichnungssprache „DOT“ Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com start digraph G { ! ! ! ! ! ! ! subgraph cluster_0 { ! style=filled; ! color=lightgrey; ! node [style=filled,color=white]; ! a0 -> a1 -> a2 -> a3; ! label = "process #1"; } ! ! ! ! ! ! ! ! ! ! ! ! ! subgraph cluster_1 { ! node [style=filled]; ! b0 -> b1 -> b2 -> b3; ! label = "process #2"; ! color=blue } start -> a0; start -> b0; a1 -> b3; b2 -> a3; a3 -> a0; a3 -> end; b3 -> end; ! ! } start [shape=Mdiamond]; end [shape=Msquare]; process #1 process #2 a0 b0 a1 b1 a2 b2 a3 b3 end GraphViz • Projekt-Homepage www.graphviz.org • weitere Infos http://de.wikipedia.org/wiki/Graphviz • Binaries für zahlreiche Plattformen als Download erhältlich Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Fazit • Auch für spezifische Entwickler-Probleme lassen sich effektive Lösungen finden • Wenn vorgefertigte Tools nicht ausreichen, einfach mal selbst Hand anlegen • Machmal lohnt es, jenseits der FileMaker-Welt nach Unterstüzung zu suchen Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Bonus Tools-Verzeichnis zum Download über 80 Einträge Auswahl-Filter Kurzbeschreibungen Links zum Hersteller Vortrag zum Download mit Tool-Verzeichnis als FileMaker-Datenbank • www.filemaker-konferenz.com • blog.marcel-more.de @mmore Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com Vielen Dank unseren Sponsoren Danke für das Bewerten dieses Vortrages Marcel Moré Entwickler-Werkzeuge FileMaker Konferenz 2013 Salzburg www.filemaker-konferenz.com