Programmierblog von Johannes Dienst

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

Async/Await – Fehlerbehandlung, Generatoren

Posted by in JavaScript

Im letzten Blog ging es um Die Grundlagen von Async/Await. Dieser Teil behandelt die Fehlerbehandlung, Probleme die es bei der Verwendung von Async/Await geben könnte und der Basisfunktionalität, ohne die es gar nicht möglich wäre Async/Await in dieser Form bereitzustellen. Fehlerbehandlung Die Fehlerbehandlung mit Async/Await kann man erheblich vereinfachen, indem try/catch-Blöcke verwendet werden. Das geht dann wie im folgenden Code

Dafür muss jedoch die Funktion getInspiration2 geändert werden. Dort muss beim Reject des Promises das error-Objekt zurückgegeben werden.

Vorteil dieser Implementierung ist, dass Fehler sinnvoll abgefangen werden können…read more

0

Karlsruher Entwicklertag 2016: Conference Day

Posted by in JavaScript, Konferenz, TypeScript

Mit etwas Verspätung wegen Urlaub schreibe ich diesmal etwas zu der Konferenz Karlsruher Entwicklertag 2016. Ich muss dazu sagen, dass ich nur am sogenannten Conference Day anwesend war und diesmal sogar zwei Vorträge halten durfte. Organisation Die Organisation war einwandfrei und lies fast keine Wüsche offen. Das ging von den Vorabinformationen per Email (Verzeihen Sie mir bitte die Emails Frau Lippert) bis zur Durchführung. Einige Session wurden professionell aufgezeichnet und die Ausstattung in den Räumlichkeiten funktionierte ohne größere Probleme. Nur das WLAN machte beim Live-Coding zicken. Wie sollte es auch…read more

0

Async/Await in JavaScript – Die Grundlagen

Posted by in JavaScript

Asynchrone Programmierung ist immer wieder eine Herausforderung. Ein häufiges Problem ist die Callback Hell Inzwischen existieren in JavaScript mehrere Möglichkeiten mit der Komplexität umzugehen. Allen voran Promises, die seit ES2015 sogar zum Sprachstandard gehören. Noch einfacher mit Async/Await Mit ES2017 kommt eine weitere Abstraktion hinzu. Sie baut auf Promises auf und der Code liest sich damit wie synchroner Code. Aber fangen wir von vorne an. Zuerst wird eine Funktion mit einem asynchronen Aufruf gebraucht. Dafür benutze ich das API von https://theysaidso.com.

Mit etwas Übung fällt der Fehler in dieser…read more

0

JavaScript-Bug ganz subtil

Posted by in JavaScript

JavaScript ist manchmal eine Sprache, die subtile Bugs produziert. Hier ist die Preisfrage: Was ist an diesem Code-Schnipsel falsch und was sind die Auswirkungen?

Keine Idee? Ich musste auch erst überlegen, da ich solche Fehler eigentlich nirgendwo erwarten würde. Das Problem ist in Zeile 6 zu finden. Die Variable json_data wird dort initialisiert. Leider nicht im lokalen Scope, sondern anscheinend im globalen Scope. Von JSON.parse() wird ein Array zurückgeliefert. Beim Debuggen hat sich dann gezeigt, dass die Array.length nicht zurückgesetzt wird. Hat es die Länge 10 bei einem Durchlauf…read more

0