Dez 29

.Net 5 App Trimming am Beispiel MessageCommunicator

Das Tool MessageCommunicator ist so konzipiert, dass es möglichst portabel sein soll. Idealerweise als schlichte Exe-Datei (bzw. ausführbare Datei auf Linux oder macOS). Mit dem Parameter PublishSingleFile ist das seit .Net Core 3.0 grundsätzlich möglich, einziges Problem ist lediglich die Größe der ausführbaren Datei. Man kann es sich aussuchen: Entweder man verteilt eine kleine Datei, setzt aber dann ein installiertes .Net am Zielsystem voraus, oder man hat eine größere Datei und bringt die Abhängigkeiten aus .Net direkt mit. Ich persönlich bevorzuge letzteres – es ist schlicht für alle Beteiligten einfacher, wenn eine Applikation möglichst wenig Voraussetzungen an das Zielsystem stellt. Mit den neuesten Funktionen rund um das App Trimming [1] kann an der Größe der zu verteilenden Dateien schrauben. In diesem Artikel möchte ich dazu meine Erfahrungen aus dem Projekt MessageCommunicator weitergeben.

Weiterlesen
Okt 14

Talks auf der ADC 2020 in München

Die Konferenz ADC 2020 fand trotz Corona statt und hat eine gute Plattform für Vorträge und Gespräche zu aktuellen Themen im .Net Umfeld geboten. Ich selbst war mit je einem Vortrag zum Thema WinUI und ASP.Net Core Blazor mit vor Ort in München. Die Coding-Beispiele beider Vorträge liegen entsprechend auf Github unter [1] und [2].

Weiterlesen
Feb 25

Umstellung auf Https und alte Website entfernt

Der letzte Eintrag von mir auf dieser Seite ist aus dem Jahr 2016… damit wird es jetzt Ende Februar 2018 wirklich einmal Zeit, hier wieder etwas zu machen. Grund für meine lange Untätigkeit hier ebenso wie auf GitHub ist ganz klar das Fernstudium. Glücklicherweise geht es jetzt auf den Endspurt bei der Masterarbeit zu und damit kann ich langsam zuhause wieder Zeit zum Entwickeln investieren. Bei der Gelegenheit habe ich hier auf der Website erst einmal aufgeräumt. Im Prinzip haben sich zwei Sachen verändert: Zum einen habe ich umgestellt auf Https, um hier auf den aktuellen Stand zu sein und nicht von Google gebrandmarkt zu werden. Zum anderen habe ich die alte Joomla-basierte Website entfernt (vorher erreichbar und www.rolandk.de oder www.rkoenig.eu). Falls jemand den alten Content benötigt, dann reicht eine einfach Mail an mich – habe die Sachen nicht gelöscht, sondern am Webspace erst einmal in einen Backup-Ordner geschoben. Zudem bleibt die alte Datenbank auch bestehen.

Feb 01

Um was geht es beim Testen?

BugNeulich stand am .Net Usergroup-Treffen in Regensburg das automatisierte Testen auf der Agenda [1]. Grundsätzlich ein wichtiges Thema, nicht nur für mich, sondern auch für viele andere Softwareentwickler – alleine die hohe Teilnehmerzahl macht dies deutlich. An dieser Stelle direkt ein Dank an den Sprecher Kenny Pflug, er hat das Thema gut dargestellt – auch wenn es die eine oder andere Kritik an dem Beispielprogramm gab ;). Bei dem Vortrag konnte ich einige Dinge dazulernen, beispielsweise nennt sich das, was ich normalerweise als „Testdriven Development“ in der Arbeit vorantreibe, in Wirklichkeit „Behavior Driven Development“. Naja.. ich mache mir halt nicht viel aus Schlagworten 😉 Weiterlesen

Nov 09

RK2048 – Universal-App fast fertig

RK 2048 LogoRK2048 ist mein erstes „Abenteuer“ eine App mit weitgehend gleichem Coding auf mehreren Plattformen zu entwickeln und zu veröffentlichen. Genau genommen handelt es sich um (fast alle) aktuellen Windows-Plattformen von Windows Phone (8.1) über Windows RT bzw. Windows Store Apps bis Windows Desktop (Wpf). Es ist überraschend, wie gut das mittlerweile zwischen Phone und Tablet funktioniert, einzig WPF ist bei den Standard-Projekttemplates noch etwas außen vor. Im Windows Store ist die erste Version schon veröffentlicht, Windows Phone folgt (hoffentlich) relativ bald. Auch ein Setup für die Desktop-Version ist bereits verfügbar. Weiterlesen

Jul 02

RK 2048 – Ein Spiel vollständig als Universal App entwickelt

ThumbnailEin völlig verregneter Sonntag, nichts wirklich vor, was kommt dabei raus? Richtig, ein kleines Spiel. Letzten Sonntag habe ich die frisch auf Windows Phone portierte 3D-Engine verwendet, um einen kleinen 2048 Klon zu bauen. Der Screenshot zeigt das Ergebnis. Sieht an sich relativ gut aus und funktioniert auch überraschend gut. Ein paar Bugs gibt es sicherlich noch, ein paar Optimierungen für das Phone sind noch nötig, viel mehr als einen weiteren solchen verregneten Tag braucht es aber höchstwahrscheinlich nicht mehr. Das Besondere an dem Thema von der technischen Seite ist, dass es das neue Template für Universal Apps verwendet. Der gleiche Code läuft also für Windows 8.1 und für Windows Phone 8.1 – ganz ohne Compiler-Flags oder dergleichen. Weiterlesen

Okt 10

Mausklick in Win.Forms per Reactive Extensions abfragen

Die Reactive Extensions von Microsoft können schon ein cooles Werkzeug sein. Wer sich schon einmal damit beschäftigt hat, weiß, dass dieses Framework vom Funktionsumfang her eine sehr gute Ergänzung ist, von der Syntax her aber sehr ungewohnt.

Ein gutes Beispiel dafür habe ich neulich bei einem relativ einfachen Thema gemacht: Einen einfachen Mausklick in einem Windows.Forms Panel abfangen. Das Standard-Ereignis konnte ich nicht nehmen, da dieses auch dann feuert, wenn die Maustaste länger unten gehalten wurde. In diesem Fall möchte ich das Ereignis aber nicht, da länger gedrückte Maustaste in diesem Fall eine andere Bedeutung hat. Weiterlesen

Jun 20

RK Mosaic Snake 3D ist jetzt im Windows Store!

MosaicSnakeThumbnailEs hat jetzt eine ganze Weile gedauert, aber schließlich hat es doch noch geklappt. Das Spiel hat die Tests bei Microsoft überstanden und ist jetzt unter folgender Adresse im Windows Store erhältlich: http://apps.microsoft.com/…

Was es alles für Probleme gab, kann man z. T. auf meinem Post bei www.indiedev.de nachlesen. Davor gab es aber auch noch eine ganze Reihe anderer. An dieser Stelle bleibt mir aber nur noch eins zu sagen: Probiert es aus, habt Spaß dabei und schreibt mir bei Kritik 😉

Jun 09

Bessere PropertyGrids in Wpf durch PropertyTools

Das klassische PropertyGrid kennt wohl jeder Entwickler. Bekannt durch das „Properties“-Fenster in VisualStudio oder einfach als sehr produktives Control in Windows.Forms, um schnell eine Benutzeroberfläche für eigene Objekte erzeugen zu lassen. Daneben gibt es ein ähnliches Control in den meisten Control-Frameworks, welche man dazukaufen kann (z. B. von DevExpress). Neulich bin ich auf ein OpenSource-Projekt auf Codeplex gestoßen, welches in meinen Augen die eine oder andere Sache besser und hübscher macht. Weiterlesen

Apr 01

Verbesserungen an Mosaic Snake 3D

MosaicSnakeThumbnailEs ist jetzt ca. einen Monat her seit meinem letzten Blog-Eintrag. Man merkt es, dass ich momentan seitens des Studiums mitten in der Prüfungszeit und seitens der Arbeit mitten in der alljährlichen Messezeit stecke. Aber nichts desto trotz will ich die Osterfeiertage nutzen, um auch hier ein Lebenszeichen von mir zu geben. Über die letzten Wochen habe ich wieder häufiger an Mosaic Snake 3D weiter gearbeitet. So habe ich damit begonnen, mehrere Dialog-Oberflächen einzubauen, die über die 3D-Grafik gezeichnet werden. Daneben habe ich die Farbgestaltung angepasst und die 3D-Engine beherrscht jetzt auch einfache Transparenz-Effekte. Weiterlesen