Rekursive Funktionen in C#, Python und Racket
Wenn ich an mein Informatik-Studium zurück denke, dann kommen mir auch rekursive Funktionen in den Sinn. Bereits in den ersten Vorlesungen und Übungen mussten wir verschiedene Funktionen als rekursive Funktionen in der Sprache Racket umsetzen. In diesem Beitrag möchte ich euch nun einige „Standard“-Funktionen zeigen, welche man sicherlich in jedem Informatik-Studium schreiben muss. Dabei werde ich neben C# diese auch in Python schreibe. Zunächst wollen wir aber die Frage beantworten, was eigentlich eine rekursive Funktion ist. Kurz gesagt, ist eine Funktion rekursiv, wenn sie sich selbst aufruft. Wir finden also im Rumpf der Funktion einen Aufruf derselben Funktion.
Man benutzt eine rekursive Funktion zum Beispiele gerne, um mathematische Funktionen abzubilden. So hat sicherlich jeder schon einmal von der Fakultät gehört. Diese Funktion multipliziert alle natürlichen Zahlen (ohne Null), welche kleiner oder gleich der übergebenen Zahl ist. So ist 5! = 5 * 4 * 3 * 2 * 1 oder aber 5! = 5 * 4! und so sehen wir hier bereits eine Rekursion.
Neuer Bereich: Archiv
Dem einen oder anderen wird es sicherlich bekannt sein, dass ich früher auf tsjdev.de gebloggt und über meine App-Projekte berichtet habe. Mit meinem Umzug nach Pforzheim habe ich dann das Bloggen etwas schleifen lassen, bevor ich unter tsjdev-apps.de dann meinen neuen Blog ins Leben gerufen habe. Nun habe ich die letzten Tagen etwas nachgedacht und mir überlegt, dass ich den Inhalt von tsjdev.de nicht einfach löschen, sondern weiterhin zur Verfügung stellen möchte, auch wenn viele Dinge heutzutage anders gemacht werden. Daher habe ich nun den gesamten Content genommen und stelle diesen nun unter archive.tsjdev-apps.de zur Verfügung.
Windows Sandbox zum Testen von Software
Es kommt vor, dass man zum Beispiel Software einmal testen möchte, ohne Änderungen an seinem eigenen Betriebssystem vornehmen zu müssen. Oder man bekommt eine verdächtige eMail mit Anhang, welchen man sich gefahrenlos anschauen möchte. In diesem Beitrag möchte ich euch nun Schritt für Schritt zeigen, wie ihr die Windows Sandbox genau für diese Szenarien auf eurem eigenen Rechner in wenigen Schritten einrichten könnt.
NuGet: Xamarin Community Toolkit
Der eine oder andere hat bestimmt schon von der Ankündigung im Rahmen der Microsoft Build-Konferenz 2020 gehört, dass mit Xamarin.Forms 5.0 die letzte Version von Xamarin.Forms erscheinen wird und im November 2021 mit der Veröffentlichung von .NET 6 als .NET MAUI fortgeführt wird. Seit einiger Zeit wurde nun Xamarin.Forms 5.0 veröffentlicht. Doch was passiert mit den Features, welche es nicht mehr in einen stabilen Zustand gebracht haben? Hier kommt das Xamarin Community Toolkit ins Spiel, welches ich euch in diesem Beitrag näher vorstellen möchte.
Replatforming: Von Xamarin Native zu Xamarin.Forms
Normalerweise entscheidet man sich am Anfang der Entwicklung einer neuen App, ob man auf Xamarin Native oder Xamarin.Forms setzt. Im Laufe der Zeit kann sich die Meinung oder auch der Rahmen ändern, so dass man seine Entscheidung anders treffen würde. In diesem Beitrag möchte ich kurz aufzeigen, wie man eine bestehen native Xamarin App auf Xamarin.Forms portieren kann. Dieser Artikel ist bereits in englischer Sprache auf Medium veröffentlicht worden.
Surface Duo: Simple Liste mit Detail
Seit wenigen Wochen ist das neue Smartphone von Microsoft mit Android und dem Namen Surface Duo auch außerhalb den USA erhältlich. In einem Blog-Beitrag habe ich das Gerät mit den zwei Screens bereits vorgestellt. Nun dachte ich mir, dass es an der Zeit ist einmal einen Blick auf die Entwicklung für das Surface Duo zu werfen. Als Beispiel-Anwendung soll eine einfache Liste dienen, welche bei der Auswahl eines Eintrags ein entsprechendes Detail anzeigt. Das besondere dabei ist, dass wir die beiden Screens des Surface Duos verwenden wollen, aber gleichzeitig auch lauffähig sind, wenn keine zwei Screens zur Verfügung steht.
Padding bei SVG-Bilder entfernen
Ich hatte letztens für ein Projekt ein Problem mit SVG-Bilder. Diese wurde mir bereitgestellt, allerdings hatten diese bereits ein Padding, so dass das eigentliche Bild kleiner war. Daher habe ich eine Möglichkeit gesucht mit relativ wenig Aufwand das Padding zu entfernen, so dass ich dieses selbst bei Bedarf in meiner App setzen kann. Nach kurzer Zeit habe ich eine Möglichkeit gefunden, welche ich euch gerne in diesem Beitrag vorstellen möchten.
Anzeigen von Dateien auf einem Device mit dem Device File Explorer
Gerade wenn man eine mobile App entwickelt, kann es hilfreich sein, wenn man auf die Dateien eines Devices Zugriff hat. Für eines meiner Projekte speichern wir die Daten in einer Datenbank im lokalen App-Verzeichnis. Es ist nun jedoch nicht so einfach möglich Zugriff auf diese Datei außerhalb der App zu bekommen, um zum Beispiel einen Blick in die Datenbank zu werfen. Glücklicherweise ist der Device File Explorer Teil von Android Studio, welcher euch ganz einfach Zugriff auf die Dateien gibt.
Surface Duo – Dual-Screen Device von Microsoft mit Android
Auf dem Hardware-Event im Oktober 2019 hat Microsoft ein neues Gerät vorgestellt. Dabei handelt es sich um ein Smartphone, welches über zwei Screens verfügt. Diese sind mit einem Scharnier miteinander verbunden. Ein weiteres interessantes Detail war das verwendete Betriebssystem, denn es kommt Android zum Einsatz. Ein knappes Jahr später wurde das Gerät exklusiv in Amerika veröffentlicht und in Kürze werden die Geräte auch in anderen Ländern verfügbar sein. Ab dem 18. Februar 2021 ist das Gerät endlich auch in Deutschland erhältlich und ist exklusiv bei MediaMarkt und Saturn, sowie im Microsoft Store. In diesem Beitrag möchte ich mit euch gemeinsam einen Blick auf das Gerät werfen und die technischen Details besprechen.
Buch-Tipp: Hilfe, ich habe meine Privatsphäre aufgegeben! von Barbara Wimmer
Auch in diesem Jahr möchte ich euch das eine oder andere spannende Buch vorstellen. Wie es bereits beim letzten Buch schon der Fall war, habe ich dieses Mal wieder ein Buch dabei, welches sich nicht explizit mit einer bestimmten Software beschäftigt, sondern eher zum Nachdenken anregen soll. Dabei handelt es sich um das Buch Hilfe, ich habe meine Privatsphäre aufgegeben! von Barbara Wimmer aus dem mitp Verlag, welches ich euch in diesem Beitrag kurz vorstellen möchte.
Foto-Galerie App mit Xamarin.Forms
Ich habe hier im Blog bereits das NuGet-Package PixabaySharp von meinem Kollegen Thomas Pentenrieder und mir vorgestellt. Nun dachte ich mir, dass es doch schön wäre, wenn man auch gleich ein Beispielprojekt hätte, was diese Library einmal in Aktion zeigt. Wie der Titel schon verrät, habe ich mich natürlich für Xamarin.Forms entschieden und möchte jetzt in diesem Beitrag zeigen, wie ihr selbst mit wenig Aufwand eine kleine Foto-Galerie App schreiben könnt. Dabei werden ich nicht jeden einzelnen Code-Block hier im Blog vorstellen, aber am Ende des Beitrags findet ihr den Link zu einem GitHub-Repository, wo ihr den vollständigen Code herunterladen könnt.
Back to the 80’s – Microsoft Encarta im Jahre 2020
Dieses Jahr feiert die beliebte Internet-Enzyklopädie Wikipedia ihr 20-jähriges Bestehen. Im März 2001 ging die deutschsprachige Version an den Start. In diesem Beitrag möchte ich jetzt einmal zurückblicken, wie man sich vor 20 Jahren seine Informationen beschaffen konnte. Ich habe damals sehr gerne das Tool Encarta von Microsoft benutzt. Dabei handelte es sich vom eine Enzyklopädie, welche man auf CD-ROM bzw. auf DVD kaufen konnte und von 1993 bis 2009 jährlich herausgegeben wurde. Ich habe hier die Version Encarta 2001 vorliegen und möchte euch nun ein paar Screenshots zeigen.