Erfahrungen mit der Entwicklung von Windows-Phone-Apps Phone, Schweiß und Tränen

Größe: px
Ab Seite anzeigen:

Download "Erfahrungen mit der Entwicklung von Windows-Phone-Apps Phone, Schweiß und Tränen"

Transkript

1 Erfahrungen mit der Entwicklung von Windows-Phone-Apps Phone, Schweiß und Tränen Die Möglichkeiten der Windows-Phone-Plattform sind schlichtweg begeisternd, aber damit WP-Apps gut nutzbar sind und ihre Entwicklung kein Zeitfresser wird, gilt es einiges zu beachten und üble Fallen zu umgehen. Auf einen Blick Dipl.-Inf. (FH) Peter Meinl (www.petermeinl.de) ist IT- Berater, Trainer und passionierter Querdenker. Er entwirft und realisiert seit mehr als 25 Jahren datenbankorientierte und verteilte Anwendungen. Sein fachlicher Schwerpunkt ist der Entwurf kundenspezifischer Lösungen für die Fertigungs industrie. Inhalt Hilfreiche Entwicklungswerkzeuge. Mit Traces verstehen, wie eine Phone-App tickt. Beispiel-App: Währungsrechner. Fallen bei der Realisierung von Background Agents. Serie 1. Phone, Schweiß und Tränen 2. Aus App-Gründen ans Licht dnpcode A1209AppErfahrung E in Währungsrechner sollte sie sein, meine erste Windows-Phone-App: Ich wollte ein Gefühl für die Entwicklung von Anwendungen für die neuen Smartphones bekommen. Bei häufigen Fernreisen nutzte ich verschiedenste Währungsrechner wie die Oanda-Website, das Standard-Windows-7-Gadget und Windows-Mobile-Apps. Beim Ausprobieren einiger Windows-Phone-Apps gefiel mir keine wirklich. Mit der Entwicklung eines Währungsrechners kann man viele der häufig in Apps benötigten Features ausprobieren, zum Beispiel die Reaktion auf Nutzereingaben, das Nutzen von Daten aus dem Web, den Offline-Modus, die App/Agent-Synchronisation und die Location Services. Die Entwicklung der Currencies-App [1] hat dann viel mehr Wochenenden gekostet als erwartet. WPF und Silverlight für sich allein sind ja schon extreme Zeitfresser, aber die Entwicklung für Windows Phone setzt noch einen drauf. Diese zweiteilige Artikelserie vermittelt wesentliche Erfahrungen aus der Entwicklung der Currencies-App und stellt anhand einer abgespeckten Beispielanwendung (siehe Code zum Artikel auf der Heft-DVD) einen Rahmen zur effizienten Entwicklung von Windows-Phone- Apps bereit. Die Zukunft der Plattform mag derzeit noch unklar sein (siehe Is Time Running Out for Windows Phone? [2]), aber vieles des hier Gelernten ist auch für WPF und Silverlight im Allgemeinen sowie für Metro-Style-Apps unter Windows 8 nützlich. Übrigens starteten Microsoft und Nokia Ende Mai 2012 ein mit 18 Millionen Euro dotiertes Programm zum Anschieben mobiler Start-ups [3]. Der erste Eindruck zählt Der erste Eindruck, den der Nutzer von einer Phone-App hat, ist entscheidend: Die Darstellung im Marketplace muss attraktiv und übersichtlich sein auf dem Phone und im Web, über Zune gibt es ja seit kurzem keine Apps mehr. Probleme beim Installieren beziehungsweise Updaten oder beim ersten Start dürfen nicht auftreten. Der Nutzer muss so schnell wie möglich etwas Attraktives zu sehen bekommen. Beachtet man einen dieser Punkte nicht, wendet sich der potenzielle Käufer ab oder empfiehlt die App nicht weiter. Deshalb lohnt es sich, diese Punkte von Anfang an bewusst zu gestalten und während der Entwicklung zu überarbeiten und sie nicht erst am Ende der Entwicklung, womöglich gar unter Zeitdruck, anzugehen. Den Eindruck bei der Installation einer Phone- App kann der Entwickler nicht beeinflussen, aber er sollte die Einsatzmöglichkeiten der App auf ein Mindestmaß beschränken. Capabilities wie Location und Phone Identity werden auf dem Marketplace angezeigt. Der Nutzung mancher Services (zum Beispiel Location) muss der Anwender beim Installieren explizit zustimmen. Die aktuell von einer App gemeldeten Capabilities lassen sich mit der Capabilities-Validation des VS Marketplace Test Kit ermitteln. Unnötiges Melden von Capabilities kann durch Entfernen nicht verwendeter DLL-Referenzen vermieden werden. Fälschlicherweise gemeldete Capabilities kann man eventuell bei der App-Übergabe durch eine Notiz an den Test-Ingenieur löschen lassen. Launch- und Resume-Dauer einer App sollten so kurz wie möglich sein. Dies sollte man bei der Entwicklung von Anfang an beachten. Bei der Currencies-App wurden diese Teile erst im Nachhinein optimiert und die Zeiten sind deshalb leider grenzwertig lang. Für eine geeignete Grundhaltung (Mindset) zur Entwicklung von Apps sei das E-Book Getting Real von 37signals empfohlen [4]. Freie Werkzeuge Neben der kostenlosen Version des Standard- Microsoft-Werkzeugsatzes Visual Studio 2010 (VS) mit Expression Blend 4 (Visual Studio 11 Beta 1 unterstützt noch keine Phone-Projekte) haben sich folgende Werkzeuge als hilfreich für die App-Entwicklung erwiesen: Notify Property Weaver [5], Expression Design 4, Windows Phone Power Tools [6], MetroGridHelper Tool [7], Balsamiq Mockups [8], Silverlight for Windows Phone Toolkit [9], Coding4Fun Toolkit for Windows Phone [10], Phoney Tools [11], Templarian Phone Icons [12], VS Windows Phone Performance Analysis Tool,

2 Your Last About Dialog [13], MS Bing Maps SDK [14], Phone7.Fx BindableApplicationBar [15], VS Marketplace Test Kit, Convert.NET C#/VB-Converter [16]. Der Notify Property Weaver erspart das lästige und die Übersichtlichkeit des Codes störende Implementieren von INoti fy PropertyChanged, indem er für alle Klassen, die INotifyPropertyChanged implementieren, den Notification-Code via IL-Injection einfügt. Man installiert das Tool über NuGet. Via Projekt Notify Property Weaver lässt es sich für ein Projekt einschalten und konfigurieren. Ein weiteres interessantes Feature ist die Möglichkeit, Notification Interceptors zu implementieren, zum Beispiel zum Tracen oder um Benachrichtigungen in bestimmten Situationen zu unterdrücken. Der Einsatz von Werkzeugen, die IL-Injection verwenden, ist anfangs etwas beängstigend, aber man gewöhnt sich mit der Zeit daran. Notify Property [Abb. 1] Isolated- Storage-Dateien mit den Windows Phone Power Tools ansehen und manipulieren. Weaver macht einen sehr professionellen Eindruck. Mit Expression Design lassen sich die vier benötigten App-Icon-Größen recht einfach erstellen Unerfahrene können sich dabei an die Anleitung [17] halten. Allerdings sollte man dem Punkt 10 Opacity auf 0 setzen nicht folgen, weil damit das Quadrat, in dem man sein Icon entwirft, nicht mehr sichtbar ist. Nach einer Möglichkeit, einen Layer zu löschen, kann man lange suchen: Es gibt leider keinen Menüpunkt dazu, sondern man muss die [Entf]-Taste auf der Tastatur verwenden. Zum Ändern der Größe, ohne die Proportionen zu verändern, ist die [Shift]-Taste gedrückt zu halten. Mit den Windows Phone Power Tools lassen sich unter anderem die Dateien im Isolated Storage von Emulator und Phone ansehen und manipulieren, siehe Abbildung 1. Das ist hilfreich zum Prüfen von Trace-Dateien und zum Synchronisieren von Dateien zwischen App und Background Agent, sowie beim Testen von Updates. Das Tool MetroGridHelper hilft beim Ausrichten der UI-Controls nach dem 12px-Raster (mehr dazu weiter unten). Im Silverlight for Windows Phone Toolkit finden sich unter anderem das unverzichtbare ListPicker-Control und der LongListSelector. Das Coding4Fun Toolkit for Windows Phone bietet beispielsweise die Controls ToastPrompt, InputPrompt und das ProgressOverlay, womit Sie dem Nutzer mittels durchlaufender Punkte signalisieren können, dass die App gerade etwas für ihn tut. Das VS Windows Phone Performance Analysis Tool hilft beim Lösen von Performance-Problemen. Es hinterlässt recht große Dateien im Unterordner PerformanceLogs des Solution-Verzeichnisses, die Sie löschen können, um Ihre Backups nicht unnötig aufzublähen. Mit dem Bing Maps SDK kann man sich, auf Basis der Geo-Location-Infos, Karteninformationen vom Location Service des Phones holen. Die Currencies-App nutzt das Maps SDK, um aus den Latitude- und Longitude-Angaben des Location Service die Währung am aktuellen Ort zu ermitteln. Mit dem Marketplace Test Kit (zu erreichen mithilfe eines Rechtsklicks auf das Projekt) lässt sich grob prüfen, ob die App den Anforderungen der Zertifizierung durch Microsoft genügt. Kommerzielle Werkzeuge Folgende kommerzielle Produkte könnten hilfreich sein (wurden aber vom Autor noch nicht verwendet): bugsense Bug Tracking [18], Gibraltar App Monitoring [19], Telerik RadControls Controls Suite [20], PreEmptive App Analytics und Monitoring [21], EQATEC App Analytics und Profiling [22]. [Abb. 2] Balsamiq- UI-Skizze neben einem Screenshot der fertigen App

3 Erfahrungen mit der Entwicklung von Windows-Phone-Apps [Abb. 3] Architektur der Beispiel-App. User Experience Bei einer Phone-App steht der Entwurf der User Experience (UX) am Anfang, denn für den Nutzer einer App ist das User Interface (UI) die Anwendung. Bei Geschäftsanwendungen ist es dagegen meist sinnvoller, zuerst die Logik und die Einbettung in die Anwendungslandschaft zu entwerfen. Apps sollten folgende Standard-Features bieten: Application Bar, About Page, Back Tile, Secondary Tiles, Unexpected Error Dialogue, Support Request, Feature Request, Please Rate this App, Help Page, Trial Mode, Buy Full Version, Ads. Microsoft empfiehlt, Tiles einzusetzen, um die Attraktivität zu steigern. Tiles haben erst dann einen Sinn, wenn sich darauf etwas ändert, und dazu kann man Background Agents einsetzen. Zum Skizzieren von UIs eignet sich das Werkzeug Balsamiq Mockups [8]. Es ist handlicher als Expression Blend SketchFlow. So kann man zum Beispiel einfach durch Ziehen eines Objekts mit der Maus bei gedrückter [ALT]-Taste das ausgewählte Objekt klonen. SketchFlow bietet dieses zum schnellen Skizzieren wichtige Feature offenbar nicht und es findet sich nicht einmal ein Undo-Button. Beide Tools verwenden eine skizzenhafte Darstellung mit gekrakelten Linien, damit man sich beim Diskutieren des Entwurfs nicht in Kleinigkeiten verliert. Zwar kann auch Balsamiq seine Skizzen mit Aktionen verbinden (Click-through Prototyping), mit Sketch- Flow kann man die Skizze aber so real machen, wie man möchte, oder gar schrittweise in das Produkt übergehen lassen. Abbildung 2 zeigt die erste UI-Skizze der Currencies-App neben einem Screenshot der veröffentlichten App. Beispiel-App: Währungsrechner Die Beispiel-App namens CurrencyConverterDemo (siehe Code zum Artikel auf der Heft-DVD) implementiert exemplarisch folgende Features: Eingabe des von der App umzurechnenden Betrags, Umrechnung in Zielwährungen, gleichzeitige Anzeige mehrerer Umrechnungen, Holen von aktuellen Umrechnungskursen von der EZB-Website, Offline-Modus, Anzeige einer Umrechnung auf der Back Tile, Background Agent, About Page, Settings Page, Optimierung der Launch Time. Dabei erfolgt das Holen von aktuellen Umrechnungskursen manuell über einen Application-Bar-Button, automatisch über einen Timer in der App und im Hintergrund mittels eines Background-Task. Architektur Abbildung 3 zeigt die Architektur der Beispiel-App. Sie besteht aus der App selbst, die unter anderem das User Interface realisiert, und einem PeriodicTask, der im Hintergrund aktuelle Umrechnungskurse aus dem Web holt. App und Agent kommunizieren über Isolated-Storage-Dateien. Die Zugriffe auf diese Dateien sind mittels Mutexen synchronisiert. Der Background-Task holt periodisch neue Umrechnungskurse von der EZB- Website und speichert den Zeitpunkt der Aktualisierung und die neuen Kurse in Isolated-Storage-Dateien. Die App kommuniziert mit dem Nutzer über eine Page, gibt Meldungen, die bestätigt werden müssen, über MessageBoxes aus, gibt Meldungen, die nach einem Timeout von selbst verschwinden, über Toasts aus, aktualisiert die Back Tile der App, pollt den Agent-Status nach neuen Umrechnungskursen und zeigt automatisch Umrechnungen auf Basis der aktualisierten Kurse an. Implementierung Die Beispiel-App verwendet kein MVVM- Pattern (siehe Kasten Kein MVVM), sondern eine sehr einfache Architektur mit Code-behind und Datenbindung bis ins Modell. Das Verwenden von MVVM beim Entwickeln der Currencies-App führte zu sinnlosen Aufwänden und erschwerte die

4 Für Einsteiger Inkl. kostenlosem E-Book! [Abb. 4] Trace der Beispiel-App. Wiederaufnahme der Entwicklung nach längeren Pausen. Für die Beispiel-App sind Unit-Tests der Views oder des Modells nicht vorgesehen. Die Beispiel-App implementiert ihr Kern- UI, die Seiten Convert und Favourites über eine Pivot-Page. About und Settings sind als eigene Pages realisiert und können vom Nutzer über die ApplicationBar erreicht werden. PivotItems implementiert die Beispiel-App einfach direkt in der ConversionPivotPage. Phone-Pages sind im Allgemeinen so einfach, dass es nicht lohnt, sie in UserControls zu kapseln. Im Unterschied zu PanoramaItems, die beim Laden des Panoramas alle gerendert werden, rendert die Phone-Runtime bei Pivot Items immer nur die benachbarten Items mit. Trotzdem kann man zur Optimierung der Pivot-Performance die Pivot- Items in UserControls kapseln und diese erst im Event LoadingPivotItem dem jeweiligen PivotItem-Content zuweisen. Die Beispiel-App verwendet Your Last About Dialog [13] für die About-Seite, um den Aufwand zu minimieren. Als Programmiersprache wird VB.NET verwendet. Der Autor hatte die erste Version der Currencies-App in C# realisiert, musste aber erneut feststellen, mit Visual Basic deutlich produktiver zu sein, und wechselte wieder zu VB über. Modell und Views Die Beispiel-App verwendet das Modell CurrencyConverter mit datenbindungsfähigen Properties, welche über den Codebehind der Pages zur Verfügung gestellt werden. Der Code-behind dient dabei als DataContext, siehe Abbildung 4. Zentrale Eigenschaft des CurrencyConverter-Modells ist eine List(of Conversions). Der Code-behind der Conversion PivotPage mappt diese auf eine ObservableCollection (of SelectableConversion). Die PivotItems der ConversionPivotPage binden an diese über CollectionViewSources, mit denen sie die SelectableConversions sortieren und filtern. Die TextBox _amountfield ist via Zweiwegebindung (TwoWay) an die Eigenschaft Amount einer Conversion gebunden. Der CurrencyConverter berechnet bei Änderungen am Amount einer Conversion automatisch alle anderen Conver sions neu. Zum Lauschen auf Änderungen am Amount werden die Reactive Extensions [23] verwendet, siehe Listing 1. Dabei wird über Observable.Merge bei der ersten Änderung an einem Amount die Methode ConvertAll mittels eines Lambda-Ausdrucks aufgerufen. Die Reactive Extensions (Rx) sind eine Bibliothek zum Konstruieren von asynchronen und Event-basierten Program- Daniel Koch Magento Schritt für Schritt zum eigenen Online-Shop 320 Seiten; Flexibler Einband; 24,90; erscheint August 2012 ISBN: Mit durchgängigem Beispielprojekt Wie Sie mit Magento Ihren Shop aufbauen und optimieren Mit passenden Lösungen für einen nachhaltigen Erfolg Ihres Shops Jetzt direkt bestellen! Carl Hanser Verlag & Co. KG

5 Erfahrungen mit der Entwicklung von Windows-Phone-Apps Kein MVVM Vom Pattern Model-View-ViewModel (MVVM) verspricht man sich unter anderem folgende Vorteile: Separation of Concerns, lose Kopplung, Unterstützung von Datenbindung, bessere Zusammenarbeit von Designer und Developer, Wiederverwendbarkeit, Clean Code, konsistenten, wartbaren und skalierbaren Code, Unterstützung von Design-Time Data, Möglichkeit automatischer View-Tests, Möglichkeit mehrerer Views über derselben View-Logik. Viele dieser Vorteile resultieren eher aus sauberer Modularisierung im Allgemeinen oder aus dem Streben nach Clean Code. Bei genauerer Betrachtung bleiben von den unterstellten Vorteilen nur zwei übrig: die Möglichkeit automatischer View-Tests und die Unterstützung von Design-Time Data (siehe MVVM Backlash [26]). Bei Lösungen mit dem View-Code im Code-behind, statt in ViewModels, lässt sich dieser nicht automatisch mit Unit-Tests testen die restliche Funktionalität aber schon! Einerseits sind Unit-Tests natürlich immer nice to have, und ohne Unit-Tests wird eigentlich nötiges Refactoring von Code und Architektur meist unterlassen, sobald eine Anwendung produktiv läuft, weil man richtigerweise das Risiko unbedachter Seiteneffekte vermeiden möchte. Andererseits ist für jedes Projekt abzuwägen, ob der zusätzliche Aufwand für Unit-Tests zu rechtfertigen ist. Nach Erfahrung des Autors finden manuelle Tests durch Experten mehr Fehler als Unit-Tests, insbesondere kritische Fehler aus dem Zusammenspiel verschiedener Status und Anwendungsfälle, die Unit-Tests meist nicht aufdecken. Design-Time Data ist beim Gestalten der Benutzeroberfläche sehr hilfreich. Unterstützung von Design-Time Data bezieht sich im Kontext von MVVM darauf, dass die Designer in Visual Studio und Blend Code-behind nicht ausführen und dieser damit nicht als Quelle von Design-Time Data dienen kann. Auf diese Datenquelle kann man aber leicht verzichten, denn es gibt andere und bessere Quellen für Design-Time Data, mehr dazu unter Stolpersteine im kommenden zweiten Teil dieser Serie. Wer das MVVM-Pattern für eine Phone-App einsetzen möchte, dem sei empfohlen, sich auch das Ultra Light MVVM Framework von Jeremy Likness [27] und das von PRISM abgespeckte Calcium SDK [28] von Daniel Vaughan, dem Autor des Buches Windows Phone 7.5 Unleashed [29] anzusehen. Die Frameworks von Jeremy Likness sind insbesondere interessant, weil sie sich pragmatisch auf das Nötige beschränken und Vorhandenes nutzen, zum Beispiel verwendet er das zum Standard-.NET-Framework gehörende Managed Extensibility Framework (MEF) für Dependency Injection und Inversion of Control. Damit Sie vor lauter Framework-Spezifika nicht vergessen, worum es eigentlich geht, können Sie ein bisschen bei Rockford Lhotka zum Thema MVVM und zu Geschäftsobjekten nachlesen. Lhotka verwendet Rich Business Objects, die Geschäfts-, Validierungs- und Autorisierungslogik kapseln und Datenbindung unterstützen, im Unterschied zu sogenannten Anemic Objects. Listing 1 Lauschen auf Änderungen mit den Reactive Extensions (Rx). Observable.Merge(Conversions.Select(Function(c) Observable.FromEvent( Of PropertyChangedEventArgs)(c, "PropertyChanged"))).Where(Function(c) c.eventargs.propertyname = "Amount").Take(1).Subscribe( Sub(c) Dim changedconversion = CType(c.Sender, Conversion) FromCurrencyCode = changedconversion.currencycode FromAmount = changedconversion.amount ConvertAll() End Sub) men mittels ObservableCollections und LINQ-Abfrage-Operatoren. Mit Rx ergeben sich ungeahnte Möglichkeiten. Jedem.NET-Entwickler sei empfohlen, sich Rx einmal in Ruhe anzuschauen. Der Einsatz von Rx in der Beispiel-App mag etwas übertrieben sein der Autor wollte einfach einmal damit spielen und den Leser auf Rx aufmerksam machen. Alternativ zu Rx könnte man einen Eventhandler für alle Conversions registrieren, ein _isconverting-flag verwenden und im Notification Interceptor des PropertyWeaver Änderungen an Amounts während des Berechnens der Umrechnungen ignorieren. Oder man könnte anstelle der Zweiwege-Datenbindung im TextChanged-Event des _amount Field explizit die Umrechnung im CurrencyConverter anstoßen. Aber Vorsicht! Text Changed feuert wegen eines Bugs doppelt. Background Agents Background Agents ermöglichen es, Code auszuführen, während die App nicht läuft aber auch während sie läuft. Agents werden auf den kommenden Geräten mit geringerem Arbeitsspeicher (Low-Memory Devices) nicht unterstützt. Einen Agent erzeugt man am einfachsten, indem man in VS zu einer Solution ein Agent-Projekt hinzufügt und es referenziert. VS sorgt dabei automatisch für die richtigen Einträge in der Datei WMApp Tracing Ein Problem bei der Entwicklung mit Silverlight ist, dass Reihenfolge und Häufigkeit des Auftretens von Ereignissen kaum vorhersehbar sind wohl aber meist erklärbar, wenn auch erst im Nachhinein. Deshalb ist es, besonders am Anfang des Entwickelns, wichtig, zu tracen. Die Currencies-App verwendet Traces sogar für die Fehlerberichte auf dem Phone des Nutzers allerdings mit einem Tracer, der die Größe der Trace- Dateien begrenzt. Die Beispiel-App setzt eine abgespeckte Version dieses Tracers ein. Dabei ergänzt sie automatisch einen Zeitstempel, die Aufrufinformationen sowie die verstrichenen Millisekunden seit dem vorherigen Trace. Zum Ermitteln der Aufrufinformationen verwendet sie den Call Stack. Abbildung 4 zeigt einen Trace der Beispiel-App. Man sieht die Reihenfolge der Aktionen, wie lange sie gedauert haben und dass einige Events mehrfach ausgelöst wurden. Übrigens wird der.net-4.5-compiler endlich Aufrufinformationen wie MemberName und SourceLineNumber als optionale Parameter einschleusen, was eigene Trace-Komponenten einfacher und verbreitete Logger wie NLog und log4net deutlich schneller machen wird. Für gut lesbare Traces und Crash-Reports sollte man auf lange anonyme Methoden und Lambda-Expressions verzichten und stattdessen besser Methoden mit gut verständlichen Namen aufrufen was sich ja im Sinne von Clean Code sowieso empfiehlt

6 [Abb. 5] Zusammenspiel und Datenbindung von View und Modell. [Abb. 6] Trace mit Ressourcenverbrauch des Background-Task. Manifest.xml. Unter VB hat die dabei automatisch erzeugte Klasse Scheduled Agent leider einen Fehler: Der Konstruktor heißt Sub ScheduledAgent(), muss aber Sub New() heißen. Falls man das nicht korrigiert, hat es die fatale Folge, dass der Handler nicht für unbehandelte Ausnahmen registriert wird, was leicht dazu führen kann, dass das Phone OS den Agent deaktiviert, ohne dass der Entwickler dies je bemerkt. Background Agents unterstützen zwei Arten von scheduled Tasks: PeriodicTask und ResourceIntensiveTask. Diese unterliegen einigen Einschränkungen. PeriodicTasks haben folgende Restriktionen: sechs Megabyte Speicher-Limit, API-Einschränkungen, 25 Sekunden maximale Laufzeit. PeriodicTasks dürfen maximal sechs Megabyte Speicher beanspruchen. Deshalb sollten sie ihren Speicherbedarf minimieren. Überschreitet ein Task sein Limit, wird er vom Phone OS beendet und beim zweiten Verstoß gänzlich deaktiviert. Unter dem Debugger sind die Prüfungen des Speicherlimits und der maximalen Laufzeit ausgeschaltet. Die tatsächliche Speichernutzung eines Task kann man über DeviceStatus.ApplicationPeakMemoryUsage abfragen. Aber hier lauert eine schlecht dokumentierte, üble Falle: Unter dem Debugger zählt der Debugger selbst zum Memory Usage des Task. Mit Debugger verbraucht ein leerer Task bereits rund 3,5 Megabyte, ohne Debugger aber nur etwa 1,8 Megabyte. Unter dem Debugger scheint der Speicherbedarf eines Task bei nur einem Webrequest bereits grenzwertig zu sein, in Wahrheit hat man aber genügend Platz. Erschwerend kommt hinzu, dass sich der Speicherbedarf ohne Debugger schlecht ansehen lässt. Die Beispiel-App schreibt dazu eine Trace-Datei in den Isolated Storage. Alternativ kann man via Tile.Update in die Tile schreiben oder einen Toast anzeigen

7 Erfahrungen mit der Entwicklung von Windows-Phone-Apps Das Trace in Abbildung 6 zeigt den Ressourcenverbrauch des PeriodicTask der Beispiel-App (remaining=2,5 KB, elapsed=1074 ms). Viele Entwickler, leider auch der Autor selbst, haben stundenlang unnötigerweise versucht, ein Phantom- Problem zu lösen, weil sie meinten, ihr Task überschreite das Limit. PeriodicTasks dürfen pro Aufruf maximal 25 Sekunden laufen. Das ist eigentlich recht lange, wird aber bei Webaufrufen leicht eng, weil diese einen nicht dokumentierten Default-Timeout von etwa 20 Sekunden zu haben scheinen. Leider muss man einen einstellbaren Timeout selbst implementieren, siehe Webrequests im zweiten Artikel dieser Serie. Die Verwendung einiger APIs ist in Agents nicht erlaubt, darunter sind offensichtliche Funktionen wie Phone.Shell und weniger offensichtliche wie Phone. Scheduler. Ihr Aufruf führt entweder zu Laufzeitfehlern oder zur Ablehnung der App-Zertifizierung. Will man zum Beispiel zur Separation of Concerns auch die Registrierung eines Task via Phone.Sheduler in der Agent-DLL selbst realisieren, führt das zur Ablehnung der Zertifizierung, selbst wenn der Task das API nicht wirklich von sich aus nutzt, sondern nur referenziert. Ob ein Task verbotene APIs referenziert, kann man mit dem Marketplace Test Kit prüfen. Um solche Probleme zu vermeiden und damit der Task möglichst wenige Ressourcen braucht, muss man die Solution-Struktur entsprechend anpassen. Abbildung 7 zeigt die Struktur der Beispiel-App. Zur Veranschaulichung der Referenzhierarchie sind die Projekte nummeriert. Ein häufiger Anfängerfehler beim Codieren von Tasks ist es, NotifyComplete im synchronen Beginn einer Aktion zum Beispiel eines Webrequests aufzurufen statt am Ende der asynchronen Verarbeitung. Da Registrierungen von Tasks nach maximal 14 Tagen verfallen, empfiehlt es sich, diese bei jedem App-Start neu zu registrieren. Beim Registrieren können viele dokumentierte Fehler auftreten, die man explizit ignorieren muss. App/Agent-Synchronisation Falls App und Agent miteinander kommunizieren sollen, ist Vorsicht geboten! Microsofts Empfehlungen hierzu sind sehr strikt: For one-direction communication where the foreground application writes and the agent only reads, we recommend using an isolated storage file with a Mutex.... We recommend that you do not use IsolatedStorageSettings to communicate bet Listing 2 Synchronisation von App/Agent-Zugriffen auf Isolated-Storage- Dateien via Mutex. [Abb. 7] Für Background Agents optimierte Solutions-Struktur. Public Class IsolatedStorageFile Public Shared SerializationFormatter As SerializationFormatter = SerializationFormatter.Binary 'Beware! XmlSerializer cannot serialize TimeSpan 'Public Shared SerializationFormatter As SerializationFormatter = Threading '.SerializationFormatter.DataContract Private Const _timouttopreventblocking As Integer = 5 * 1000 Public Shared Sub WriteSynchronized(filePath As String, filecontent As Object) filepath = SetFileNameExtension(filePath) Dim mutex As New Mutex(False, filepath) Try If mutex.waitone(_timouttopreventblocking) Then Using isofile = IO.IsolatedStorage.IsolatedStorageFile.GetUserStoreForApplication(), isostream = isofile.openfile(filepath, FileMode.Create) Select Case SerializationFormatter Case SerializationFormatter.Binary SilverlightSerializer.Serialize(fileContent, isostream) Case SerializationFormatter.XML Dim serializer = New XmlSerializer(fileContent.GetType) serializer.serialize(isostream, filecontent) Case SerializationFormatter.DataContract Dim serializer = New DataContractSerializer(fileContent.GetType) serializer.writeobject(isostream, filecontent) End Select End Using Else 'This should never happen. The phone runtime even releases mutexes for aborted 'processes. But better safe than sorry! Dim ex As New ThreadStateException("Unable to acquire mutex for app/agent sync") Trace.Error(ex.Message) Throw ex End If Finally mutex.releasemutex() End Try End Sub Public Shared Function ReadSynchronized(Of contenttype)(filepath As String) As contenttype... End Function End Class

8 Unternehmensanwendungen Wie steht es eigentlich um Windows-Phone-Apps für Line-of-Business- Anwendungen (LOB)? Da Windows Phone stark auf Konsumenten ausgerichtet wurde, geriet der Aspekt der Nutzung in Unternehmen etwas in den Hintergrund der allgemeinen Aufmerksamkeit. Bezüglich Windows Phones in Unternehmen gilt es unter anderem die folgenden Punkte zu betrachten: Integration in die Standard-Office-Anwendungen, Business-Features der Phone-Hardware, Mobile Device Management, App-Verteilung. Windows-Phone-Geräte bieten eine gute Office-Suite mit Word, Excel, PowerPoint und insbesondere OneNote (siehe Microsofts Anti-BlackBerry- Werbevideo [30]). Die Integration mit Exchange und SharePoint funktioniert. Profithemen wie Mobile Device Management, VPN-Access et cetera überschreiten den Rahmen dieses Artikels. Wie sich die Integration von Windows 8 in Windows Phone [31] auf diese Themen auswirken wird, bleibt abzuwarten. Es könnte sein, dass Windows Phone gemeinsam mit Mobilgeräten anderer Plattformen wie ios und Android unter der Überschrift Bring your own Device behandelt wird. Es gibt Gerüchte zu Windows Phones mit Unternehmens-Features wie Keyboards à la BlackBerry. Für das Phone lässt sich prinzipiell jede LOB-App realisieren, die man sich nur vorstellen kann. Das Ausrollen von Unternehmensanwendungen erfolgt über den Marketplace mittels Targeted Distribution. Unternehmensspezifische App-Repositorien oder andere Wege, Apps auf die Phones eines Unternehmens zu bringen, gibt es derzeit nicht. Bei der Targeted Distribution durchlaufen Apps den üblichen MS-Zertifizierungsprozess, werden aber nicht auf dem Marketplace veröffentlicht. Die Nutzer können die Apps nur über Deep Links installieren, welche nur vom Phone aus verwendet werden können. Diese Links kann der Ersteller der App den Nutzern zum Beispiel via schicken. Apps müssen sich selbst vor unbefugter Nutzung schützen, weil jeder sie installieren kann, der ihren Deep Link kennt. ween processes because it is possible for the data to become corrupt. [24] In der Beispiel-App kommunizieren App und Agent über Isolated-Storage- Dateien: Die App konfiguriert den Agent über die Datei AgentSettings.bin. App und Agent speichern die aktuellen Umrechnungskurse in der Datei WebConversions. bin und den Zeitpunkt der Ermittlung in AgentState.bin. Die App pollt AgentState. bin, um neue Kurse zu entdecken. Ein Long Polling der App auf einen vom Agent blockierten Mutex lässt sich leider nicht implementieren, weil der Agent nur während seiner zyklischen Aufrufe lebt. Zur Synchronisation des Zugriffs auf die Dateien werden Mutexe verwendet, siehe Listing 2 und Abbildung 3. Für die Optimierung der Zugriffe auf die Dateien und des Speicherbedarfs wird statt des Standard-XML-Serializers der binäre Silverlight Serializer von Mike Talbot verwendet [25]. Außer zum Debuggen gibt es keinen Grund, das aufgeblähte XML- Format im Isolated Storage zu verwenden, nur weil es vom Menschen lesbar ist. Bei den recht kleinen Dateien der Beispiel- App unterscheiden sich die Schreib- und Lesezeiten zwischen XML- und Binär- Daten kaum, aber der Speicherbedarf ist binär deutlich kleiner: Für 90 Umrechnungskurse werden mit XML 14 Kilobyte belegt, binär lediglich ein Kilobyte. Fazit Alles in allem war die Entwicklung für das Windows Phone eher frustrierend: Alles dauerte viel länger als erwartet, trotz fundierter Erfahrung in.net und Grundwissen in WPF. Oft fühlte es sich eher an wie Rätselraten statt wie Geradeausprogrammieren. Aber dennoch bleibt als Resümee: Das Windows Phone OS ist super, die Entwicklungsumgebung sehr mächtig, und was.net und Silverlight auf so einem kleinen Gerät ermöglichen, ist schlichtweg begeisternd. Machen Sie doch mal einen Versuch! Im zweiten Teil dieser Artikelserie geht es weiter mit schnellem App-Start und App-Resume, asynchronen (Web-)Aufrufen, guter Fehlerbehandlung, vielen Stolpersteinen und dem Veröffentlichen von Windows-Phone-Apps. [bl] [1] Peter Meinl, Currencies App, [2] Paul Thurrott, Is Time Running Out for Windows Phone?, SL1209AppErfahrung2 [3] Aalto App Campus, [4] 37signals, Getting Real, [5] Simon Cropp, Notify Property Weaver, [6] CodePlex, Windows Phone Power Tools, [7] Jeff Wilcox, MetroGridHelper, [8] Balsamiq Mockups, UI Sketching Tool, [9] Silverlight for Windows Phone Toolkit, [10] Coding4Fun Toolkit for Windows Phone, [11] Phoney Tools, [12] Templarian, Icons, SL1209AppErfahrung6 [13] Peter Kuhn, Your Last About Dialog, [14] Microsoft, Bing Maps SDK, [15] Phone7.Fx BindableApplicationBar, [16] C#/VB Converter, [17] Microsoft, Creating Windows Phone 7 Application and Marketplace Icons, [18] bugsense, Bug Tracking, [19] Gibraltar, Monitoring, [20] Telerik, RadControls for Windows Phone, [21] PreEmptive, Analytics für App Analytics und Monitoring, [22] EQATEC, Analytics für App Profiling, [23] Microsoft, Reactive Extensions (Rx), [24] MSDN, Background Agent Best Practices for Windows Phone, SL1209AppErfahrung12 [25] Mike Talbot, Binary Silverlight Serializer, [26] Ward Bell, MVVM Backlash, [27] Jeremy Likness, Ultra Light MVVM for Windows Phone 7, [28] Daniel Vaughn, Calcium SDK, [29] D. Vaughn, Windows Phone 7.5 Unleashed, [30] Microsoft, How to use Windows Phone to do business on the road, SL1209AppErfahrung14 [31] techradar, Windows Phone 8: what you need to know, SL1209AppErfahrung

Das etwas andere Smartphone

Das etwas andere Smartphone Das etwas andere Smartphone Frank Prengel Technical Evangelist Microsoft Deutschland GmbH http://blogs.msdn.com/windowsphone 01./02. Dezember 2010 Köln www.iphonedevcon.de Microsoft? Auf der iphone DevCon??

Mehr

MSDN Webcast: Team Foundation Server Mehr als nur eine Versionsverwaltung! Visual Studio Team System (Teil 1 von 10) Veröffentlicht: 20.

MSDN Webcast: Team Foundation Server Mehr als nur eine Versionsverwaltung! Visual Studio Team System (Teil 1 von 10) Veröffentlicht: 20. MSDN Webcast: Team Foundation Server Mehr als nur eine Versionsverwaltung! Visual Studio Team System (Teil 1 von 10) Veröffentlicht: 20. Februar 2008 Presenter: Neno Loje, MVP für Team System www.teamsystempro.de

Mehr

KURZANLEITUNG. Firmware-Upgrade: Wie geht das eigentlich?

KURZANLEITUNG. Firmware-Upgrade: Wie geht das eigentlich? KURZANLEITUNG Firmware-Upgrade: Wie geht das eigentlich? Die Firmware ist eine Software, die auf der IP-Kamera installiert ist und alle Funktionen des Gerätes steuert. Nach dem Firmware-Update stehen Ihnen

Mehr

UM ALLE DATEN ZU KOPIEREN. ZUNÄCHST die Daten des alten Telefons auf einen Computer kopieren

UM ALLE DATEN ZU KOPIEREN. ZUNÄCHST die Daten des alten Telefons auf einen Computer kopieren LUMIA mit WP8 IPHONE Daten des alten Telefons auf einen Computer kopieren Software von welcomehome.to/nokia auf Ihrem PC oder Mac. verbinden Sie Ihr altes Telefon über 3. Wenn Sie Outlook nutzen, öffnen

Mehr

Mobile Backend in der

Mobile Backend in der Mobile Backend in der Cloud Azure Mobile Services / Websites / Active Directory / Kontext Auth Back-Office Mobile Users Push Data Website DevOps Social Networks Logic Others TFS online Windows Azure Mobile

Mehr

Integration in die Office-Plattform. machen eigene Erweiterungen Sinn?

Integration in die Office-Plattform. machen eigene Erweiterungen Sinn? Integration in die Office-Plattform machen eigene Erweiterungen Sinn? Agenda Apps Warum eigentlich? Apps für Office Apps für SharePoint Entwicklungsumgebungen Bereitstellung Apps Warum eigentlich? Bisher

Mehr

Zend Server Cluster Manager

Zend Server Cluster Manager Zend Server Cluster Manager Jan Burkl Zend Technologies Wer bin ich? Jan Burkl jan.burkl@zend.com PHP Entwickler seit 2001 Projektarbeit Bei Zend seit 2006 System Engineer Zend Certified Engineer PHP 5

Mehr

Deutschland 8,50 Österreich 9,80 Schweiz 16,80 sfr. www.dotnet-magazin.de 7.2011. Outlook-Kalender in WPF

Deutschland 8,50 Österreich 9,80 Schweiz 16,80 sfr. www.dotnet-magazin.de 7.2011. Outlook-Kalender in WPF z.net MAGAZIN dot Alle Beispiele und Quellcodes zu den Artikeln dieser Ausgabe Bonus-Video von der BASTA! Spring 2011 Architektur für die Cloud Testversionen TeamPulse Ranorex Automation Framework dotpeek

Mehr

Von 0 zur Private Cloud in 1h

Von 0 zur Private Cloud in 1h Von 0 zur Private Cloud in 1h - oder wie baue ich mir eine Demoumgebung Bernhard Frank Technical Evangelist Microsoft Deutschland GmbH Carsten Rachfahl MVP Virtual Machine Rachfahl IT Solutions Wieviele

Mehr

Mobile Backend in. Cloud. Azure Mobile Services / Websites / Active Directory /

Mobile Backend in. Cloud. Azure Mobile Services / Websites / Active Directory / Mobile Backend in Cloud Azure Mobile Services / Websites / Active Directory / Einführung Wachstum / Marktanalyse Quelle: Gartner 2012 2500 Mobile Internet Benutzer Desktop Internet Benutzer Internet Benutzer

Mehr

Silverlight for Windows Embedded. Martin Straumann / 31.08.2010 Stv. Business Unit Leiter Microsoft Technologien / Application developer

Silverlight for Windows Embedded. Martin Straumann / 31.08.2010 Stv. Business Unit Leiter Microsoft Technologien / Application developer Silverlight for Windows Embedded Martin Straumann / 31.08.2010 Stv. Business Unit Leiter Microsoft Technologien / Application developer Inhaltsverzeichnis Windows Embedded Microsoft Roadmap Was ist Silverlight

Mehr

Jörg Neumann Acando GmbH

Jörg Neumann Acando GmbH Jörg Neumann Acando GmbH Jörg Neumann Principal Consultant bei der Acando GmbH MVP Windows Platform Development Beratung, Training, Coaching Buchautor, Speaker Mail: Joerg.Neumann@Acando.com Blog: www.headwriteline.blogspot.com

Mehr

Zabbix 2.4. What's new? What's new in Zabbix 2.4. 1 of

Zabbix 2.4. What's new? What's new in Zabbix 2.4. 1 of Zabbix 2.4 What's new? 1 of What's new in Zabbix 2.4 About me Name: Pascal Schmiel Email: Schmiel@dv-loesungen.de WEB: www.dv-loesungen.de Senior Consultant Zabbix Certified Professional 2 of What's new

Mehr

Die SharePoint-Welt für den erfahrenen.net-entwickler. Fabian Moritz MVP Office SharePoint Server ITaCS GmbH

Die SharePoint-Welt für den erfahrenen.net-entwickler. Fabian Moritz MVP Office SharePoint Server ITaCS GmbH Die SharePoint-Welt für den erfahrenen.net-entwickler Fabian Moritz MVP Office SharePoint Server ITaCS GmbH SharePoint Object Model IFilter Webpart Connections Webparts Web Server Controls Custom Field

Mehr

Smartphone Entwicklung mit Android und Java

Smartphone Entwicklung mit Android und Java Smartphone Entwicklung mit Android und Java predic8 GmbH Moltkestr. 40 53173 Bonn Tel: (0228)5552576-0 www.predic8.de info@predic8.de Was ist Android Offene Plattform für mobile Geräte Software Kompletter

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

CROSS PLATFORM DEVELOPMENT MIT PORTABLE CLASS LIBRARIES

CROSS PLATFORM DEVELOPMENT MIT PORTABLE CLASS LIBRARIES Entwicklung Autor: Sebastian Kugler CROSS PLATFORM DEVELOPMENT MIT PORTABLE CLASS LIBRARIES ZUSAMMENFASSUNG TREND APPLIKATIONEN AUF MEHRERE PLATT FORMEN ZU VERFÜGUNG ZU STELLEN CODE REUSABILTY PORTABLE

Mehr

Webdeployment 2.0 Webanwendungen komfortabel bereitstellen, aus Hoster und Kundensicht.

Webdeployment 2.0 Webanwendungen komfortabel bereitstellen, aus Hoster und Kundensicht. Webdeployment 2.0 Webanwendungen komfortabel bereitstellen, aus Hoster und Kundensicht. Bernhard Frank Web Platform Architect Evangelist bfrank@microsoft.com Was braucht es zu einem Webserver? Webserver

Mehr

BLK-2000. Quick Installation Guide. English. Deutsch

BLK-2000. Quick Installation Guide. English. Deutsch BLK-2000 Quick Installation Guide English Deutsch This guide covers only the most common situations. All detail information is described in the user s manual. English BLK-2000 Quick Installation Guide

Mehr

Die Schweizer sind Weltmeister...

Die Schweizer sind Weltmeister... Nefos GmBH 07.03.2013 Die Schweizer sind Weltmeister... 2 ...im App-Download! Jeder Schweizer hat im Schnitt 19 kostenpflichtige Apps auf seinem Smartphone! 3 Top Mobile Trends In two years, 20% of sales

Mehr

Die nächste Revolution in der modelgetriebenen Entwicklung?

Die nächste Revolution in der modelgetriebenen Entwicklung? Die nächste Revolution in der modelgetriebenen Entwicklung? Me Johannes Kleiber Software Engineer bei FMC Johannes.Kleiber@fmc-ag.com Themen Überblick Window Workflow Foundation Workflows modellieren WF

Mehr

ZenQuery - Enterprise Backend as a Service Single Page Applications mit AngularJS und Spring MVC. - Björn Wilmsmann -

ZenQuery - Enterprise Backend as a Service Single Page Applications mit AngularJS und Spring MVC. - Björn Wilmsmann - ZenQuery - Enterprise Backend as a Service Single Page Applications mit AngularJS und Spring MVC - Björn Wilmsmann - ZenQuery Enterprise Backend as a Service Unternehmen horten Daten in Silos ZenQuery

Mehr

Mit Cloud Power werden Sie zum

Mit Cloud Power werden Sie zum Mit Cloud Power werden Sie zum Herzlich Willkommen! Christian Hassa Managing Partner TechTalk Software AG Agenda Mobile App Development mit Xamarin Pause Azure Mobile Services Q&A 9h00-10h30 10h30-10h50

Mehr

Einsatz einer Dokumentenverwaltungslösung zur Optimierung der unternehmensübergreifenden Kommunikation

Einsatz einer Dokumentenverwaltungslösung zur Optimierung der unternehmensübergreifenden Kommunikation Einsatz einer Dokumentenverwaltungslösung zur Optimierung der unternehmensübergreifenden Kommunikation Eine Betrachtung im Kontext der Ausgliederung von Chrysler Daniel Rheinbay Abstract Betriebliche Informationssysteme

Mehr

Einrichtung des NVS Calender-Google-Sync-Servers. Installation des NVS Calender-Google-Sync Servers (Bei Neuinstallation)

Einrichtung des NVS Calender-Google-Sync-Servers. Installation des NVS Calender-Google-Sync Servers (Bei Neuinstallation) Einrichtung des NVS Calender-Google-Sync-Servers Folgende Aktionen werden in dieser Dokumentation beschrieben und sind zur Installation und Konfiguration des NVS Calender-Google-Sync-Servers notwendig.

Mehr

Universal-Apps. Gordon Breuer Senior IT Consultant Software Engineer / Architect msg systems ag. activevb Workshop 2014 30.

Universal-Apps. Gordon Breuer Senior IT Consultant Software Engineer / Architect msg systems ag. activevb Workshop 2014 30. Universal-Apps activevb Workshop 2014 30. August 2014 Auszug aus dem Buch: Windows Phone 8.1 Kochbuch Erscheinungsdatum: Q4/2014 Autoren: Matthias Fischer, Gordon Breuer Gordon Breuer Senior IT Consultant

Mehr

Cross Platform Development Heute Windows, morgen Android, übermorgen Xbox

Cross Platform Development Heute Windows, morgen Android, übermorgen Xbox Cross Platform Development Heute Windows, morgen Android, übermorgen Xbox Daniel Meixner Technical Evangelist Microsoft Deutschland GmbH @DanielMeixner DevelopersDevelopersDevelopersDevelopers.Net Programming

Mehr

Script-Sprache für UPT und MKT-View II / III / IV. Einleitung, Anwendungsfälle, Programmierung. MKT Systemtechnik

Script-Sprache für UPT und MKT-View II / III / IV. Einleitung, Anwendungsfälle, Programmierung. MKT Systemtechnik Einleitung, Anwendungsfälle, Programmierung MKT Systemtechnik Autor: Stand: Ablage: Wolfgang Büscher Dipl.-Ing. Soft- und Hardware-Entwicklung buescher@mkt-sys.de 2015-01-21 (JJJJ-MM-DD) art85133_einfuehrung_mktview_scriptsprache.odp/pdf;

Mehr

HERZLICH WILLKOMMEN SHAREPOINT 2013 DEEP DIVE - APPS 11.09.2012 IOZ AG 1

HERZLICH WILLKOMMEN SHAREPOINT 2013 DEEP DIVE - APPS 11.09.2012 IOZ AG 1 HERZLICH WILLKOMMEN SHAREPOINT 2013 DEEP DIVE - APPS 11.09.2012 IOZ AG 1 AGENDA Einführung Apps - Einführung Apps Architektur SharePoint-Hosted Apps Cloud-Hosted Apps Ausblick 11.09.2012 IOZ AG 2 ÜBER

Mehr

Frequently asked Questions for Kaercher Citrix (apps.kaercher.com)

Frequently asked Questions for Kaercher Citrix (apps.kaercher.com) Frequently asked Questions for Kaercher Citrix (apps.kaercher.com) Inhalt Content Citrix-Anmeldung Login to Citrix Was bedeutet PIN und Token (bei Anmeldungen aus dem Internet)? What does PIN and Token

Mehr

Code signing mit startssl

Code signing mit startssl Code signing mit startssl Auf der Suche nach einem Anbieter, bei dem ich ein mit Windows 7 nutzbares und günstiges Zertikat erwerben kann bin ich über StartSSL gestolpert. Dort bekommt man ein class 2

Mehr

Mobile Device Management (MDM)

Mobile Device Management (MDM) Mobile Device Management (MDM) Wie können Sie Ihre Mobile Devices (Windows Phone 8, Windows RT, ios, Android) mit Windows Intune und SCCM 2012 R2 verwalten und was brauchen Sie dazu. 24.10.2013 trueit

Mehr

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221 Oracle 10g und SQL Server 2005 ein Vergleich Thomas Wächtler 39221 Inhalt 1. Einführung 2. Architektur SQL Server 2005 1. SQLOS 2. Relational Engine 3. Protocol Layer 3. Services 1. Replication 2. Reporting

Mehr

Automatisiertes UI Testing. Mark Allibone, 18.04.2013, #2

Automatisiertes UI Testing. Mark Allibone, 18.04.2013, #2 Coded UI Testing Automatisiertes UI Testing Mark Allibone, 18.04.2013, #2 Eine klassische Applikations Architektur Grafische Oberfläche Business Logik Datenzugriff (Datenbank, Cloud, etc) Mark Allibone,

Mehr

Einführung in die Cross-Plattform Entwicklung Das Intel XDK

Einführung in die Cross-Plattform Entwicklung Das Intel XDK Einführung in die Cross-Plattform Entwicklung Das Intel XDK Einführung Dieses Hands-on-Lab (HOL) macht den Leser mit dem Intel XDK vertraut. Es wird Schritt für Schritt die erste eigene Hybrid-App entwickelt

Mehr

Microsoft Access 2010 Bilder

Microsoft Access 2010 Bilder Microsoft Access 2010 Bilder Hyperlinks... arbeiten ähnlich wie ein Link in einer Webseite. sind ein Verweis auf eine Datei (access2010\material\beispiel\tabledevelop\automat.accdb). können ein Verweis

Mehr

UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18

UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18 UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18 Software Testing Automatisiert Manuell 100% 70% 1 Überwiegender Teil der Testing Tools fokusiert auf automatisiertes Testen Microsoft

Mehr

ORA-600 und ORA-7445 in der Oracle- Datenbank. Referent: Volker Mach, Systemadministrator MT AG

ORA-600 und ORA-7445 in der Oracle- Datenbank. Referent: Volker Mach, Systemadministrator MT AG ORA-600 und ORA-7445 in der Oracle- Referent: Volker Mach, Systemadministrator MT AG Übersicht Motivation Definition ORA-600 Definition ORA-7445 Lösungsfindung Lookup-Tool unter Metalink Live-Demo Fazit

Mehr

Mobile App Development. - Einführung -

Mobile App Development. - Einführung - Mobile App Development - Einführung - Inhalt Organisatorisches Vorlesungsinhalt Mobile Geräte Android Architektur App Aufbau Praktikum Organisatorisches 4 SWS, 5 ECTS 2 Vorlesung / 2 Praktikum ca. 10 Wochen

Mehr

Features und Vorteile von Office 2010

Features und Vorteile von Office 2010 Features und Vorteile von Office 2010 Microsoft Office 2010 bietet Ihnen flexible und überzeugende neue Möglichkeiten zur optimalen Erledigung Ihrer Aufgaben im Büro, zu Hause und in Schule/Hochschule.

Mehr

LaVida. Mobile Endgeräte. Andreas Neupert

LaVida. Mobile Endgeräte. Andreas Neupert LaVida Mobile Endgeräte Andreas Neupert Einleitung 1 33 Was? 1) Android a. Hardware b. Entwickeln i. Tools ii. Architektur & Konzepte iii. Google App Inventor c. Benutzen versus 2) WP 7 a. Hardware b.

Mehr

VB.net Programmierung und Beispielprogramm für GSV

VB.net Programmierung und Beispielprogramm für GSV VB.net Programmierung und Beispielprogramm für GSV Dokumentation Stand vom 26.05.2011 Tel +49 (0)3302 78620 60, Fax +49 (0)3302 78620 69, info@me-systeme.de, www.me-systeme.de 1 Inhaltsverzeichnis Vorwort...2

Mehr

Appery.io Mobile Apps schnell und einfach entwickeln

Appery.io Mobile Apps schnell und einfach entwickeln Appery.io Mobile Apps schnell und einfach entwickeln Cloud-basierte Entwicklungsumgebung, keine lokale Installation von Entwicklungsumgebung nötig. Technologie: HTML5. JQuery Mobile, Apache Cordova. Plattformen:

Mehr

Zuerst: Installation auf dem Mobilgerät (des Kindes)

Zuerst: Installation auf dem Mobilgerät (des Kindes) Inhalt Willkommen... 3 Was ist der Chico Browser?... 3 Bei Android: App Kontrolle inklusive... 3 Das kann der Chico Browser nicht... 3 Zuerst: Installation auf dem Mobilgerät (des Kindes)... 4 Einstellungen

Mehr

Dynamische Plug-ins mit Eclipse 3. Martin Lippert (martin.lippert@it-agile.de, www.it-agile.de) Tammo Freese (freese@acm.org)

Dynamische Plug-ins mit Eclipse 3. Martin Lippert (martin.lippert@it-agile.de, www.it-agile.de) Tammo Freese (freese@acm.org) Dynamische Plug-ins mit Eclipse 3 Martin Lippert (martin.lippert@it-agile.de, www.it-agile.de) Tammo Freese (freese@acm.org) Überblick Die Ausgangslage Dynamische Plug-ins Warum? Eclipse 3 Die OSGi-basierte

Mehr

VIVIT TQA Treffen in Köln am 18. 04. 2013. API- Programmierung und Nutzung bei HP Quality Center / ALM. Michael Oestereich IT Consultant QA

VIVIT TQA Treffen in Köln am 18. 04. 2013. API- Programmierung und Nutzung bei HP Quality Center / ALM. Michael Oestereich IT Consultant QA VIVIT TQA Treffen in Köln am 18. 04. 2013 API- Programmierung und Nutzung bei HP Quality Center / ALM Michael Oestereich IT Consultant QA Agenda Vorstellung der API- Versionen OTA- API SA- API REST- API

Mehr

SharePoint 2013 The new way to work together

SharePoint 2013 The new way to work together SharePoint 2013 The new way to work together Ihr Experte heute @ustrauss sharepointguru.de 3 SharePoint Conference 2012, Las Vegas Nevada The biggest show on SharePoint ever > 10.000 Teilnehmer aus der

Mehr

re-lounge GmbH MEDIENBÜRO

re-lounge GmbH MEDIENBÜRO re-lounge GmbH MEDIENBÜRO Think mobile: Die Bedeutung des mobilen Web für Unternehmen 26. JANUAR 2013 01 Ansprechpartner Oliver Schmitt // Geschäftsführer der re-lounge GmbH oliver.schmitt@re-lounge.com

Mehr

Visual Studio 2015* Neues für Entwickler rund um. Daniel Meixner *CTP6. Technical Evangelist Microsoft Deutschland GmbH

Visual Studio 2015* Neues für Entwickler rund um. Daniel Meixner *CTP6. Technical Evangelist Microsoft Deutschland GmbH Neues für Entwickler rund um Visual Studio 2015* Daniel Meixner Technical Evangelist Microsoft Deutschland GmbH *CTP6 @DanielMeixner DevelopersDevelopersDevelopersDevelopers.Net the small things Window

Mehr

BlackBerry Mobile Fusion Universal Device Service. Thomas Dingfelder, Senior Technical Account Manager ubitexx a Subsidiary of Research In Motion

BlackBerry Mobile Fusion Universal Device Service. Thomas Dingfelder, Senior Technical Account Manager ubitexx a Subsidiary of Research In Motion BlackBerry Mobile Fusion Universal Device Service Stefan Mennecke, Director Stefan Mennecke, Director Thomas Dingfelder, Senior Technical Account Manager ubitexx a Subsidiary of Research In Motion RIM

Mehr

Mobile App development mit Xamarin. Christian Hassa (ch@techtalk.ch) Andreas Willich (awi@techtalk.ch) TechTalk Software AG

Mobile App development mit Xamarin. Christian Hassa (ch@techtalk.ch) Andreas Willich (awi@techtalk.ch) TechTalk Software AG Mobile App development mit Xamarin Christian Hassa (ch@techtalk.ch) Andreas Willich (awi@techtalk.ch) TechTalk Software AG % der Bevölkerung mit Smartphone Smartphone Durchdringung >50% 34% 43% 54% DACH

Mehr

Powermanager Server- Client- Installation

Powermanager Server- Client- Installation Client A Server Client B Die Server- Client- Funktion ermöglicht es ein zentrales Powermanager Projekt von verschiedenen Client Rechnern aus zu bedienen. 1.0 Benötigte Voraussetzungen 1.1 Sowohl am Server

Mehr

Praktische Anwendungsentwicklung mit Oracle Forms

Praktische Anwendungsentwicklung mit Oracle Forms Praktische Anwendungsentwicklung mit Oracle Forms von Perry Pakull, Stefan Jüssen, Walter H. Müller 1. Auflage Hanser München 2007 Verlag C.H. Beck im Internet: www.beck.de ISBN 978 3 446 41098 5 Zu Leseprobe

Mehr

CRM KINDERLEICHT NEUERUNGEN IM RELEASE 8.4

CRM KINDERLEICHT NEUERUNGEN IM RELEASE 8.4 CRM KINDERLEICHT NEUERUNGEN IM RELEASE 8.4 STRATEGISCHE ZIELE Terminumfrage, Termine und Aufgaben in GEDYS IntraWare 8.web Unabhängig vom E Mail und Kalendersystem Termine auch für Kunden Ablösung der

Mehr

Lesegerät am PC verwenden

Lesegerät am PC verwenden Lesegerät am PC verwenden Bedienungsanleitung Gültig für die Lesegeräte Plus Extra und den Minireader 1 Hinweis: Die verwendeten Bilder sind schematisch. Die Anleitung wurde exemplarisch unter Windows

Mehr

Hinweise zu Java auf dem Mac:

Hinweise zu Java auf dem Mac: Hinweise zu Java auf dem Mac: 1. Möglichkeit zum Überprüfen der Java-Installation / Version 2. Installiert, aber im Browser nicht AKTIVIERT 3. Einstellungen in der Java-KONSOLE auf Deinem MAC 4. Java Hilfe

Mehr

DRAFT, VERSION 1.0, 10.10.06 PETER MACHAT, TECHNICAL ACCOUNT MANAGER T-MOBILE BUSINESS UNIT, RESEARCH IN MOTION DEUTSCHLAND GMBH

DRAFT, VERSION 1.0, 10.10.06 PETER MACHAT, TECHNICAL ACCOUNT MANAGER T-MOBILE BUSINESS UNIT, RESEARCH IN MOTION DEUTSCHLAND GMBH BLACKBERRY UND NOKIA E61 DRAFT, VERSION 1.0, 10.10.06 PETER MACHAT, TECHNICAL ACCOUNT MANAGER T-MOBILE BUSINESS UNIT, RESEARCH IN MOTION DEUTSCHLAND GMBH INPUT: STEFAN TEPPERT, PIPELINE DV-BERATUNG GMBH

Mehr

SDK Implementierung & Account- Verknüpfung Stand 02.01.2015

SDK Implementierung & Account- Verknüpfung Stand 02.01.2015 SDK Implementierung & Account- Verknüpfung Stand 02.01.2015 SDK Implementierung... 3 Google Analytics SDK... 3 Google Analytics E-Commerce Tracking... 4 Google Remarketing-TAG für Apps... 4 Google Analytics

Mehr

SharePoint 2013 The new way to work together

SharePoint 2013 The new way to work together SharePoint 2013 The new way to work together 2 3 SharePoint Conference 2012, Las Vegas Nevada The biggest show on SharePoint ever > 10.000 Teilnehmer aus der ganzen Welt 4 Tage geballtes Wissen > 250 Sessions

Mehr

Office und.net - zwei Welten wachsen zusammen mit VSTO 3.0. Lars Keller netcreate OHG

Office und.net - zwei Welten wachsen zusammen mit VSTO 3.0. Lars Keller netcreate OHG Office und.net - zwei Welten wachsen zusammen mit VSTO 3.0 Ihr Referent Lars Keller Was lernen Sie hier nicht? Was werden Sie hier erfahren? Agenda I VSTO Grundlagen II Ribbon Customizing III Smart Tag

Mehr

Readme-USB DIGSI V 4.82

Readme-USB DIGSI V 4.82 DIGSI V 4.82 Sehr geehrter Kunde, der USB-Treiber für SIPROTEC-Geräte erlaubt Ihnen, mit den SIPROTEC Geräten 7SJ80/7SK80 über USB zu kommunizieren. Zur Installation oder Aktualisierung des USB-Treibers

Mehr

Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap

Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap Proseminar Objektorientiertes Programmieren mit.net und C# Florian Schulz Institut für Informatik Software & Systems Engineering Einführung Was hat Cross-Plattform

Mehr

Mobile Device Management (MDM) Part1

Mobile Device Management (MDM) Part1 Jürg Koller CONSULTANT trueit GMBH juerg.koller@trueit.ch @juergkoller blog.trueit.ch / trueit.ch Pascal Berger CONSULTANT trueit GMBH pascal.berger@trueit.ch @bergerspascal blog.trueit.ch / trueit.ch

Mehr

SMARTtill Server mit Manager

SMARTtill Server mit Manager SMARTtill Server mit Manager Benutzerhandbuch 2014 Das Handbuch bezieht sich auf die Standardeinstellungen bei einer Pilotinstallation. Bei neuen Partnernprojekten sind Anpassungen zwingend notwendig und

Mehr

Microsoft SharePoint. share it, do it! www.klockwork.at

Microsoft SharePoint. share it, do it! www.klockwork.at Microsoft SharePoint share it, do it! www.klockwork.at Share it do it! Das Wissen steckt vor allem in den Köpfen unserer Mitarbeiter. Deshalb ermutigen wir sie, ihr Wissen aufzuzeichnen und zu teilen.

Mehr

Microsoft Azure: Ein Überblick für Entwickler. Malte Lantin Technical Evangelist, Developer Experience & Evangelism (DX) Microsoft Deutschland GmbH

Microsoft Azure: Ein Überblick für Entwickler. Malte Lantin Technical Evangelist, Developer Experience & Evangelism (DX) Microsoft Deutschland GmbH Microsoft Azure: Ein Überblick für Entwickler Malte Lantin Technical Evangelist, Developer Experience & Evangelism (DX) Microsoft Deutschland GmbH Moderne Softwareentwicklung Microsoft Azure unterstützt

Mehr

Mobility mit IBM Worklight Erste Schritte zu einer mobilen App. Benjamin Stein, Consultant Stuttgart, 03.04.2014

Mobility mit IBM Worklight Erste Schritte zu einer mobilen App. Benjamin Stein, Consultant Stuttgart, 03.04.2014 Mobility mit IBM Worklight Erste Schritte zu einer mobilen App Benjamin Stein, Consultant Stuttgart, 03.04.2014 Agenda Was ist IBM Worklight eigentlich? Hintergrund und Idee, Architektur und Bestandteile

Mehr

ISA Server 2004 - Best Practice Analyzer

ISA Server 2004 - Best Practice Analyzer ISA Server 2004 - Best Practice Analyzer Die Informationen in diesem Artikel beziehen sich auf: Microsoft ISA Server 2004 Seit dem 08.12.2005 steht der Microsoft ISA Server 2004 Best Practice Analyzer

Mehr

Softwareanforderungen für Microsoft Dynamics CRM Server 2015

Softwareanforderungen für Microsoft Dynamics CRM Server 2015 Softwareanforderungen für Microsoft Dynamics CRM Server 2015 https://technet.microsoft.com/de-de/library/hh699671.aspx Windows Server-Betriebssystem Microsoft Dynamics CRM Server 2015 kann nur auf Computern

Mehr

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

Meldung Lokale Anwendung inkompatibel oder Microsoft Silverlight ist nicht aktuell bei Anmeldung an lokal gespeicherter RWE SmartHome Anwendung Meldung Lokale Anwendung inkompatibel oder Microsoft Silverlight ist nicht aktuell bei Anmeldung an lokal gespeicherter RWE SmartHome Anwendung Nach dem Update auf die Version 1.70 bekommen Sie eine Fehlermeldung,

Mehr

Mobile Device Management (MDM) Part2

Mobile Device Management (MDM) Part2 Jürg Koller CONSULTANT trueit GMBH juerg.koller@trueit.ch @juergkoller blog.trueit.ch / trueit.ch Pascal Berger CONSULTANT trueit GMBH pascal.berger@trueit.ch @bergerspascal blog.trueit.ch / trueit.ch

Mehr

Datenhaltung für Android. Model First

Datenhaltung für Android. Model First Datenhaltung für Android Model First Frederik Götz, Johannes Tysiak 26.05.2011 Unser Ziel! 26.05.2011 Datenhaltung in Android - Model First» Frederik Götz, Johannes Tysiak 2 Agenda Android Quickstart Datenhaltung

Mehr

ArcGIS Online Werkstatt

ArcGIS Online Werkstatt ArcGIS Online Werkstatt Die Möglichkeiten mit ArcGIS Online for Organizations Christiane Radies und Gregor Radlmair Esri Deutschland GmbH 27. Juni 2013, Stuttgart Inhalte + Die ArcGIS Online Subskription

Mehr

SanStore: Kurzanleitung / SanStore: Quick reference guide

SanStore: Kurzanleitung / SanStore: Quick reference guide SanStore Rekorder der Serie MM, MMX, HM und HMX Datenwiedergabe und Backup Datenwiedergabe 1. Drücken Sie die Time Search-Taste auf der Fernbedienung. Hinweis: Falls Sie nach einem Administrator-Passwort

Mehr

OP-LOG www.op-log.de

OP-LOG www.op-log.de Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server

Mehr

Mobile Data Monitor Erfassung, Überwachung und Analyse von übertragenen Datenmengen

Mobile Data Monitor Erfassung, Überwachung und Analyse von übertragenen Datenmengen Mobile Data Monitor Erfassung, Überwachung und Analyse von übertragenen Datenmengen Installations- und Benutzeranleitung Semesterarbeit von: Andreas Wüst Stefan Graf Juli 2005 Mobile Data Monitor Seite

Mehr

Avira Management Console 2.6.1 Optimierung für großes Netzwerk. Kurzanleitung

Avira Management Console 2.6.1 Optimierung für großes Netzwerk. Kurzanleitung Avira Management Console 2.6.1 Optimierung für großes Netzwerk Kurzanleitung Inhaltsverzeichnis 1. Einleitung... 3 2. Aktivieren des Pull-Modus für den AMC Agent... 3 3. Ereignisse des AMC Agent festlegen...

Mehr

Unser Auftraggeber ist einer der vier Global Player in den Bereichen Wirtschaftsprüfung,

Unser Auftraggeber ist einer der vier Global Player in den Bereichen Wirtschaftsprüfung, Case Study Testautomatisierung mit Coded UI Die Aufgabe Unser Auftraggeber ist einer der vier Global Player in den Bereichen Wirtschaftsprüfung, Steuerberatung und Unternehmens- bzw. Managementberatung.

Mehr

DocuWare unter Windows 7

DocuWare unter Windows 7 DocuWare unter Windows 7 DocuWare läuft unter dem neuesten Microsoft-Betriebssystem Windows 7 problemlos. Es gibt jedoch einige Besonderheiten bei der Installation und Verwendung von DocuWare, die Sie

Mehr

Softwareentwicklung bei eevolution

Softwareentwicklung bei eevolution Softwareentwicklung bei eevolution Darstellung der Prozesse mit dem agilen Entwicklungsansatz Jan Freitag, COMPRA GmbH Jan Freitag Studium: IMIT Bachelor: 2005-2008 IMIT Master: 2008-2010 eevolution: Mitarbeit

Mehr

DeskSave 8.2. - Aufruf mit Kommandozeilenparametern möglich - Automatisches Restaurieren bei Auflösungswechsel, Programmstart oder Rückkehr aus

DeskSave 8.2. - Aufruf mit Kommandozeilenparametern möglich - Automatisches Restaurieren bei Auflösungswechsel, Programmstart oder Rückkehr aus DeskSave 8.2 (c) 1998-2008 Thorsten Blauhut DeskSave ist ein anwenderfreundliches Tool, mit dem man das Icon-Layout des Desktops sichern und bei Bedarf wieder restaurieren kann. Eigenschaften: - Sicherung

Mehr

ReadMe zur Installation der BRICKware for Windows, Version 6.1.2. ReadMe on Installing BRICKware for Windows, Version 6.1.2

ReadMe zur Installation der BRICKware for Windows, Version 6.1.2. ReadMe on Installing BRICKware for Windows, Version 6.1.2 ReadMe zur Installation der BRICKware for Windows, Version 6.1.2 Seiten 2-4 ReadMe on Installing BRICKware for Windows, Version 6.1.2 Pages 5/6 BRICKware for Windows ReadMe 1 1 BRICKware for Windows, Version

Mehr

B-Speech MiniPad Anleitung zur Schnellinstallation. Anleitung zur Schnellinstallation. Seite 1 von 12

B-Speech MiniPad Anleitung zur Schnellinstallation. Anleitung zur Schnellinstallation. Seite 1 von 12 Anleitung zur Schnellinstallation Seite 1 von 12 Inhaltsverzeichnis B-Speech MiniPad Anleitung zur Schnellinstallation BK300 Anleitung zur Schnellinstalltion.. 3 Pocket PC / Microsoft Smartphone.. 4 Systemanforderungen....

Mehr

Realtime Anbindung an SAP ERP

Realtime Anbindung an SAP ERP Realtime Anbindung an SAP ERP 14.07.2014, 15:00 NovaTec Consulting GmbH Leinfelden-Echterdingen, München, Frankfurt am Main, Berlin, Jeddah / Saudi-Arabien Showcase - Push SAP Terminauftrag NovaTec 09.09.2015

Mehr

ShareFile Jörg Vosse

ShareFile Jörg Vosse ShareFile Jörg Vosse Senior Systems Engineer ShareFile - Central Europe joerg.vosse@citrix.com Konsumerisierung der IT Mein Arbeitsplatz Mein(e) Endgerät(e) Meine Apps? Meine Daten Citrix Der mobile Arbeitsplatz

Mehr

HERZLICH WILLKOMMEN SHAREPOINT 2013 DEEP DIVE APPS 27.09.2012 IOZ AG 1

HERZLICH WILLKOMMEN SHAREPOINT 2013 DEEP DIVE APPS 27.09.2012 IOZ AG 1 HERZLICH WILLKOMMEN SHAREPOINT 2013 DEEP DIVE APPS 27.09.2012 IOZ AG 1 ÜBER MICH STEPHAN STEIGER Seit 2008 bei IOZ AG Leiter Entwicklung SharePoint 2010 MCPD August 2012 SharePoint 2013 Ignite Ausbildung

Mehr

SemTalk Services. SemTalk UserMeeting 29.10.2010

SemTalk Services. SemTalk UserMeeting 29.10.2010 SemTalk Services SemTalk UserMeeting 29.10.2010 Problemstellung Immer mehr Anwender nutzen SemTalk in Verbindung mit SharePoint Mehr Visio Dokumente Viele Dokumente mit jeweils wenigen Seiten, aber starker

Mehr

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen Open Source professionell einsetzen 1 Mein Background Ich bin überzeugt von Open Source. Ich verwende fast nur Open Source privat und beruflich. Ich arbeite seit mehr als 10 Jahren mit Linux und Open Source.

Mehr

Starthilfe für C# Inhaltsverzeichnis. Medien- und Kommunikationsinformatik (B.Sc.) Alexander Paharukov. Informatik 3 Praktikum

Starthilfe für C# Inhaltsverzeichnis. Medien- und Kommunikationsinformatik (B.Sc.) Alexander Paharukov. Informatik 3 Praktikum Starthilfe für C# Inhaltsverzeichnis Allgemeines... 2 Bezugsquellen... 2 SharpDevelop... 2.NET Runtime... 2.NET SDK... 2 Installation... 2 Reihenfolge... 2 Vorschlag für eine Ordnerstruktur... 3 Arbeit

Mehr

QCfetcher Handbuch. Version 1.0.0.10. Ein Zusatztool zum QuoteCompiler. Diese Software ist nur für private und nicht-kommerzielle Zwecke einzusetzen.

QCfetcher Handbuch. Version 1.0.0.10. Ein Zusatztool zum QuoteCompiler. Diese Software ist nur für private und nicht-kommerzielle Zwecke einzusetzen. Seite 1 QCfetcher Handbuch Ein Zusatztool zum QuoteCompiler Diese Software ist nur für private und nicht-kommerzielle Zwecke einzusetzen. Die neuesten Informationen gibt es auf der Webseite: http://finanzkasper.de/

Mehr

Top-Apps, die Ihren Alltag erleichtern!

Top-Apps, die Ihren Alltag erleichtern! Top-Apps, die Ihren Alltag erleichtern! Dieses Kapitel ergänzt das Whitepaper um einen beispielhaften Überblick über schon im Marketplace veröffentlichte Anwendungen, die zum einen die Nutzung von Unternehmensdaten

Mehr

SmartExporter 2013 R1

SmartExporter 2013 R1 Die aktuelle Version wartet mit zahlreichen neuen Features und umfangreichen Erweiterungen auf. So können mit SmartExporter 2013 R1 nun auch archivierte Daten extrahiert und das Herunterladen der Daten

Mehr

Produktivitäsvision 2015

Produktivitäsvision 2015 Produktivitäsvision 2015 We always overestimate the change that will occur in the next two years and underestimate the change that will occur in the next ten Don t let yourself be lulled into INACTION

Mehr

Installation und Benutzung AD.NAV.ZipTools

Installation und Benutzung AD.NAV.ZipTools Installation und Benutzung AD.NAV.ZipTools Version 1.0.0.0 ALTENBRAND Datentechnik GmbH Am Gelicht 5 35279 Neustadt (Hessen) Tel: 06692/202 290 Fax: 06692/204 741 email: support@altenbrand.de Die Komponente

Mehr

Erste Erfahrungen mit Android

Erste Erfahrungen mit Android Java User Group München, 22. 9. 2008 Erste Erfahrungen mit Android 1 Was ist Android? Die erste vollständige, offene und freie Plattform für mobile Telefone Entwickelt von der Open Handset Alliance (Telecoms,

Mehr

Software Engineering in

Software Engineering in Software Engineering in der Werkzeuge für optimierte LabVIEW-Entwicklung Folie 1 Best Practices Requirements Engineering Softwaretest Versionsmanagement Build- Automatisierung Folie 2 Arbeiten Sie im Team?

Mehr

Configuration Manager Hardware Inventory Erweiterungen. 22.05.2014 trueit TechEvent 2014 1

Configuration Manager Hardware Inventory Erweiterungen. 22.05.2014 trueit TechEvent 2014 1 Configuration Manager Hardware Inventory Erweiterungen It s all about WMI 22.05.2014 trueit TechEvent 2014 1 Agenda Grundlagen Inventory Arten Welche Daten können inventarisiert werden Anpassungen an Default

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

Uwe Baumann artiso Solutions ubaumann@artiso.com

Uwe Baumann artiso Solutions ubaumann@artiso.com Uwe Baumann artiso Solutions ubaumann@artiso.com Upgrade Strategien Data/Application Tier Anpassung von Process Templates Build Test/Lab Performance TFS Version Control Workitem Tracking Build Verwaltung

Mehr

Eine Business-Anwendung ist ohne Eingabevalidierung

Eine Business-Anwendung ist ohne Eingabevalidierung Eingabevalidierung mit WinRT Drum prüfe, wer sich bindet WinRT bietet für C#/XAML noch keine durchgängige Unterstützung der Validierung von Benutzereingaben. Dieser Artikel zeigt die Schwachstellen auf

Mehr