Diskussion zum Artikel "Entwicklung einer DLL für eine Machbarkeitsstudie mit C++ Multi-Threading-Unterstützung für MetaTrader 5 unter Linux"

 

Neuer Artikel Entwicklung einer DLL für eine Machbarkeitsstudie mit C++ Multi-Threading-Unterstützung für MetaTrader 5 unter Linux :

Wir beginnen die Reise, um die Schritte und den Arbeitsablauf zu erforschen, wie man die Entwicklung für die MetaTrader 5 Plattform ausschließlich auf einem Linux-System basiert, in dem das Endprodukt nahtlos sowohl auf Windows- als auch auf Linux-Systemen funktioniert. Wir werden Wine und Mingw kennenlernen; beides sind die wichtigsten Werkzeuge für die plattformübergreifende Entwicklung. Vor allem Mingw für seine Threading-Implementierungen (POSIX und Win32), die wir bei der Auswahl der Software berücksichtigen müssen. Anschließend erstellen wir eine Proof-of-Concept-DLL und verwenden sie in MQL5-Code, um schließlich die Leistung der beiden Threading-Implementierungen zu vergleichen. Alles als eine Grundlage, die Sie selbst weiter ausbauen können. Nach der Lektüre dieses Artikels sollten Sie mit der Erstellung von MT-bezogenen Tools unter Linux vertraut sein.

Linux hat ein lebendiges Entwicklungsökosystem und eine gute Ergonomie für die Softwareentwicklung.

Es ist attraktiv für diejenigen, die gerne mit der Kommandozeile arbeiten, die einfache Installation von Anwendungen über den Paketmanager, ein Betriebssystem, das keine Blackbox ist, aber dennoch dazu verleitet, sich mit seinen Interna zu beschäftigen, das für fast alle Untersysteme konfigurierbar ist, wichtige Entwicklungswerkzeuge, die sofort einsatzbereit sind, eine flexible und schlanke Umgebung für die Softwareentwicklung usw.

Das Angebot reicht vom PC-Desktop für Endnutzer bis hin zu Cloud-Lösungen wie VPS oder Cloud-Service-Anbietern wie AWS und Google Cloud.

Ich glaube also fest daran, dass es hier einige Entwickler gibt, die an ihrem bevorzugten Betriebssystem festhalten, aber dennoch in der Lage sein wollen, Produkte für Windows-Nutzer zu entwickeln und zu liefern. Natürlich müssen die Produkte auf allen Plattformen nahtlos und sofort funktionieren.

Normalerweise verwenden MetaTrader 5-Entwickler nur die Programmiersprache MQL5, um ihre Indikatoren/Experten oder verwandte Produkte zu entwickeln und sie dann auf dem Markt zu veröffentlichen, ohne sich Gedanken darüber zu machen, auf welchem Betriebssystem sie basieren. Sie können sich einfach darauf verlassen, dass die IDE von MT5 die Kompilierung und Erstellung der ausführbaren .EX5-Datei vor der Auslieferung übernimmt (vorausgesetzt, sie wissen, wie man MetaTrader 5 unter Linux startet).
Wenn Entwickler jedoch eine nutzerdefinierte Lösung als gemeinsam genutzte Bibliothek (DLL) entwickeln müssen, um zusätzliche Dienste anzubieten, die die MQL5-Programmiersprache allein nicht bieten kann, dann müssen sie mehr Zeit und Mühe aufwenden, um eine Lösung für die Kreuzkompilierung zu finden, Probleme und bewährte Verfahren zu entdecken, sich mit den Tools vertraut zu machen usw.

Autor: Wasin Thonkaew