Begrifflichkeit: Software mit physikalischen Schnittstellen

Tobse

Top Contributor
Hallo zusammen :)

ich bin grade auf der Suche nach einer guten Formulierung für eine Bewerbung.

Ich habe sehr viel mit Web-Technologien gearbeitet, würde aber sehr gern Software mitentwicklen, welche tatsächliche physikalische Schnittstellen hat (von Bildschirm und Tastatur von Sachbearbeitern abgesehen).
Habt ihr mir vllt einen Tipp, wie ich das formulieren kann? Oder gibts dafür sogar einen Fachbegriff?

Grüße,
Tobse
 

sascha-sphw

Top Contributor
In welche Richtung möchtest Du denn gehen, hier gibt es sehr viele Bereiche? Ich selbst habe Roboter und SPS Programmiert, da bist Du sehr Hardwarenahe, aber schöne Hochsprachen sind da Mangelware. Mikrocontroller wäre noch was, aber auch hier ist es dann eher Assembler oder C selten auch C++.

Aber diese Bereiche sind Grund verschieden zum Web.
 

Tobse

Top Contributor
Danke für deine Antwort :)

Hardwarenahe möchte ich auch nicht programmieren - die Features von Java gegenüber C und C++ möchte ich schon gern behalten :D Go oder D wären eine Option, ist aber im Segment Hardware wahrscheinlich nur zu minimalen Anteilen vertreten.
Mir würde es schon reichen, Server zu programmieren, die Sensordaten auswerten o.ä; so in die Richtung IoT.
 

sascha-sphw

Top Contributor
Server zu programmieren, die Sensordaten auswerten
Da fällt mir im Spontan auch nichts ein, aber generell kann ich Dir nur empfehlen Deine Bewerbung gezielt auf eine Stelle zu optimieren, ist zwar eine menge Arbeit, aber es kommt gut an.
Desweiteren würde ich mehr davon rein schreiben, warum die Firma mit Dir einen guten Fang machen und nicht, dass Dir die Firma einen Gefallen damit tun würde. Du musst den Leser neugierig machen, er soll das Gefühl bekommen etwas zu verpassen wenn er Dich nicht zu einem Gespräch einlädt.

Ich persönlich habe mich dann aber immer eher für den Sourcecode interessiert, aber ich bin ja auch kein HR Manager.
 

Thallius

Top Contributor
Warum denn? Nur weil man einen Mikrokontroller anbindet, heisst das doch nicht, dass der Server, der das Empfängt, auch Low-Level programmiert sein muss? Oder doch?

Ganz ehrlich? Das werden hier viele nicht verstehen aber wenn mich eine Firma als Consultant angagiert und die Frage ist mit was entwickelt werden soll, dann werde ich niemals Java empfehlen. Denn im Endeffekt bist du dann immer abhängig von der JRE wovon es alle paar Wochen eine neue gibt und die immer wieder neue und alte Fehler haben.

Ich habe jetzt einmal den Fehler gemacht und ein Tool für einen Konzern in Java geschrieben. Plötzlich funktioniert dieses Tool mit Java 8 101 nicht mehr, mit 102 geht es dann wieder. Blöd nur das es in dem Konzern andere Tools gibt die wiederum mit 102 nicht laufen dafür aber mit 101. wieder andere Tools laufen nur mit Java 6 und gar nicht mit Java 8...

Das ist einfach total Unprofessionel und nicht akzeptabel...

Da nehme ich lieber eine Compilersprache. Da läuft das Programm und fertig.

Wenn ich nun also im Hardware Bereich unterwegs bin, dann muss ich noch sicherer sein, dass meine Software immer funktioniert und nicht davon abhängig ist ob irgendeine andere Komponente mit der richtigen Version installiert ist,

Gruß

Claus
 

InfectedBytes

Top Contributor
Außerdem kommt es nicht selten vor, das Sensordaten auch mal unsigned sind und das ist mit Java nunmal etwas problematisch. Da muss man dann ggf. unschön mogeln, wie etwa mit Long.compareUnsigned(x,y).
 

Tobse

Top Contributor
Da fällt mir im Spontan auch nichts ein, aber generell kann ich Dir nur empfehlen Deine Bewerbung gezielt auf eine Stelle zu optimieren, ist zwar eine menge Arbeit, aber es kommt gut an.
Desweiteren würde ich mehr davon rein schreiben, warum die Firma mit Dir einen guten Fang machen und nicht, dass Dir die Firma einen Gefallen damit tun würde. Du musst den Leser neugierig machen, er soll das Gefühl bekommen etwas zu verpassen wenn er Dich nicht zu einem Gespräch einlädt.
Da hast du 100% Recht - das vergesse ich immer....

Außerdem kommt es nicht selten vor, das Sensordaten auch mal unsigned sind und das ist mit Java nunmal etwas problematisch. Da muss man dann ggf. unschön mogeln, wie etwa mit Long.compareUnsigned(x,y).
Da sehe ich jetzt eher weniger das problem - solange es funktioniert. Im schlimmsten Fall kann ja auch BigInteger Abhilfe schaffen.

Da ist mir @Thallius Argument schon deutlich einleuchtender. Welche Sprache kannst du denn Empfehlen, wenn ich in diesen Bereich möchte? Habe mich deswegen in den letzten Wochen mal mit C++ beschäftigt. Aber so richtig ansprechend finde ich das nicht :/
In einer Stellenausschreibung stand sogar was von mehreren Jahren Node.js Erfahrung - und Node.js ist ja bzgl. Stabilität ein wirklicher Alptraum.
 

Thallius

Top Contributor
Was gefällt dir nicht an C++? Ich finde es nach wie vor eine reizende Herausforderung in dieser Sprache zu Programmieren. Man hat alle Möglichkeiten muss aber eben auch alles selber kontrollieren. Für mich die Krönung der Programmierkunst. Das ist wie Auto fahren mir ESP und ABS (alles wird einem abgenommen = Java) oder eben ein Go-Card ohne alles. Das ist viel schwerer gibt einem aber auch viel mehr Befriedigung wenn man es schafft und beherrscht

Gruß

Claus
 

Tobse

Top Contributor
Was gefällt dir nicht an C++? Ich finde es nach wie vor eine reizende Herausforderung in dieser Sprache zu Programmieren. Man hat alle Möglichkeiten muss aber eben auch alles selber kontrollieren. Für mich die Krönung der Programmierkunst. Das ist wie Auto fahren mir ESP und ABS (alles wird einem abgenommen = Java) oder eben ein Go-Card ohne alles. Das ist viel schwerer gibt einem aber auch viel mehr Befriedigung wenn man es schafft und beherrscht

Gruß

Claus
Genau das ist mein Problem. Die ganzen Arraypointer und Objektkopien sind alles Features, die erst in wirklich krass performance-relevaten Szenarien benötigt werden. Diese ganze Dinge für die ganzen "Alltagsaufgaben" berücksichtigen zu müssen finde ich schlicht lästig. In den ersten Zeilen C++ Code, die ich jetzt geschrieben habe, sind 30% Boundary- und Nullpointer-Checks drin; das stört mich massiv. Vielleicht mache ich auch was falsch :D
 

InfectedBytes

Top Contributor
In den ersten Zeilen C++ Code, die ich jetzt geschrieben habe, sind 30% Boundary- und Nullpointer-Checks drin;
Aber das hast du in Java doch auch^^
In C++ ist es halt nur gefährlicher wenn man sie weglässt ;)

Ansonsten hat C++ auch ne menge toller Features die in Java leider fehlen. Insbesondere structs, unsigned datentypen und operator overloading
 

Tobse

Top Contributor
Nehmen wir also mal an ich möchte jetzt mit C++ arbeiten - für eine Stelle brauche ich Berufserfahrung damit. Und meinen Web-Entwickler Kollegen mit C++ zu kommen brauche ich nicht versuchen. Wie komme ich an die nötige Erfahrung damit?
Die Alternative wäre, dass ich das jetzt hobbymäßig lerne und mich in 1-2 jahren auf eine Junior C++ stelle in diesem Segment bewerbe. Das wäre nicht das, was ich mir jetzt vorgestellt habe... :/
 

tommysenf

Top Contributor
Mir würde es schon reichen, Server zu programmieren, die Sensordaten auswerten o.ä; so in die Richtung IoT.
Du solltest dir klar sein wo genau du hinwillst. Willst du die Sensoren direkt ansprechen, dann kommst du oft nicht um c herum. In größeren Projekten ist es aber meist so, das die Sensoren ihre Werte meist nur ins System "pumpen". Die darauf aufsetzenden Systeme sind dann oft in Java implementiert. Sehr gut kenne ich mich im Gasmarkt aus, da ich hier viele Jahre einer der Hauptentwickler einer der führenden Branchenlösungen war. Auch Geolocation Sachen wie das Flottenmanagement von TomTom ist zum Beispiel komplett in Java implementiert. In letzter Zeit sind mir eigentlich keine größeren Systeme, gerade im IoT Bereich über den Weg gelaufen, welche in C++ implementiert waren.
 

Tobse

Top Contributor
Du solltest dir klar sein wo genau du hinwillst. Willst du die Sensoren direkt ansprechen, dann kommst du oft nicht um c herum. In größeren Projekten ist es aber meist so, das die Sensoren ihre Werte meist nur ins System "pumpen". Die darauf aufsetzenden Systeme sind dann oft in Java implementiert. Sehr gut kenne ich mich im Gasmarkt aus, da ich hier viele Jahre einer der Hauptentwickler einer der führenden Branchenlösungen war. Auch Geolocation Sachen wie das Flottenmanagement von TomTom ist zum Beispiel komplett in Java implementiert. In letzter Zeit sind mir eigentlich keine größeren Systeme, gerade im IoT Bereich über den Weg gelaufen, welche in C++ implementiert waren.
Dieser Auffassung war ich auch. Auf die Hardwarenahe programmierung mit den Sensoren oder Motoren habe ich nicht viel Lust. Die Daten dann aber zentral auszuwerten stelle ich mir aktuell ziemlich interessant vor und das würde ich gerne machen.
Wenn das in C++ geschieht - meintwegen. Ein bisschen mehr Abstraktion (D finde ich z.B. toll, Go oder Swift gingen auch) wäre mir aber schon lieb. Dann kann ich mich beim Coden auf fachliche Korrektheit konzentrieren statt auf Bufferowerflows :/
 

tommysenf

Top Contributor
Die Daten dann aber zentral auszuwerten stelle ich mir aktuell ziemlich interessant vor und das würde ich gerne machen.

Keine Angst, da kommst du mit Java ziemlich weit. Ich würde dir da aber Vorschlagen dich ein wenig mit BigData Sachen wie Hadoop und mit Data Warehousing auseinanderzusetzen, wenn du da noch keine Kenntnisse haben solltest.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Frichard Dokumentation Agiler Software-Entwicklung Softwareentwicklung 4
C Software Entwickeln Softwareentwicklung 22
D Herangehensweise Software-Projekt Softwareentwicklung 1
Bluedaishi Software Kommerziell Vertreiben Softwareentwicklung 34
M Software Urheberrecht Softwareentwicklung 4
S Welche Programmiersprache für eine 3D-Software? Softwareentwicklung 6
R Software-Architekt (Schwerpunkt Java) Softwareentwicklung 9
M Jemand Erfahrung mit safety-critical software sprachen wie ada/SPARKL? Softwareentwicklung 0
T Gibt es eine Software die Texte für Skype automartisch (automassage) sendet ? Softwareentwicklung 4
B NFC/RFID Software zum einfachen Bezahlen Softwareentwicklung 1
Y Software Zertifikat Softwareentwicklung 12
T Software Lizenzverwaltung Softwareentwicklung 8
L Evaluierung von Software Softwareentwicklung 6
BinaryLogic Software für Projektplanung und -Entwicklung Softwareentwicklung 19
I Grundlegende Anforderungen an eine Software Softwareentwicklung 14
M Suche Task-Software (Groupware mit Anpassungsmöglichkeiten) Softwareentwicklung 3
K Mindestanforderung einer Software Softwareentwicklung 7
fastjack Zertifizierung von Software Softwareentwicklung 3
Mike90 Lizenz für eigene software Softwareentwicklung 9
F Aufwändes eines Software Projektes Softwareentwicklung 21
D Wie entwickelt ihr gute Software mit einem GUI? Softwareentwicklung 29
J Java Software nach C++ portieren Softwareentwicklung 6
I Lizensen etc bei kommerzieller Software Softwareentwicklung 13
D LGPL-Lizenz und Entwicklung kommerzieller Software Softwareentwicklung 19
Z Welche Software für Web Anwendungen/Spiel Softwareentwicklung 3
H Unterschied zwischen Software Technik und Engineering? Softwareentwicklung 7
K Software im Bereich Finanzen programmieren Softwareentwicklung 11
A Software update. Wie realisieren? Softwareentwicklung 12
L Fragen zu Software Engineering Softwareentwicklung 6
M Software zur Erstellung eines Pflichtenhefts? Softwareentwicklung 15
S Open Source Software für UML Softwareentwicklung 8
I Software zum Erstellen von ER-Modellen Softwareentwicklung 12

Ähnliche Java Themen

Neue Themen


Oben