Forgot your password?

Conference slides of S&S Media Group
until september 2019

DIREKT BESTELLEN

Bestehendes Abonnement zum entwickler.kiosk-Zugang erweitern

Bitte wählen Sie Ihr bestehendes Abonnement:

Volltextsuche

Ihre Suchergebnisse für:

No content found!

EKON 22

05. bis 7. November 2018
Inselstraße 2 Meliá Düsseldorf
40479 , Düsseldorf - Deutschland

Monday - 05. November 2018

09:00 bis 10:00
Keynote: Delphi 10.3 Preview

In this keynote, Delphi Product Manager Marco Cantu will offer a preview of the coming 10.3 version of Delphi, including new language features like inline variables, High DPI additions to the VCL and new Android features for FireMonkey, along with the revamped IDE, new RAD Server components, RTL optimizations, extended WinRT support and more.

Keine Slides vorhanden
10:15 bis 11:15
Delphi Internals - über Klassen, Objekte und Co.

Delphi in Einzelteile zerlegt – wie funktionieren eigentlich Objekte, Klassen und Co?Jeder nutzt sie jeden Tag: Klassen, Objekte und Interfaces. Aber wie funktionieren die eigentlich intern? Was genau macht eigentlich eine virtuelle Methode beim Aufruf? Was ist ein gemanagter Datentyp und wie sind strings intern aufgebaut? Die Session wird all diese Fragen beantworten und auf einer Tour durch die Tiefen von System.pas und anderen grundlegenden Units unter anderem folgende Bereiche erklären: Aufbau von Objekten, Klassen und Interfaces. Was ist eine VMT? Virtuelle Methoden, Aufrufkonventionen und Parameter. Wie sind strings aufgebaut?

Softwareschutz und Lizenzierung sicher und einfach in eine Delphi-Anwendung integrieren

In der Session werden die Tools und API von CodeMeter für Schutz und Lizenzierung vorgestellt. Im praktischen Beispiel wird gezeigt, wie ausführbare Dateien automatisch komplett verschlüsselt werden, wie einzelne Funktionen dynamisch zur Laufzeit entschlüsselt werden und wie man per API-Aufrufe Lizenzen anzeigen und Fehlerfälle abfangen kann.

Clean Code Guidelines Proposal

We won’t speak about the code style - where we put the “begin” keyword is mostly a matter of taste and habit. But how the object pascal strong typing system, and its language expressiveness may help writing clean(er) code. Abstract SOLID principles could help define the class and services hierarchy. After years of server-side coding, we will propose some practical guidelines for cleaner object pascal programming, to reduce technical debt, and allow cross-platform/cross-compiler support. As there is no definitive rule, discussion will be welcomed from your own experiment!

11:30 bis 12:30
Report craftsmanship: Tips and tricks

Introducing FastReport VCL 6 – Reporting Tips and Tricks Fast Reports produces professional reporting tools for software developers. Learn all about this great reporting tool widely used by Delphi and C++ Builder developers. See how the new features will widely expand abilities for your document creation and help you create advanced reports.

Memory Management und ARC

Früher konnten eingefleischte Desktop-Entwickler ARC weitgehend außer Acht lassen. In den letzten Delphi Versionen hat sich das etwas geändert. Delphi Berlin hat uns Weak References für Interfaces auf der Desktop Platform gebracht und seit Delphi Tokyo wissen wir, dass wir uns mit ARC, dem automatischen Reference Counting, auch für die Linux Platform auseinandersetzen müssen. Grund genug sich das Memory Management von Delphi etwas genauer anzuschauen und das nicht nur im Hinblick auf ARC und Interfaces sondern auch mit einem Blick auf andere Datentypen vom klassischen Pointer bis zum String oder dynamischen Array. Ein Blick auf nützliche Tool die dem Entwickler helfen Speicherlöcher zu finden, werfen wir auch.

Delphi ist nicht nur Desktop: HTML/JavaScript Client mit Sencha Ext JS und Embarcadero RAD Server

Datenbanken und Funktionen zentral Ihren Apps und Anwendungen zur Verfügung stellen: Das geht seit etlichen Versionen mit Delphi und DataSnap bzw EMS/RAD Server. Client-seitig muss es dabei nicht Delphi sein: Man kann beliebige Clients daran anbinden: Delphi, HTML/JavaScript, aber auch C#, PHP, Java, etc. Mit der JSON/REST-basierten Middleware des RAD Servers haben Sie die Möglichkeit dies in der Applikationsschicht inklusive Benutzerverwaltung und Auswertungsmöglichkeiten durchzuführen und auch wahlfrei Client-Anwendungen dafür zu entwickeln. Dieser Vortrag zeigt einen Durchstich von der Datenbank, über die Middleware RAD Server hin zu einem HTML-Client mit Senchas EXT JS.

13:30 bis 14:30
Einführung in Machine Learning

In dieser Session zeigt Max Kleiner vier Gruppen des ML auf: Regression, Dimension Reduction, Clustering und Classification. ML erkennt Muster und Gesetzmäßigkeiten in den Lerndaten. Die meisten ML-Projekte scheitern angeblich an fehlender Datenkonsolidierung und infolge nicht vorhandener Hypothese. Anhand des bekannten IRIS Dataset werden die 4 Gruppen mit je 4 Algorithmen durchgegangen und dieser Mangel vermieden.

Creating modern web applications using the single-page application model using RAD component based development with Delphi

In this session, I’d like to bring RAD component based web development using TMS WEB Core (http://web.tmssoftware.com) with which rich web clients can be fully programmed using Pascal language, a component framework, binding to other JavaScript based UI controls such as jQuery controls. The web clients can connect to microservices / REST APIs, such as TMS XData, Embarcadero RAD server, node.js, asp.net core microservices etc. With TMS WEB Core it is also possible to use the now web-enabled TMS FNC component framework, allowing to fully reuse UI control logic / code between Windows, macOS, Android, iOS, Linux and web applications.

Einführung in Scrum als Methode der agilen Softwareentwicklung

Was ist Scrum? Was steckt hinter den verschiedenen Begriffen und welche Abläufe gibt es? Worin besteht der Unterschied zu klassischen Entwicklungsmodellen, wie z. B. dem Wasserfallmodell. Dieser Vortrag gibt eine Einführung in die agilen Entwicklungsmethode Scrum, erklärt die Begriffe, Abläufe und verschiedenen Rollen. Neben den Vor- und Nachteile werden auch die Grenzen dieser Entwicklungsmethode aufgezeigt.

14:45 bis 15:45
The Delphi Language Evolution

This session focuses on the Delphi language and will cover both the most recent features added to language and some creative and unexpected use of the Modern Object Pascal we have available today. The session will also highlight some trends and directions in the language evolution.

Keine Slides vorhanden
Angewandte Kryptographie

Im ersten Teil des Vortrags werden die Grundlagen der Kryptographie wie Hashfunktionen, Symmetrische und asymmetrische Verschlüsselung vorgestellt. Im zweiten Teil werden Zertifikate und deren Einsatzgebiete behandelt. Der dritte Teil zeigt legendäre Fehler, die selbst einen guten Algorithmus durch Implementierungsfehler nutzlos machen können. Im abschließenden Teil wird eine kurze Vorstellung von Post-Quantenkryptographie gezeigt.

ORM - Einführung mit mORMot

Es gab bereits viele Frameworks für Delphi, um Objekte einfach und strukturiert in Datenbanken zu hinterlegen. In dieser Session erkunden wir grundlegende Prinzipien der Datenverwaltung mittels ORM-Tools. Beispiele werden mithilfe des mORMot-Framework von Arnaud Bouchez präsentiert. mORMot ist ein kostenfreies OpenSource-Framework für den professionellen Einsatz.

16:15 bis 17:15
Die Delphi ToolsAPI am praktischen Beispiel

Die Delphi ToolsAPI ist ein mächtiges Werkzeug um die Funktionalität der IDE zu erweitern oder anzupassen. Die Vielzahl der verfügbaren IDE Plugins zeigt die Vielfalt der Möglichkeiten. Am Beispiel eines CodeCoverage Plugins für die Delphi IDE werden die wichtigsten Interfaces mit möglichen Implementierungen und Verwendungen gezeigt.

Building user interfaces with Firemonkey

In this session Andreas Magni will cover most common topics a developer faces while building UIs with FMX. Achieving layout responsiveness, list controls and their customization, live bindings techniques. A session with examples and hints to help you get the most out of FMX.

Von der Idee zur App: Agile Konzeption mit Storyboards

Erfolgreiche Apps sehen nicht nur gut aus, sondern bieten vor allem eine exzellente Usability. Besonders im Enterprise-Umfeld spielen intuitive Bedienung und die proaktive Unterstützung der Anwender eine entscheidende Rolle. Um dies zu erreichen, müssen alle Stakeholder in den Design-Prozess eingebunden werden. Hierbei können Storyboards helfen. Denn anders als statische Wireframes vermitteln sie dem Anwender einen guten Eindruck vom Verhalten der App. Zudem bieten sie eine solide Grundlage für die Entwicklung. Jörg Neumann zeigt Ihnen an Beispielen aus der Praxis, wie gute Storyboards entworfen werden und welche Faktoren für ein gutes App-Design wichtig sind.

17:45 bis 18:30
Multithreading mit OmniThreadLibrary

OmniThreadLibrary ist eine herausragende multithreading Bibliothek für Delphi. Was ist die Philosophie dahinter und woher kommt die Motivation? Was bringt uns die OmniThreadLibrary tatsächlich? Warum sollten wir überhaupt OTL nutzen? Wo ist eigentlich der Unterschied zu Delphi parallel programming library, vorgestellt in Delphi XE7 also PPL? Die Antworten benötigen einen tieferen Einblick in die Konzepte. Jedoch es ist möglich, dies bald festzustellen. Neben anderen Unterschieden konzentriert sich PPL hauptsächlich auf die Erstellung und Verwaltung von Threads auf einer niedrigeren Ebene. Auf der anderen Seite fokussiert sich OmniThreadLibrary viel mehr auf den Entwickler selbst um ihm eine saubere, übersichtliche, angenehme Arbeit mit Threads zu ermöglichen und alle Begrenzungen und Umständlichkeiten, die oft die parallele Verarbeitung in jedem Projekt mitbringen muss, leicht und elegant zu überwinden. Sodass man nicht nur auf der tieferen Ebene auf alles zugreifen kann. Man arbeitet eher auf einer höheren abstrakten Ebene und interessiert sich viel mehr für die effektivste Lösung des Problems, mithilfe von abstrakten Konstrukten wie Task, Future, Pipeline, Map. OTL kümmert sich währenddessen um alle Tricks rund um die Threads.

Keine Slides vorhanden
Machine Learning II

Das neue Zauberwort heißt Machine Learning. Max Kleiner zeigt konkret drei Anwendungen mit TensorFlow, Scikit-learn oder dewresearch.com in VS-Code, C++ und Delphi API. Anhand eines neuronalen Netzes der Handschrifterkennung lassen sich die Anwendungen auch grafisch darstellen. TensorFlow ist eine plattformunabhängige Open-Source-Programmbibliothek für künstliche Intelligenz bzw. maschinelles Lernen im Umfeld von Sprache, Big Data, Data Science und Bildverarbeitungsaufgaben.

Modernization of legacy VCL projects

Bogdan will present a strategy for modernization classic VCL projects, which have reached a size that is difficult to maintain, simultaneously development team is overloaded with current tasks. Such scenario is common and prevent improvements and major changes. Author’s plan arose during Bogdan’s consultations with the Polish teams. It consists of 4 main phases allowing to incrementally modernize the architecture of the classical VCL project and approach of the team. In long term, it will allow to improve developers satisfaction, increase delivery efficiency and reduce the number of errors.

Tuesday - 06. November 2018

09:00 bis 10:00
OpenSSL - Quo vadis?

Dieser Vortrag präsentiert die Geschichte von OpenSSL, erklärt die größten vergangenen Sicherheitslücken der freien Software-Bibliothek, berichtet über die Neuausrichtung der Entwicklung und informiert über den aktuellen Stand. Zusätzlich wird über Alternativen, wie z. B. LibreSSL gesprochen.

Creative Delphi Debugging Techniques

Debugging represents a big part of development, perhaps one of the biggest. We all know about breakpoints, single-stepping and watches, but what else can we do to help work through bug scenarios and resolve problems? This session looks at a number of techniques, tricks, and utilities to help make the chore of debugging a bit more productive. Warning: this session may contain the CPU window!

10:30 bis 11:30
Elastic Delphi - Using An Elasticsearch Document Store With Delphi

Delphi is primarily targeted to relational database development, so this talk will serve as an introduction to the Elasticsearch document storage system. We begin with a discussion of structured vs. unstructured data and then move on to a description of Elasticsearch itself - what it is and, more importantly, what it isn't. Then we will look at the advantages and disadvantages of using it. I will then show some basic code in Delphi using Indy components to interact with an ES document store. Creation of documents, updating, deleting, all with code samples. After this we look at the bulk update API, and potential pitfalls of updating more than one index in a single bulk operation. Finally, we will discuss structure of basic search request, query and filter, with relevant code samples.

Mobile View Management

One of the biggest challenges facing developers of mobile applications in Delphi is how best to manage multiple views. The TTabControl provides the basic mechanics of switching between views, and a common approach is to simply define each view on a page of the tab control. However, it is impractical to put all controls for all views onto one form. Another approach is to use frames for each view, but frames do not display mobile styles, and more importantly, it is very easy for inline instances of frames to become out of sync with source frames. Furthermore, neither of these approaches offer any support for view navigation. In this session, a new approach is presented that simplifies view management, facilitates view navigation, and isolates view definitions.

Schneller ans Ziel: Tipps und Tricks zum aktuellen Delphi

Delphi hat eine Vielzahl von Tools rund um die IDE (Integrierte Entwicklungsumgebung) und etliche Erweiterungen in der IDE, die vielen (oder zumindest einigen) unbekannt sind. Diese Session zeigt die Tools, Produktivitätserweiterungen und Tipps & Tricks für Delphi: Tastaturshortcuts, die man kennen sollte, Tools aus dem bin-Verzeichnis, Nützliches aus GetIt  und weitere Plug-In.

11:45 bis 12:45
Datenschutz für Datenbankentwickler

Durch die Androhung hoher Bußgelder ist die Europäische Datenschutzgrundverordnung (EU-DSGVO) derzeit in aller Munde. Der aktualisierte Datenschutz stellt hohe Anforderungen an die Informationssysteme. Um die Anwender zu unterstützen, können viele der Anforderungen direkt in der Datenbank implementiert werden. In dieser Session werden die Anforderungen vorgestellt, Lösungsmöglichkeiten erarbeitet und direkt in eine Beispiel-Datenbank implementiert.

High Performance Pascal Code On Servers

Rich RAD applications may consume a lot of resources. Client pays – and they are not so many. But when you start to migrate your business logic on the server side e.g. by publishing REST services, you will meet new performance requirements. Profiling should be the first step to avoid premature optimization, which is the root of all evil (Knuth). But when some bottlenecks are identified, we will introduce some simple data structures and algorithms to make process actually faster, with minimal refactoring. A fun session about how to write faster code, sometimes by looking at the Delphi CPU view – even if you don’t know assembly.

Einer git noch - Workflow und Branching-Modell mit Git

Git nutzen Sie schon lange?! Changesets zusammenstellen und zum Server pushen sind Ihr Tagesgeschäft! Und wie sieht Ihr Branching-Modell aus? Das Branching-Modell beschreibt, welche Branches definiert und wie sie genutzt werden. Dabei isolieren Feature-Branches Änderungen voneinander und erhöhen die Nachvollziehbarkeit. Release-Branches überführen die Software in Produktion und werden für Fehlerkorrekturen genutzt. Ich zeige Ihnen ein leicht zu beherrschendes Branching-Modell und wie sie mit Hilfe einiger einfacher Regeln einen erfolgreichen Workflow gestalten. Dabei werden wir Hooks erstellen, um mit Branching-Policies die Qualität der Commits zu sichern. Einige Tipps & Tricks und das Arbeiten mit SourceTree runden die Thematik ab.

13:45 bis 14:45
Azure Cloud mit Delphi

In der Session schauen wir uns an, wie wir die Azure Cloud aus Delphi heraus nutzen können. Wir streifen kurz den Connect über FireDAC auf die Azure SQL-Datenbank und schauen uns dann konkret die Delphi-Komponenten für den Zugriff auf Blob, Queue und Tableservices an und diskutieren Möglichkeiten zum Zugriff auf weitere Dienste der Azure Cloud.

Building and Deploying Delphi Applications to Platform Stores

The app store ecosystems have provided a dramatic shift for developers of independent apps, with large revenues coming from direct sales, advertising, and in-app purchases. Delphi offers direct support from the IDE for Apple iOS App Store, Google Android Play Store, and Microsoft Windows 10 Store. This session covers the overall ecosystem, mixing general information and some direct experience, and highlights Delphi features supporting stores, and suggestions and best practices for using them and making a business from the app store ecosystems.

Keine Slides vorhanden
MARS-Curiosity REST library: state of the art

MARS-Curiosity is an open source REST library for Embarcadero Delphi (https://github.com/andrea-magni/MARS), easy to use, lightweight yet powerful and easy to integrate with other technologies. In this session I will provide an overview of the library, focusing on the most recent developments and additions.

15:15 bis 16:15
User Experience Design für Entwickler

Schluss mit schlecht gemachten Oberflächen! Gute Apps sehen nicht nur schick aus, sondern sind vor allem benutzbar. Doch wie entwickelt man eine gute Usability? Jörg Neumann zeigt Ihnen Techniken, wie Sie Apps leicht entwerfen können, die Ihre Anwender lieben. Zudem zeigt er, wie Sie ohne Reibungsverluste vom ersten Entwurf bis zur fertigen Implementierung kommen.

IDE Tips & Tricks

It is no surprise that RAD Studio developers spend most of their time working in the IDE. What is surprising, is that many RAD Studio developers are not aware of many of the productivity features available. In this session, Ray Konopka highlights many of his favorite IDE tips and tricks including the new QuickEdit Designer. Some tips focus on improving IDE navigation, some tips accelerate code editing, others simplify form design, but all of them will enhance your IDE experience.

Divide and conquer with TFrameStand

In this session I will cover a very debated topic: How to properly separate UI from application code. TFrameStand component enables some very useful techniques to separate UI from application code but a recent improvement to the component's DI functionalities push this topic the next level. We'll see together how to build an application where UI and application code are easily separated, making it possible to exchange implementation where needed (different platform, testing purposes, fine tuning).

16:30 bis 17:30
Learn How to Build Data-Intensive Web Applications for the Enterprise, Faster

Do you want to know how to develop complex cross-platform enterprise web applications? How can you come from an idea to a working prototype in a couple of days? How can you visualize and handle in a browser huge enterprise data sets in Grids, PivotGrids, Trees and Charts? In her presentation Olga Petrova will show you a detailed overview of Sencha Ext JS and its technical advantages for developing business-critical data-intensive web applications.

Inherent Beauty: The Art of Inheritance

From base classes to interposer classes, inheritance provides you with a maximum of code reusability and maintainability. This presentation demonstrates a variety of powerful techniques that leverage inheritance.

Service-Orientierte Entwicklung

Anwendungen werden heutzutage immer komplexer. Ein Schritt deren Entwicklung zielorientierter voran zu treiben, ist die Kapselung von Aufgaben in Micro-Services. In dieser Session erkläre ich Ihnen anhand eines einfachen Beispiels, wie Sie Daten über mehrere Micro-Services verteilt verarbeiten können.

Wednesday - 07. November 2018

09:00 bis 12:30
Workshop: Getting REST with mORMot Step by Step

This workshop will show how to integrate some existing Delphi application with REST functionalities offered by the Open Source mORMot framework. We will start from an existing classical DB application, and then define a new service running under Windows and Linux to host the new features. The legacy RAD client will be enhanced, and third-party may connect to the server using JSON. After some quick architecture introduction, we will focus on code and best practices, focusing on the needed steps to integrate new ways of thinking in an existing project.

Workshop: Event Storming für Domain-Driven Design

Im Domain-Driven Design ist es sehr wichtig, ein gutes Domänenmodell zu haben. Allerdings wird nirgendwo so wirklich erklärt, wie man ein gutes Domänenmodell unter Mitwirkung aller Beteiligten erstellen kann. Hier schafft Event Storming Abhilfe. Mit Hilfe dieser Technik kann man ein gutes Domänenmodell Schritt für Schritt erstellen, erweitern und verfeinern - und das innerhalb eines einzigen Tages! Gleichzeitig wird noch jede Menge Domänenwissen zwischen den Domänenexperten und den restlichen Projektbeteiligten ausgetauscht. Beim Modellieren lassen sich sehr einfach und schnell verschiedene Szenarien ausprobieren, man kann mehrere Varianten gegeneinanderstellen und vergleichen, um so die beste Lösung zu finden - und das ganz ohne eine Zeile Code zu schreiben. Trotzdem sind die Modelle sehr nahe am Code und an der Logik. Dabei werden keine langweiligen UML-Diagramme gezeichnet, sondern es wird mit Post-It's an einer großen Modellierungsfläche gearbeitet, so dass alle involviert sind. In diesem Workshop werden wir uns anhand einer vorgegebenen Domäne damit beschäftigen, ein solches präzises Domänenmodell in mehreren Stufen zu entwickeln und zu verstehen. Freut Euch auf ein actionreiches Abenteuer :-)

13:30 bis 17:00
Workshop: Domain-Driven Design für Einsteiger

In diesem Workshop werden wir uns mit Domain-Driven Design auseinandersetzen und uns anschauen, was es genau ist und wobei es uns helfen kann. Begriffe wie Ubiquitous Language, Bounded Context, Context Mapping, Event Storming, Strategical und Tactical Design werden danach keine Fremdworte mehr für uns sein. Dabei streifen wir alle Bereiche vom ersten Umgang mit Anforderungen bis hin zur konkreten Umsetzung in Architektur und Code.

Workshop: Reporting with FastReport: A Fast Track to Great Reporting

Since Delphi XE2, Delphi has shipped with FastReport, one of the most powerful reporting tools available. This in-depth workshop begins by showing you how to install the free Embarcadero version of FastReport, followed by a step-by-step demonstration of basic report creation. The workshop continues by showing you how to create increasingly sophisticated reports, including data-based reports, summary reports, master-detail reports, reports with sub-reports, reports with graphs, mailing labels, and more. You'll also learn a few nifty tricks along the way. Fast Report CEO Michael Philippenko will support Cary Jensen as guest speaker.

X
- Gib Deinen Standort ein -
- or -