Die Neuerungen in Xojo 2017r2

Letzten Dienstag (den 15.8.) wurde Xojo 2017 Release 2 veröffentlicht, was genügend Anlass für einen neuerlichen Artikel in der Neuerungs-Reihe bietet. Diesmal, muss ich gestehen, fällt er nicht leicht. Die Liste der Veränderungen ist mit über 250 Punkten wirklich, wirklich groß, und auch wenn die offizielle Ankündigung von einem Schwerpunkt auf 64 Bit, Linux und iOS Launch Screens spricht: Das ist eigentlich nur die Spitze des Eisbergs.

weiterlesen

Hilfe, Schulung, Jobs … die Xojo-Hobby-Kontaktbörse

Eine wie ich finde feine Anfrage wurde kürzlich an mich herangetragen: Es gibt viele Xojo-Anwender, die Programmieren als Hobby betreiben, was sich keineswegs despektierlich anhören soll: Mir wurden aus diesem Anwenderkreis des öfteren Codeschnipsel zugespielt, vor denen ich nur meinen Hut ziehen kann, wie z.B. eine WIA-Scannerschnittstellenanwendung für Windows, die ich liebend gerne beschreiben würde, was mich aber aufgrund ihrer Größe vor einige Herausforderungen stellt.

weiterlesen

Evolution statt Untergang: Eine kleine Geschichte der Programmierwerkzeuge

Dies ist eine Übersetzung eines Beitrags von Geoff Perlman aus dem Xojo-Blog (also dem von Xojo, nicht diesem hier). „Ich“ oder „wir“ in diesem Text ist daher ausnahmsweise als Xojo (oder eben Geoff) zu lesen, nicht als meine Wenigkeit.

1998 war Steve Jobs der temporäre Geschäftsführer von Apple, und das kleine i bekam eine neue Aufgabe: Der iCEO – i für interim – war geboren und versuchte, das schwer angeschlagene Schiff Apple vor dem Untergang zu bewahren. Eine herkulische Aufgabe, wie das Zitat von Dell-Geschäftsführer Michael Dell aus dem Vorjahr auf die Frage, was er tun würde, sollte er Apple leiten, belegt: „Ich würde die Firma schließen und das Geld den Aktionären zurückgeben.“

weiterlesen

Diplomatisch delegieren

Ein Anwendungsfall aus der alltäglichen Praxis: Man hat ein Auswahl-Element, sagen wir mal ein PopupMenu, und ein Ausgabeelement – vielleicht einen Canvas –, das aufgrund der Auswahl im ersteren ein passendes Resultat zeigen soll.

DelegateWinDelegate.png

Häufig geht man dann so vor, dass der Change-Event im PopupMenu den Canvas invalidiert, und in dessen Paint-Event wird dann geschaut, was im PopupMenu steht. Eine mitunter ellenlange Select Case- oder If … ElseIf – End If-Anweisung macht den Code dann zum Roman.

weiterlesen

Codeservice zum Kaufen I: CSProcessInfo

Nun auch die angekündigte deutsche Erklärung zur ungewohnten englischen Beschreibung:

Wie ja an einigen Stellen erwähnt, pflege ich mehrere freie Bibliotheken für Xojo-Anwender, darunter auch die AppleLib, die Xojos Funktionen im macOS- und iOS-Bereich aufbohrt. Daran wird sich auch nichts ändern, wenngleich der Datenabgleich mit dem geshareten Code via GitHub immer wieder für Probleme sorgt (momentan ist das so; falls AppleLib, bitte die Revision 0.5.8 nehmen; neuere Upload-Versuche bringen Linkfehler im Projektfile – und ich hab schon gut zwei Tage dran gebastelt.)

weiterlesen

Was tun, wenn’s klemmt?

Eine kürzliche Leserfrage (nein, ich werd mich hier nicht erneut wiederholen: Nur vielen Dank an dieser Stelle!) ist Anregung für einen neuen Grundlagenbeitrag: Wie gehe ich mit Fehlern um, und wie verhindere ich die unschöne Exception-Messagebox, die bei unverhofften Fehlern auftritt und dem Programm eine etwas unsaubere Anmutung verleihen kann?

exceptionMessage

weiterlesen

Modular gedacht

Wie ja schon des öfteren erwähnt: Ich freue mich über Feedback und Anfragen, die mir dann auch gleich Anregung für einen neuen Beitrag liefern. Um so schöner, wenn’s denn mal ganz grundlegende Fragen betrifft.

So war dies dann auch kürzlich (nunja, einen Monat ist’s schon her), als mich ein Leser fragte, wie denn mit globalen Variablen umzugehen sei. Das ist eine Frage, die insbesondere bei Umsteigern bzw. Programmierern, die mit linearen Programmiersprachen begonnen haben, häufiger auftaucht. Saß man seinerzeit z.B. vor Turbo-Pascal, kam man schwerlich drum herum, globale Variablen zu definieren, also solche, die unter ihrem Namen von überall ansprechbar waren. Der Anfang eines solchen Programms bestand gerne mal aus ellenlangen Deklarationen von Variablen, auf die die später folgenden Methoden zugreifen konnten.

weiterlesen

CSProcessInfo – English Description

Deutsche Leser bitte nicht verwirren lassen: Erklärung folgt in Kürze!

CSProcessInfo is a standalone class containing NSProcessInfo, usable on macOS and iOs as well.

It is useful for requesting some system information and to avoid sleep or sudden termination, a feature the system uses to close down apps more quickly. Disallowing these functions gives you the means to finish longer lasting processes without having to fear that these could be interrupted by user or system requests.

weiterlesen