Hallo zusammen,
mir ist durchaus bewusst, dass wenn es um Programmiersprachen geht, teilweise pseudo-religiöse Ausbrüche bei Diskussionen vorkommen können. Mir geht es hier aber nüchtern betrachtet nur um eine Empfehlung, welche der Sprachen für meine Anwendungszwecke nützlich(er) sein könnte und eure Erfahrungen, nicht darum, welche Sprache "besser" oder "schlechter" ist.
Situation:
Was wären also mögliche Empfehlungen (und warum)?
Gibt es von eurer Seite Anregungen oder Nachfragen dazu? Was würdet ihr für diesen Anwendungsfall nehmen?
mir ist durchaus bewusst, dass wenn es um Programmiersprachen geht, teilweise pseudo-religiöse Ausbrüche bei Diskussionen vorkommen können. Mir geht es hier aber nüchtern betrachtet nur um eine Empfehlung, welche der Sprachen für meine Anwendungszwecke nützlich(er) sein könnte und eure Erfahrungen, nicht darum, welche Sprache "besser" oder "schlechter" ist.
Situation:
- Projektleiter an einem Forschungsinstitut mit einem Team aus 4-5 Mitarbeitern
- Windows ist seitens der IT die offiziell unterstützte Platform / Linux wird aber dennoch von einigen Mitarbeitern als einziges OS auf dem Rechner genutzt (durch die IT geduldet, durch einige Abteilungsleiter gefördert)
- Persönliche Programmiererfahrung:
- C, geringfügig C++
- Java (von JavaCard, über normales Java hin zu WebServices)
- Anwendung:
- Steuerung von eingebetteten Systemen (Mikrocontroller/FPGA) für Datenerfassung
- Erfassung der Daten teilweise über Stunden oder Tage hinweg (Klimakammertests, etc)
- Teilweise auch Auslagerung der Datenerfassung an Studenten für zu vermessende Testobjekte (d.h., einzelnes Gerät, viele Testobjekte, Steuerung dann über GUI zwingend erforderlich)
- Auswertung der erfassten Daten (vmtl. in Matlab bzw. Scilab)
- Vor-Verarbeitung der Daten und/oder Plots parallel zur Datenerfassung oft hilfreich (d.h. man läuft zur Klimakammer und sieht auf dem angezeigten Plot den zeitlichen Verlauf der Rohdaten)
- Anforderungen entsprechend:
- Cross-Platform (Windows / Linux)
- GUI
- Stabil (!!!)
- Kommunikation über USB (virtual ComPort)
- Auslieferung der Anwendung muss als binär-Datei möglich sein (quasi, als copy-paste auf anderen PC)
- Neue Mitarbeiter/Studenten sollten sich in den Code halbwegs leicht einarbeiten können
- Programmieraufwand bis zum Ergebnis möglichst gering (es geht also nicht darum, die beste Software zu schreiben, sondern die Aufgabe zu lösen, was sich ebenfalls durch den zu erwartenden geringen Nutzerkreis begründen lässt)
Was wären also mögliche Empfehlungen (und warum)?
- C/C++ ggf. mit Qt oder GTK als GUI?
- Java?
- Go?
- Swift?
- Rust?
Gibt es von eurer Seite Anregungen oder Nachfragen dazu? Was würdet ihr für diesen Anwendungsfall nehmen?