Netzwerk Software für Mac und Win

Hallo,

ich möchte gern eine kleine SNMP-Software schreiben, welche jedoch sowohl auf einem Windows- als auch Mac-Rechner funktionieren sollte. Ziel der Software ist es zu mehreren Slaves in einem Netzwerk eine Kommunikation aufbauen zu können (via SNMP).

Ist das überhaupt möglich in einer Programmiersprache / -umgebung für MAC und Windows? Am besten wäre eine C-Sprache - kenn C gut und etwas C++ und C# in Verbindung mit Microsoft .NET. Oder bin ich hier mit Java besser beraten?

Freu mich über eure Anregungen und Vorschläge!

Gruß
patrick

Hallo,

ich möchte gern eine kleine SNMP-Software schreiben, welche
jedoch sowohl auf einem Windows- als auch Mac-Rechner
funktionieren sollte. Ziel der Software ist es zu mehreren
Slaves in einem Netzwerk eine Kommunikation aufbauen zu können
(via SNMP).

Ist das überhaupt möglich in einer Programmiersprache /

sind 2 frameworks , nicht wirklich kompatibel lol :smile:

aber je nach modul aufbau , konnte der selber code verwendet werden, aber in der ausführung wirds wohl nix mit einer exe die auch auf mac läuft :smile:

-umgebung für MAC und Windows? Am besten wäre eine C-Sprache -
kenn C gut und etwas C++ und C# in Verbindung mit Microsoft
.NET.

Oder bin ich hier mit Java besser beraten

ja , fregt sich nur obs schnell genug für viele verbindungen ist ,socket technisch

Freu mich über eure Anregungen und Vorschläge!

Gruß
patrick

Hallo patrick,

Ist das überhaupt möglich in einer Programmiersprache /
-umgebung für MAC und Windows? Am besten wäre eine C-Sprache -
kenn C gut und etwas C++ und C# in Verbindung mit Microsoft
.NET.

C und C++ ist als Sprache kein Problem, aber C# auf dem MAC ?

Wenn du nicht nur die neuen MACs mit Intel-CPU unterstützen willst, brauchst du auf alle Fälle zwei unterschiedliche Backends für den Compiler.
Bei gcc ist das kein Problem, da kannst auch auch beide Compiler unter der selben Entwicklungsumgebung verwenden.

Das nächste ist dann dein Code. Windows und OS-X haben unterschiedliche APIs. Die Betriebssystem-Aufrufe sind also unterschiedlich und du musst dafür zweierlei Code schreiben.
Der Code für die Ablaufsteuerung kann, je nach Konzept, identisch ausfallen.

MfG Peter(TOO)

Hallo Peter,

Wäre in diesem Fall die QT-Library eine gute Wahl? Macht als Prog.-Sprache C oder C++ mehr Sinn?

Gruß
patrick

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

C und C++ ist als Sprache kein Problem, aber C# auf dem MAC ?

Wenn du nicht nur die neuen MACs mit Intel-CPU unterstützen
willst, brauchst du auf alle Fälle zwei unterschiedliche
Backends für den Compiler.

Das wird er immer machen müssen, egal welche C-Programmiersprache er benutzt, weil das Socket-Geraffel sich von Betriebssystem zu Betreibsystem unterscheidet.

Ich würde es mit JAVA versuchen. Das ist wirklich Plattformunabhängig (ok, meistens), und für das SNMP Zeugs gibt es schon fertige Klassen.

Hallo Fragewurm,

Wenn du nicht nur die neuen MACs mit Intel-CPU unterstützen
willst, brauchst du auf alle Fälle zwei unterschiedliche
Backends für den Compiler.

Das wird er immer machen müssen, egal welche
C-Programmiersprache er benutzt, weil das Socket-Geraffel sich
von Betriebssystem zu Betreibsystem unterscheidet.

Was hat das Backend mit dem Betriebssystem zu tun ?

Das Frontend eines Compilers analysiert die entsprechende Sprache (Lexikalisch, Syntax) und bildet daraus einen Zwischencode, oft als Baum.

Im Mittelteil erfolgen dann Optimierungen auf logischer Ebene.

Und das Backend erzeugt dann den Code für eine bestimmte CPU.
Bei manchen Systemen ist/war es üblich, dass der Compiler einen Assembler-Source erstellt. Dann muss dieser erst noch durch den Assembler.
Das Resultat des Compilers ist dann ein Objekt-Format. In diesem sind die Adressen noch nicht festgelegt und es kann auch unaufgelöste Referenzen auf andere Module haben.

Der Linker bastelt dann alle Objekt-Module zusammen (Dazu gehören auch jene in den Bibliotheken), löst die Referenzen auf, legt die Ladeadresse fest und erzeugt die Ausführbare Datei im Format, welches vom Betriebssystem verlangt wird.

Das „Socket-Geraffel“ betrifft den Source-Code und die zu verwendenden Bibliotheken und hat nichts mit dem Backend zu tun.

Die meisten Programmierer kennen aber hat nur das was eine Entwicklungs-Umgebung wie MS-C oder Visual-BASIC und andere Hersteller bieten. Hierbei werden die ganzen Abfolgen hinter der IDE versteckt, sind aber trotzdem grundsätzlich vorhanden.

MfG Peter(TOO)