Projekt-Programmiersprachen

  • Hallo,

    mein geplantes Projekt/teilweise schon gestartet, wird recht umfangreich und da fangen die Probleme schon an. Ich programmiere den Hauptteil meiner Software mit Java, momentan ist der größte Teil der Software GUI, da ich dies für die Uni eh lernen muss. Das Programm soll mir die Möglichkeit geben mithilfe der Gui bestimmte Sensoren zu initialisieren mit Variablen die nur für mich sind(position des sensors im festgelegten Raum) aber auch für die Verwendung des Sensors entscheidend sind(Pin an dem Sensor angeschlossen ist). Da ein Teil meiner gewünschten Sensoren sich nur mit Python bzw. nicht mit Java ausführen lassen muss ich zu dem auch zurück greifen. Aber momentan führe ich den Messvorgang nur einmal aktiv aus. Der Plan ist das später das Programm ohne Anzeigen auf der GUI die Sensoren anspricht und die Datenloggt. So zu meiner Frage:

    Hat jemand schon Erfahrung mit sowas gemacht und kennt eine elegantere Variante Python auszuführen. Als mit Inputstream und einem BufferedReader oder macht es mehr Sinn das Hauptprogramm in Python zu schreiben und Java nur für die Verwendundung der GUi zu benutzen.

    Also das Projekt wird vermutlich so groß das es am Ende unzählige Sensoren loggt deren Werte analysiert und entsprechend reagiert.

    Mit freundlichen Grüßen

  • Servus smierx:

    Danke Linus antwort hilft nur leider gar nicht. Java ist für den Sensor wohl zulangsam. ...

    Sorry, aber das ist in meinen Augen Unsinn ...

    Python ist, wie auch Java im weitesten Sinne, eine Interpretersprache.

    Der Laufzeit-Unterschied dürfte in einer Grössenordnung liegen, der kaum ins Gewicht fällt. Und falls doch, dann hast Du ein ganz anderes Problem: dann spuckt Dir nämlich das Betriebssystem mit dem Scheduler in die Suppe.

    Nur mal so als Info am Rande ...

    cu,

    -ds-

  • Hallo,

    Zitat


    Java ist für den Sensor wohl zulangsam.

    Wohl kaum... Python ist für alles mögliche bekannt, aber sicher nicht Geschwindigkeit (jedenfalls nicht die Referenzimplementierung CPython).

    Du könntest, wenn du bei Java bleiben möchtest, Jython nutzen. Das ist eine in Java geschrieben Python-Implementierung, mit der du vollen Zugriff auf die Java-Klassen hast. Kleiner "Nachteil: Jython kann nur Python 2.7, es gibt AFAIK keine Implementierung für Python 3. Oder du nimmst GraalVM, mit der sich wohl auch Python und Java kombineren lassen.

    Die kannst natürlich auch die Programme autark laufen lassen, dein Python-Programm muss halt nur eine Schnittstelle nach aussen haben. Da gibt's ja viele Möglichkeiten wie eine REST-API, Datenbank, Message Broker etc.

    Gruß, noiselfoor

  • Ich denke auch, dass die Geschwindigkeit von Java mit Sicherheit nicht das Problem ist (habe im Studium mal einen Benchmark verschiedener Sprachen auf dem Pi gemacht und Java war ein ganzes Stück schneller als Python)

    Vermutlich hast du eher das Problem, dass es für Java keine Bibliotheken / Libraries gibt, welche die Sensoren ansprechen.

    Grüsse

    Peter

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!