Frameworks und Tools zur Entwicklung plattformübergreifender Desktop-Apps - Best of
Plattformübergreifende Softwareentwicklung ist aufgrund der steigenden Nachfrage nach kostengünstigen und kurzfristigen Softwareprojekten die Stunde der Stunde. Ein solcher Entwicklungsprozess spart viel Aufwand und ermöglicht das Schreiben von a einzelne Codebasis um Apps zu erstellen mehrere Plattformen.
In diesem Beitrag zeigen wir die 9 beste Frameworks und Toolkits zur Codierung Plattformübergreifende Desktop-Software.
1. Haxe
Als Open-Source-, High-Level- und Multi-Plattform-Programmierwerkzeug, HaxeEine einzige Codebasis erstellt Anwendungen oder Spiele für zahlreiche Zielplattformen. Als Compiler kompiliert er den Quellcode für verschiedene Desktop-Plattformen und den Die Kompilierung erfolgt von Quelle zu source, d. h. sein Compiler erzeugt äquivalenten Quellcode in verschiedenen Sprachen für verschiedene Plattformen..
Es ist ein voller Satz Sprache Compiler, eine Reihe von Bibliotheken, nützliche Tools, und Haxe-basiert Frameworks oder Tools.
Pros:
- Es ist viel schneller als andere ähnliche Compiler wie Flash oder Flex
- Sein Bytecode ist viel schneller als das von anderen erzeugte Äquivalent
- Mit dieser einfachen Sprache kann der Programmierer so weit gehen, wie er möchte
- Die Plattform kann über ORM problemlos mit anderen Plattformen kommunizieren
Nachteile: Programme mit Native AS3-Bibliotheken werden von Haxe noch nicht vollständig unterstützt. Außerdem steigen die Probleme mit der Fehlerbehebung nach der Übersetzung des Quellcodes in der Sprache, sodass mit Haxe etwas aufgebaut wird erfordert hohe Codierungsstandards.
2. Elektron
Ursprünglich für den Atom-Code-Editor erstellt, Elektron ist ein Open-Source-Framework entwickelt von GitHub. Durch die Verwendung der neuesten Node.js können Entwickler plattformübergreifende Desktop-Benutzeroberflächen mit gängigen Web-Technologien schreiben: HTML, CSS und JavaScript. Es wird von Unternehmen wie Microsoft, Facebook, Stack und Docker verwendet.
Pros:
- Es basiert vollständig auf Webstandards, die fast jeder Webentwickler bereits kennt, sodass er Desktop-Software schreiben kann
- Entwickler können sich auf die Kernfunktionalität der Anwendungen konzentrieren, indem sie sich bereits um die harten Teile der Softwareentwicklung kümmern
- Für Desktop-Apps stehen verschiedene Kernfunktionen zur Verfügung, wie z. B. Auto-Update, Crash-Reporter, Ersteller des Installationsprogramms und systemspezifische Funktionen
Nachteile: Keine integrierte MVC wird von Electron zur Verfügung gestellt und Plattformen für Chrome werden nicht vollständig unterstützt noch nicht Neben diesen ist es auch nicht so reichhaltig oder reif wie NW.js.
3. NW.js
NW oder Node Webkit ermöglicht die Entwicklung plattformübergreifender Software mit modernen Webtechnologien wie HTML, CSS3 und JavaScript, einschließlich WebGL. Es bietet Unterstützung für alle Node.js-APIs und die meisten Module von Drittanbietern. Außerdem können Sie Apps für Windows, Mac OS X und Linux erstellen. Dieses Framework ist ein komplettes Paket für Webentwickler, die Desktop-Anwendungen mit Webtechnologien erstellen möchten.
Pros:
- Es verfügt über eine beeindruckende Liste von Demo-Anwendungen und Videospielen
- Es bietet großartige Community-Unterstützung mit leicht durchsuchbaren Antworten
- Einige seiner Funktionen sind reichhaltiger und ausgereifter als die von Electron
Nachteile: Einige in Electron verfügbare Funktionen für harte Arbeit, z. B. Auto-Updater und Absturzberichte, sind in NW.js nicht integriert. Das Bauen mit NW.js erfordert jedoch im Gegensatz zu anderen Lösungen mehr Aufwand und zusätzliche Module.
4. 8
8. Entwickler können Code schreiben und Anwendungen für verschiedene Zielbetriebssysteme erstellen, darunter Windows, Mac OS X, Linux, Raspberry Pi, Android sowie iOS. Das Hauptaugenmerk liegt auf der plattformübergreifenden Kompatibilität sowie der Sicherheit der endgültigen Softwareprodukte oder -vertriebe.
Pros:
- Es wird mit einer Reihe von wichtigen Bibliotheken unterstützt, die die Abhängigkeit von externen Bibliotheken minimieren
- Sie können an nur einer Stelle Funktionen hinzufügen oder Fehler beheben. Die Änderungen werden automatisch auf allen unterstützten Plattformen aktualisiert
- Es bietet einen verbesserten Schutz, indem die Anwendungen in einen verschlüsselten Container verpackt werden, wodurch sie manipulationssicher und schwer zu knacken ist
Nachteile: Geschäftsanwendungen stehen im Vordergrund dieses Rahmens, und bislang wird den Spielen weniger Unterstützung gewährt. Außerdem ist es so sehr teuer, Sie müssen sich für die kostenpflichtigen Abonnements entscheiden, um die volle Funktionalität zu erhalten.
5. B4J
B4J ist eher ein IDE als plattformübergreifendes Framework für die Entwicklung von Anwendungen, die auf Windows-, Mac OS- und Linux-Systemen sowie auf ARM-Boards (wie Pi) laufen. Diese Lösung lässt Sie schreibe Code in B4X-Sprache, eine moderne Version von Visual Basic. Ihre Anwendung ist für alle unterstützten Plattformen konzipiert und funktioniert nach den Bemerkungen der Benutzer auf den gängigen Desktop-Plattformen.
Pros:
- Es erstellt Apps mit mehr Leistung und weniger Aufwand
- Die IDE ähnelt eher Visual Studio, so dass sich VB-Entwickler wie zu Hause fühlen
- Außerdem können Web-Apps erstellt werden, bei denen die Geschäftslogik auf der Serverseite vorhanden ist
Nachteile: Dieses Framework bietet keinen vollständigen Support für einen Obfuscator. Obwohl in der Vergangenheit sehr beliebt, ist Visual Basic heutzutage nicht mehr so beliebt wie Java und andere Sprachen Die Suche nach Visual Basic-Entwicklern kann eine schwierige Aufgabe sein.
6. Kivy
Kivy ist eine Open Source Python-GUI-Framework Multi-Touch-Anwendungen für Desktop- und mobile Plattformen zu erstellen. Mit diesem Framework kann Software, die denselben Code verwendet, auf allen unterstützten Plattformen ausgeführt werden, d. H. Windows, Mac OS X, Linux, Android und iOS. Diese plattformübergreifend Apps werden in Python codiert, Ihre GUI wurde jedoch mit den Kivy-APIs erstellt, die verschiedene Layouts und Widgets bereitstellen.
Pros:
- Es bietet eine integrierte Grafikbibliothek zum Erstellen von umfangreichen Benutzeroberflächen
- Es verfügt über eine Zwischensprache, um benutzerdefinierte Widgets einfach zu erstellen
- Es behauptet, bessere Leistung als HTML / CSS / JS-Anwendungen zu bieten
Nachteile: Das Kivy-Framework benötigt viel Speicherplatz für die Entwicklungsumgebung und funktioniert oder läuft auf Linux-Entwicklungsplattformen reibungsloser. Abgesehen davon benötigt Kivy auf einigen Geräten einige Minuten, um zu starten.
7. Xojo
Xojo ist eine Programmierumgebung für Windows, Mac OS X und Linux. Mit seiner Xojo-IDE ist es einfach zu bedienen, Drag & Drop-UI-Builder, und eine eigene Sprache für die Codierung Ihrer Anwendung. Die IDE ermöglicht auch das sofortige Testen der App. Wenn sie fertig ist, konvertiert sie diese App zur Ausführung auf mehreren Plattformen.
Pros:
- Es bietet Unterstützung für das Erstellen von Apps für Desktop, Web, iOS und Pi
- Es unterstützt über 40 integrierte UI-Komponenten, die auf mehreren Plattformen funktionieren
- Es bietet integrierte Unterstützung für Grafiken, Datenbankserver und verschiedene Protokolle
Nachteile: Manchmal, Der Umgang mit Datenbanken in Xojo ist schwierig und der Programmierer muss einige zusätzliche Tools installieren, um dies zu erleichtern. Darüber hinaus die langfristige Nutzung seiner IDE bittet um eine kommerzielle Lizenz, das ist leider nicht frei.
8. Enyo
Enyo ist ein Open-Source-JavaScript-Framework, Wie bei Electron können Entwickler Apps in nativer Qualität für Desktop, Mobile und TV erstellen. Enyo kann in allen relativ modernen und standardmäßigen webbasierten Umgebungen eingesetzt werden. Es ist kampferprobt und wird mit einem schönen, plattformübergreifenden UI-Toolkit für die Erstellung umfassender Benutzeroberflächen geliefert.
Pros:
- Es ist ein reines JavaScript-Framework, das anpassbare, wählbare Module oder Komponenten enthält
- Es ermöglicht das Erstellen wiederverwendbarer Module, so genannter Komponenten, und strukturiert das gesamte Projekt in diesen kleinen Modulen
- Es erstellt eine Quellenzuordnung mit gebündeltem JavaScript, um Probleme zu beheben
Nachteile: Dieses Framework bietet keine Unterstützung für IE8. Enyo ist nicht so leicht zu entwickeln wie seine Konkurrenten wie Haxe und Electron, die ihren größeren Gemeinden zu verdanken sind.
9. WINDEV Express
WINDEV Express ist ein IDE kombiniert mit Framework zum Erstellen von plattformübergreifender Software. Dieses Framework ermöglicht die Entwicklung von Anwendungen für zahlreiche Plattformen, einschließlich Windows, Mac OS, Linux und mehr. Es bietet seine eigene Sprache an WLanguage Erstellen Sie die plattformübergreifenden Apps mithilfe der IDE.
Pros:
- Es bietet einen eigenen integrierten UI-Builder zum Erstellen von umfangreichen Benutzeroberflächen
- Es bietet Unterstützung für zahlreiche Datenbanken, einschließlich Oracle, MySQL und mehr
- Es ermöglicht die Verwendung mehrerer moderner UI-Funktionen wie Farbbänder und Workflow-Steuerelemente
Cons: WINDEV ist komplizierter als andere Frameworks wegen seiner Französische Veröffentlichungen und das unvollständige Übersetzung der Richtlinien für jedes Feature.