Have an amazing solution built in RAD Studio? Let us know. Looking for discounts? Visit our Special Offers page!
DelphiRAD StudioResearch

Delphi bietet langfristige Machbarkeit für sich ständig ändernde Elektronen und End-of-Life-WPF .NET Framework

wp1 long term

Wie verhalten sich Delphi, WPF .NET Framework und Electron im Vergleich zueinander und wie lässt sich ein objektiver Vergleich am besten durchführen? Embarcadero gab ein Whitepaper in Auftrag , um die Unterschiede zwischen Delphi, WPF .NET Framework und Electron beim Erstellen von Windows-Desktopanwendungen zu untersuchen. Die Benchmark-Anwendung – ein Windows 10 Calculator-Klon – wurde in jedem Framework von drei freiwilligen Mitarbeitern von Delphi Most Valuable Professionals (MVPs), einem freiberuflichen WPF-Experten und einem freiberuflichen Electron-Entwickler neu erstellt. In diesem Blog-Beitrag werden wir die Langzeit-Machbarkeitsmetrik untersuchen, die Teil des im Whitepaper verwendeten Funktionsvergleichs ist.

calc

Langfristige Machbarkeit

Wenn Unternehmen Delphi als Entwicklungsframework auswählen, investieren sie in ein proprietäres Framework (das den Quellcode der Laufzeitbibliothek enthält) mit Vorabkosten und einer optionalen jährlichen Aktualisierungsgebühr. Für diese Kosten erhalten sie ein stabiles, abwärtskompatibles und wachsendes Framework und können sicher sein, dass heute entwickelte Anwendungen in Zukunft unterstützt und gewartet werden können.

Windows Presentation Foundation mit .NET Framework bietet Unternehmen ein wirtschaftliches Framework mit der vollständigen Unterstützung von Microsoft, enthält jedoch alle Herausforderungen, die sich aus den Entscheidungen von Microsoft ergeben. WPF hat eine kürzere Geschichte als Delphi, wurde jedoch 2018 als Open-Source-Version veröffentlicht, was einigen Versionen trotz der Bindung an das proprietäre .NET Framework für die meisten Windows-Entwicklungen einen guten langfristigen Ausblick geben könnte. .NET Framework 4.8 war laut Microsoft die letzte Version am 18. April 2019.

Electron ist eine kostenlose Open-Source-Plattform, die Unternehmen die Möglichkeit bietet, Anwendungen von jedem wichtigen Betriebssystem aus zu entwickeln. Die Zukunft von Electron ist jedoch ungewiss. Das Electron-Projekt wird von GitHub betrieben, einer Tochtergesellschaft von Microsoft. Es ist das neueste der drei Frameworks und befindet sich noch in der Flitterwochenphase. Es fehlt eine native IDE, die Unternehmen die Wahl lässt, aber auch einige Annehmlichkeiten wie integrierte Kompilierung und Testbibliotheken entfernt. Unternehmen, die interne Tools entwickeln, hätten es mit Electron schwerer als die anderen Frameworks.

wp1 feasibility badge

Werfen wir einen Blick auf jedes Framework.

Delphi

Delphi wächst, reift und expandiert seit 1995. Die Entwicklung behält die Abwärtskompatibilität in dem Maße bei, dass eine Anwendung von 1995 mit minimalen Änderungen auf die aktuelle Delphi-Version portiert werden kann. Umfassende Dokumentation unterstützt die Wartung, und ein vollständiges Support-Team steht für Upgrade-, Migrations- oder Fehlerbehebungshilfe zur Verfügung. Zum Zeitpunkt dieses Schreibens ist die neueste Version von Delphi in RAD Studio 10.4.1 Sydney verfügbar, das am 2. September 2020 veröffentlicht wurde. Möchten Sie mehr erfahren? Lesen Sie die Versionshinweise vieler Delphi-Versionen .

Für einige Zusammenhänge auf der Programmiersprachen-Zeitachse erschien C ++ 1983, Python 1991, Java 1995, PHP 1995, JavaScript 1995 und Delphi 1995. 1995 war ein Geburtsjahr für viele dieser Programmiersprachen, wie Sie sehen können. Die Delphi Anniversary-Website enthält eine Delphi Release Timeline von 1995 bis heute. Hier ist ein Auszug aus der Zeitleiste der Veröffentlichungen der letzten 25 Jahre.


DELPHI 1 – 14. FEBRUAR 1995

16-Bit-Windows 3.1-Unterstützung, Visual Two-Way-Tools, Komponenten / VCL, Datenbankunterstützung über BDE und SQL Links, Datenbankdaten werden zur Entwurfszeit live übertragen

DELPHI 2 (1996)

32-Bit-Unterstützung für Windows 95, Datenbankraster, OLE-Automatisierung, Vererbung visueller Formulare, lange Zeichenfolgen, Enthaltenes Delphi 1 für 16-Bit

DELPHI 3 (1997)

Schnittstellen (COM-basiert), Code Insight, Komponentenvorlagen, DLL-Debugging, WebBroker, ActiveForms, Komponentenpakete, mehrschichtige MIDAS-Architektur

DELPHI 4 (1998)

Docking, Anker und Einschränkungen, Methodenüberladung, dynamische Arrays, Windows 98-Unterstützung  

DELPHI 5 (1999)

Desktop-Layouts, Frames, XML-Unterstützung, DBGo für ADO, Sprachübersetzungen  

DELPHI 6 (2001)

Strukturfenster, SOAP-Webdienste, dbExpress, BizSnap, WebSnap, DataSnap   

DELPHI 7 (2002)

Entwicklung von Webanwendungen, Windows XP-Themen          

DELPHI 8 (2003)

.NET-Unterstützung                                            

DELPHI 2005 (2004)

Namespaces mit mehreren Einheiten, Error Insight, Registerkarte „Verlauf“, for..in, Funktionsinlining, themenfähige IDE, Refactorings, Platzhalteranweisung, Daten-Explorer, Integrierter Komponententest     

DELPHI 2006 (2005)

Überladen von Operatoren, statische Methoden und Eigenschaften, Designer-Richtlinien, Formularpositioniereransicht, Live-Code-Vorlagen, Blockvervollständigung, Zeilennummern, Änderungsleisten, Synchronisierungsbearbeitung, Code-Faltung und Methodennavigation, Debugging-Tooltipps, durchsuchbare Tool-Palette, FastMM-Speichermanager , Unterstützung für MySQL, Unicode-Unterstützung in dbExpress, TTrayIcon, TFlowPanel, TGridPanel

DELPHI 2007 (2006)

MS Build, Build-Ereignisse, Build-Konfigurationen, Windows Vista-Unterstützung – Glassing, Theming, dbExpress 4 – Verbindungspooling, Delegiertreiber, CPU-Viewer-Fenster, FastCode-Verbesserungen, IntraWeb / AJAX-Unterstützung, Begrüßungsseite, Sim-Schiff von Englisch, Französisch, Deutsch , Japanisch

DELPHI 2009 (2008)

Unicode, Generika, anonyme Methoden, Multifunktionsleistensteuerelemente, DataSnap, Build-Konfigurationen, Klassen-Explorer, Editorfenster für Typbibliotheken, PNG-Unterstützung                           

DELPHI 2010 (2009)

Attribute, Erweiterte RTTI, Direct2D-Zeichenfläche, Windows 7-Unterstützung, Touch / Gesten, Quellcode-Formatierer, Thread-spezifische Haltepunkte, Debugger-Visualisierer, IOUtils-Einheit für Dateien, Pfade und Verzeichnisse, Quellcode-Audits und -Metriken, Hintergrundkompilierung, Quellcode für MIDAS. DLL

DELPHI XE (2010)

Bibliothek für reguläre Ausdrücke, Subversion-Integration, dbExpress-Filter, Authentifizierung, ProxyGeneration, JavaScript Framework, REST-Unterstützung, Indy WebBroker, Cloud – Amazon EC2, Microsoft Azure, Build-Gruppen, benannte Threads im Debugger, Befehlszeilenprüfungen, Metriken und Dokumentationsgenerierung

DELPHI XE2 (2011)

64-Bit-Windows, Mac OSX, FireMonkey, Live-Bindungen – FireMonkey und VCL, VCL-Stile, Einheitenbereichsnamen, Plattformassistent, DataSnap – Konnektoren für mobile Geräte, Cloud-API, HTTPS-Unterstützung, TCP-Überwachung, dbExpress-Unterstützung für ODBC-Treiber, Bereitstellung Manager

DELPHI XE3 (2012)

Metropolis UI für Windows 8, 7, Vista und XP, FM-Aktionen, Berührungen / Gesten, Layouts und Anker, FM-Unterstützung für Bitmap-Stile, TMaterial-Quelle für FM-3D-Komponenten, FM-Audio / Video, VCL / FM-Unterstützung für Sensorgeräte, FM Positionssensorkomponente, Unterstützung für virtuelle Tastaturen, DirectX 10-Unterstützung

DELPHI XE4 (APRIL 2013)

iOS-Unterstützung – Gerät, Simulator, iOS App Store, iOS-Unterstützung für Standard- und Retina-Displays, iOS-Stile, Retina-Stile, virtuelle Tastaturen, Mobile Form Designer, TWebBrowser-Komponente, iOS ARC (automatische Referenzzählung) für alle TObject-Klassen, Platform Services, Benachrichtigungs-, Standort-, Bewegungs- und Orientierungssensorkomponenten, TListView-Komponente, Mac OSX-Vollbildunterstützung, Bereitstellungsmanager für iOS-Geräte, universelle FireDAC-Datenzugriffskomponenten, InterBase – IBLite und IBToGo

DELPHI XE5 (SEPTEMBER 2013)

Android-Unterstützung – Geräte und Emulator. Betriebssystemversionen: Jelly Bean, Ice Cream Sandwich und Gingerbread, Benachrichtigungskomponente, Unterstützung im iOS 7-Stil, Konfigurierbarer Formular-Designer für mobile Geräte, Bereitstellungsmanager für Android-Geräte, REST Services-Clientzugriffs- und Authentifizierungskomponenten, Android-Unterstützung für alle XE4 FM und Datenbankfunktionen, die oben aufgeführt sind

DELPHI XE6 (APRIL 2014)

Windows 7- und 8.1-Stile, Zugriff auf Cloud-basierte RESTful-WEB-Dienste, FireDAC-kompatibel mit mehr Datenbanken, vollständig integrierte InterBase-Unterstützung                           

DELPHI XE7 (SEPTEMBER 2014)

FireMonkey-Anwendungen für mehrere Geräte unterstützen sowohl Desktop- als auch mobile Plattformen, eingebettete IBLite-Datenbank für Windows, Mac, Android und iOS, Multi-Display-Unterstützung, Multi-Touch-Unterstützung und Gestenänderungen, Immersive-Modus im Vollbildmodus für Android, FireMonkey unterstützt den Pull- Funktion zum Aktualisieren für TListView unter iOS und Android, FireMonkey-Funktion zum Speichern des Status

DELPHI XE8 (APRIL 2015)

GetIt Package Manager, FireDAC-Verbesserungen, neue Embarcadero-Community-Symbolleiste, native Präsentation von TListView, TSwitch, TMemo, TCalendar, TMultiView und TEdit unter iOS, interaktive Karten, neue Optionen für die Medienbibliothek, InputQuery unterstützt jetzt das Maskieren von Eingabefeldern

DELPHI 10 ‚SEATTLE‘ (AUGUST 2015)

Android Background Services-Unterstützung, FireDAC-Unterstützung für die NoSQL MongoDB-Datenbank, FireMonkey steuert die zOrder-Unterstützung für Windows, neue TBeaconDevice-Klasse zum Verwandeln eines Geräts auf einer der unterstützten Plattformen in ein „Beacon“, StyleViewer für Windows 10 Style in Bitmap Style Designer, High -DPI Awareness und 4K-Monitore unterstützen, Windows 10-Stile, Unterstützung für Android-Dienste in der IDE, Unterstützung für das Aufrufen von WinRT-APIs

DELPHI 10.1 ‚BERLIN‘ (APRIL 2016)

Android 6.0-Unterstützung, Windows Desktop Bridge-Unterstützung, Adressbuch für iOS und Android, neuer ListView Item Designer, neues CalendarView-Steuerelement, QuickEdits für VCL, Unterstützung für hohe DPI-Werte unter Windows, Hinweis auf Änderungen der Eigenschaften, EMS Apache Server-Unterstützung, GetIt-basiertes Webinstallationsprogramm

DELPHI 10.2 ‚TOKYO‘ (MÄRZ 2017)

64-Bit-Linux-Unterstützung für Delphi, FireDAC bietet Linux-Unterstützung für alle Linux-fähigen DBMS-, MariaDB-Unterstützung (v5.5), MySQL-Unterstützung für v5.7 und Firebird-Unterstützung für Direct I / O, QuickEdits für FMX und neue VCL-Steuerelemente für Windows 10, aktualisiertes IDE-Look & Feel (dunkles Thema), RAD Server-Bereitstellungslizenz enthalten

DELPHI 10.3 ‚RIO‘ (NOVEMBER 2018)

C ++ 17 für Win32, neue Delphi-Sprachfunktionen, FireMonkey Android zOrder, native Steuerelemente und API-Level 26, Verbesserungen für Windows 10, VCL und HighDPI, umfassende Modernisierung der IDE-Benutzeroberfläche, Erweiterung der RAD Server-Architektur, Qualitäts- und Leistungsverbesserungen

DELPHI 10.3.1 ‚RIO‘ (FEBRUAR 2019)

Erweiterte Unterstützung für Geräte der iOS 12- und iPhone X-Serie. Neugestaltung der RAD Server Console-Benutzeroberfläche und Migration zum Ext JS-Framework (verfügbar über GetIt). Verbesserte FireDAC-Unterstützung für Firebird 3.0.4 und Firebird Embedded. Verbesserungen der HTTP- und SOAP-Clientbibliothek unter Windows. Zwei neue IDE-Produktivitätswerkzeuge: Lesezeichen und Navigator. 15 neue benutzerdefinierte VCL Windows- und Multi-Device FireMonkey-Stile.

DELPHI 10.3.2 ‚RIO‘ (JULI 2019)

Delphi macOS 64-Bit, C ++ 17 für Windows 64-Bit, C ++ LSP Code Insight-Verbesserungen, RAD Server-Assistenten und Bereitstellungsverbesserungen, erweiterte Firebase-Android-Unterstützung, Delphi Linux Client-Anwendungsunterstützung

DELPHI 10.3.3 ‚RIO‘ (NOVEMBER 2019)

Delphi Android 64-Bit-Unterstützung, iOS 13 und macOS Catalina (Delphi) Unterstützung, RAD Server Docker-Bereitstellung, Enterprise Connectors in Enterprise & Architect Edition

DELPHI 10.4 ‚SYDNEY‘ (MAI 2020)

Deutlich verbesserte native Windows-Hochleistungsunterstützung, höhere Produktivität durch blitzschnelle Code-Vervollständigung, schnelleren Code mit verwalteten Datensätzen und verbesserte parallele Aufgaben auf modernen Multi-Core-CPUs, über 1000 Qualitäts- und Leistungsverbesserungen und vieles mehr.

DELPHI 10.4.1 ‚SYDNEY‘ (SEPTEMBER 2020)

RAD Studio 10.4.1 konzentriert sich stark auf Qualitätsverbesserungen bei IDE, Delphi Code Insight (LSP), paralleler Bibliothek, SOAP und XML, C ++ – Toolchain, FireMonkey, VCL, Delphi Compiler und iOS-Bereitstellung.

WPF .NET Framework

WPF wurde 2006 veröffentlicht und zusammen mit dem .NET Framework entwickelt. Es wurde 2018 von Microsoft als Open-Source-Lösung bereitgestellt und enthält mehrere Roadmaps, die auf das Engagement und das Wachstum der Community in naher Zukunft hinweisen. Wesentliche .NET-Änderungen und die sich ändernden Designentscheidungen von Microsoft wirken sich auf die langfristige Machbarkeit von WPF aus. WPF .NET Framework 4.8 war laut Microsoft die endgültige Version von .NET Framework und wurde am 18. April 2019 veröffentlicht.

WPF wurde 2006 in .NET Framework 3.0 eingeführt. Gemäß einem Artikel auf der CodeProject-Website sind die WPF-Versionen und -Erweiterungen in dieser Tabelle aufgeführt:

WPF Version Release (YYYY-MM) .NET Version Visual Studio Version Major Features
3.0 2006-11 3.0 N/A Initial Release.
WPF development can be done with VS 2005 (released in Nov 2005) too with few additions.
3.5 2007-11 3.5 VS 2008 Changes and improvements in:
Application model, data binding, controls, documents, annotations, and 3-D UI elements.
3.5 SP1 2008-08 3.5 SP1 N/A Native splash screen support, New WebBrowser control, DirectX pixel shader support.
Faster startup time and improved performance for Bitmap effects.
4.0 2010-04 4.0 VS 2010 New controls: Calendar, DataGrid, and DatePicker.
Multi-Touch and Manipulation
4.5 2012-08 4.5 VS 2012 New Ribbon control
New INotifyDataErrorInfo interface
4.5.1 2013-10 4.5.1 VS 2013 No Major Change
4.5.2 2014-05 4.5.2 N/A No Major Change
4.6 2015-07 4.6 VS 2015 Transparent child window support
HDPI and Touch improvements

Das Folgende ist ein Auszug aus der Wikipedia .NET Framework-Versionsverlaufsseite für .NET Framework 4.6.1 bis 4.8.

.NET Framework 4.6.1 – Die Veröffentlichung von .NET Framework 4.6.1 wurde am 30. November 2015 angekündigt. Diese Version erfordert Windows 7 SP1 oder höher. Zu den neuen Funktionen und APIs gehören:

.NET Framework 4.6.2 – Die Vorschau von .NET Framework 4.6.2 wurde am 30. März 2016 angekündigt. Sie wurde am 2. August 2016 veröffentlicht. Diese Version erfordert Windows 7 SP1 oder höher.

.NET Framework 4.7 – Am 5. April 2017 gab Microsoft bekannt, dass .NET Framework 4.7 in Windows 10 Creators Update integriert wurde und ein eigenständiges Installationsprogramm für andere Windows-Versionen verspricht. An diesem Datum wurde ein Update für Visual Studio 2017 veröffentlicht, um Unterstützung für das Targeting von .NET Framework 4.7 hinzuzufügen. Das versprochene eigenständige Installationsprogramm für Windows 7 und höher wurde am 2. Mai 2017 veröffentlicht, hatte jedoch Voraussetzungen, die nicht im Paket enthalten waren.

.NET Framework 4.7.1 – .NET Framework 4.7.1 wurde am 17. Oktober 2017 veröffentlicht. Neben den Korrekturen und neuen Funktionen wird ein Problem mit der Abhängigkeit des d3dcompilers behoben. Es bietet außerdem eine sofortige Kompatibilität mit .NET Standard 2.0.

.NET Framework 4.7.2 – .NET Framework 4.7.2 wurde am 30. April 2018 veröffentlicht. Zu den Änderungen gehören Verbesserungen an ASP.NET, BCL, CLR, ClickOnce, Netzwerk, SQL, WCF, Windows Forms, Workflow und WPF. Diese Version ist in Server 2019 enthalten.

.NET Framework 4.8 – .NET Framework 4.8 wurde am 18. April 2019 veröffentlicht. Es war die endgültige Version von .NET Framework. Alle zukünftigen Arbeiten flossen in die .NET Core-Plattform ein, die schließlich zu .NET 5 und höher wird. Diese Version enthielt JIT-Verbesserungen, die von .NET Core 2.1 portiert wurden, High DPI-Verbesserungen für WPF-Anwendungen, Verbesserungen der Barrierefreiheit, Leistungsaktualisierungen und Sicherheitsverbesserungen. Es unterstützt Windows 7, Server 2008 R2, Server 2012, 8.1, Server 2012 R2, 10, Server 2016 und Server 2019 und wird auch als Windows-Container-Image geliefert. Die neueste Version ist 4.8.0 Build 3928, veröffentlicht am 25. Juli 2019 mit einer Größe des Offline-Installationsprogramms von 111 MB und einem Datum der digitalen Signatur am 25. Juli 2019.

-WIKIPEDIA

Elektron

Electron wurde 2013 veröffentlicht, wird von GitHub aktiv entwickelt und gewartet und hat neue Technologien wie Apple Silicon (ca. November 2020) schnell unterstützt. Es fehlt die Historie und die stabile Langlebigkeit, die erforderlich sind, um zu bestimmen, ob die im Jahr 2020 gebauten Electron-Apps bis 2030 überleben werden. GitHub ist eine Tochtergesellschaft von Microsoft. Electron bietet eine kostenlose Alternative zu Delphi und WPF, Vertrautheit mit Front-End-Entwicklern und plattformübergreifende Funktionen auf Kosten des IP-Schutzes, der Standard-IDE-Tools und der Anwendungsleistung.

Laut der Electron Release-Timeline (https://www.electronjs.org/docs/tutorial/electron-timelines) sind hier die Releases.

Version -beta.1 Stable Chrome Node
2.0.0 2018-02-21 2018-05-01 M61 v8.9
3.0.0 2018-06-21 2018-09-18 M66 v10.2
4.0.0 2018-10-11 2018-12-20 M69 v10.11
5.0.0 2019-01-22 2019-04-24 M73 v12.0
6.0.0 2019-05-01 2019-07-30 M76 v12.4
7.0.0 2019-08-01 2019-10-22 M78 v12.8
8.0.0 2019-10-24 2020-02-04 M80 v12.13
9.0.0 2020-02-06 2020-05-19 M83 v12.14
10.0.0 2020-05-21 2020-08-25 M85 v12.16
11.0.0 2020-08-27 2020-11-17 M87 v12.18
12.0.0 2020-11-19 2021-03-02 M89 v14.x

Delphi bietet die sichersten langfristigen Aussichten, die beste Sicherheit für geistiges Eigentum und die einfachste interne Anpassung auf Kosten eines einmaligen kommerziellen Lizenzkaufs. Die Eintrittsbarriere von WPF ist geringer und bietet bessere Eingabehilfen, unterliegt jedoch den .NET-Überarbeitungen von Microsoft, ist schwieriger anzupassen und kann problemlos dekompiliert werden. Electron ist absolut kostenlos und kann auf jeder der drei großen Desktop-Plattformen entwickelt werden. Diese Flexibilität wird jedoch durch seine ungewissen langfristigen Aussichten und durch die Unterstützung von Unternehmenssponsoring und Community-Unterstützung für die weitere Entwicklung bezahlt.

Entdecken Sie alle Metriken im Whitepaper „Ermitteln des besten Entwickler-Frameworks durch Benchmarking“:

Laden Sie das Whitepaper „Delphi vs. WPF vs. Electron für Windows Desktops“ herunter


Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.
Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

Über den Autor

Direktor von Delphi Consulting für GDK Software USA. Viele softwarebezogene Patente, darunter Swipe- und Pattern-Entsperrung und Suchmaschinen. Erste Silber- und Gold-Delphi-Abzeichen auf Stack Overflow Ehemaliger Entwickleranwalt für Embarcadero Technologies. Langjähriger Programmierfan, insbesondere mit Delphi. Autor, Podcaster/YouTuber, Improvisator, Redner, Vater und Freund.

Kommentieren

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.

IN THE ARTICLES