Programmierblog von Johannes Dienst

Grundlagen: Was ist Endrekursion?

Posted by in clojure, funktionale Programmierung, funktionales Programmieren, JavaScript

Rekursion ist ein mächtiges Konzept in der Programmierung, bei dem eine Funktion sich selbst aufruft. In meiner Studienzeit gab es einen witzigen Spruch: Informatikerhandbuch – Rekursion: Siehe Rekursion Dieser beschreibt treffend die Idee, eine Aufgabe mit einer sich selbst aufrufenden Funktion zu lösen. Ein Beispiel Wir starten mit einem kleinen Beispiel, das man sofort findet, wenn man nach Rekursion sucht. Der Fibonacchi-Folge (JavaScript):

Leider gibt es mit dieser Implementierung ein Problem. Der Speicherverbrauch dieser Funktion wächst bei großen n stark an. Schuld ist, dass für jeden Aufruf von fib(n)…read more

0

JAX 2017: Erfahrungsbericht (DI, MI)

Posted by in Allgemein, Konferenz

Die JAX 2017 war für mich mal wieder eine Premiere, da ich sie zum ersten Mal besuchen konnte. Die Rheingoldhalle an sich ist von außen schon beeindruckend und mit circa 1600 Teilnehmern ist es ein richtiges Event. Es gibt so viele Räume, Aussteller und Talks, dass die Zeit gar nicht ausreicht, um alles mitzunehmen. Trotz dieser Voraussetzungen ist alles wunderbar organisiert und es gibt keine Kritikpunkte (Abgesehen von zu kleinen Räumen bei vielen Talks). Ich konnte einige interessante Vorträge besuchen und es wären bestimmt mehr geworden, wäre ich manchmal nicht…read more

0

jQuery data-* Attribute auslesen

Posted by in JavaScript

Da arbeitet man schon so lange mit jQuery und kennt doch noch nicht alle Tricks. Diesen hier finde ich ganz interessant, deswegen bekommt er einen Blog spendiert. Die Ausgangssituation Immer wieder sind in Elementen Attribute der Form data-* zu finden. Nehmen wir als Beispiel einmal das folgende Element.

Bis jetzt habe ich das immer so ausgelesen.

Spezieller Zugriff auf data-* Es gibt aber einen besseren Weg, den jQuery speziell für diese Art von Attributen bereitstellt. Nämlich die Methode data.

Damit lassen sich data-* Attribute bequem auslesen. Und…read more

0

BOBKonf 2017: Erfahrungsbericht

Posted by in Konferenz

Das erste Mal auf der BOBKonf… Der Titel der Konferenz beinhaltet Best of Breed. Es geht darum, die besten Werkzeuge für moderne Softwareentwicklung auszusuchen. Interessanterweise heißt das für viele Teilnehmer funktionale Programmierung, allen Sprachen voran Haskell. Dadurch bekommt die Veranstaltung einen ganz eigenen Touch, da die Community sehr offen ist und man auch als hauptsächlich objektorienter Programmierer willkommen ist. Die Vielseitigkeit, Offenheit und Intelligenz der Teilnehmer wurde schon vor der Konferenz klar, da ich beim Pre-Dinner Einige kennen lernen durfte. Leider konnte ich nicht überall etwas beisteuern, da ich viele…read more

0

Frankfurter Entwicklertag 2017: Erfahrungsbericht

Posted by in Konferenz

Ich war am 16./17.02 beim Frankfurter Entwicklertag unterwegs. Die Konferenz wurde zum vierten Mal an der Goethe Universität Frankfurt veranstaltet und glänzte für mich durch sehr interessante Vorträge. Insgesamt war es wieder professionell organisiert und die Betreuung der Sprecher war super. Mein Vortrag lief dadurch auch stressfrei. Tag 1 – Conference Day Nach der Begrüßung ging es mit einem kurzen Talk von John Fletcher los: Entwicklertag in der Praxis. John berichtete über die Ideen, die er aus dem Entwicklertag 2016 mitgenommen hatte und wie er sie umgesetzt hat. Dabei waren…read more

0

Software QS-Tag 2016

Posted by in Allgemein, Konferenz

Der Software QS-Tag 2016 in Nürnberg wird von der imbus AG organisiert und ist die größte Konferenz über Software-Qualität in Deutschland. Zum jetzigen Zeitpunkt ist es die am besten durchorganisierte Konferenz, an der ich teilnehmen und sogar sprechen durfte. Die Qualität der Beiträge ist hoch und die Sprecher sind offensichtlich erfahren. Ich fühle mich geehrt, dass ich ebenfalls etwas beitragen durfte. Location Das Sheraton Hotel ist eine exklusive Location direkt am Hauptbahnhof in Nürnberg. Die Räume sind stilvoll eingerichtet und die Mitarbeiter sind fast schon zu übereifrig 😉 . Auch…read more

0

TypeScript: Interfaces Instanzseite und statische Seite

Posted by in TypeScript

Wie ist das mit der Instanzseite und der statischen Seite in TypeScript? Dieser Beitrag ist ein Erklärungversuch. Im Handbuch steht dazu Folgendes When working with classes and interfaces, it helps to keep in mind that a class has two types: the type of the static side and the type of the instance side. Einleuchtend oder? Für mich nicht! Vor allem wenn man sich das anschließend im Handbuch dargelegte Beispiel zu Gemüte führt. Meine Erklärung Meine Erklärung nimmt Interfaces zu Hilfe und eine Abbildung In TypeScript kann ein Interface die sogenannte…read more

0

BED-Con 2016

Posted by in Allgemein

Da bin ich also auf den Berlin Expert Days (bedcon.org) gelandet und das gleich mit zwei Vorträgen. Was für ein Erlebnis. Aber fangen wir von vorne an. Location Die Urania liegt mitten in Berlin. Man kann das KaDeWe sogar vom Eingang aus sehen. Das Gebäude scheint organisch gewachsen zu sein, denn die Gänge sind verwinkelt und den Raum für meinen ersten Vortrag hätte ich beinahe nicht gefunden 😉 . Ansonsten ist alles Top. Es gibt genug zu Essen und vor jedem Vortragsraum Kaffee und kalte Getränke. In jedem Raum sind…read more

0

Verbindung zu MSSQL-Server aufbauen: Die URL

Posted by in Datenbanken, Java

Die Tage hatte ich in einem Legacy-Projekt die Ehre eine Verbindung zu einer MSSQL-Datenbank aufzubauen. Nachdem ich das Ganze schon im DbVisualizer in kürzester Zeit zum Laufen gebracht habe, sollte das wohl kein Problem darstellen. Denkste! Ich habe ca. 10 verschiedene Zusammensetzungen der URL testen müssen, bis es endlich gefunkt hat. Die Lösung Ich arbeite mit Java 1.7 und verwende den offiziellen Treiber von Microsoft: sqljdbc41.jar. Die URL setzt sich dann so zusammen (Java-Code)

Vielleicht hilft das dem Einen oder Anderem weiter 🙂

0

Clean Code Days 2016

Posted by in clean code, Konferenz

Die Clean Code Days 2016. Unendlicher Clean Code, Testen in Perfektion und die Erkenntnis, dass wir Entwickler nur die Manager von den vielen Vorteilen überzeugen müssten, die Clean Code mit sich bringt. Die sind es nämlich, die für eventuellen Mehraufwand zu Projektbeginn dem Kunden klarmachen müssen, was er im Endeffekt gewinnt. Michael Puder hat das in seiner Abschlusskeynote bestätigt. So bleibt meine Frage, die mich schon immer quälte weiterhin unbefriedigend beantwortet! Es geht vorwärts Die Bewegung geht aber in die richtige Richtung. Clean Code im kleinen Einführen, die Vorteile dadurch…read more

0