Moin Marc, From: "Marc Eißele" <jazzman@fodpower.de>
ich habe mal vor langer Zeit einen Chatserver in Java geschrieben, jetzt bin ich am überlegen das Teil (aus Übungszwecken) auf Linux in C++ zu portieren. Jetzt frage ich mich natürlich ob ich die Architektur/Klassenhierarchie des Servers in C++ so übernehmen kann oder ob man C++SocketServer unter Linux
Die Klassenhierarchie, warum nicht?
anders baut. Der Javaserver ist multithreaded und startet für jede Verbindung
Mit C++ kannst Du Threads oder auch fork() nehmen, von der Funktion wird's keine Unterschiede geben... Von der Socket Programmierung kenne ich Java & C, in Java schreibst Du etwas weniger Quellcode...
einen neuen Thread und gibt dem ein Socket-Objekt mit über das er dann kommunizieren kann(wies wahrscheinlich schon 1000de vor mir gemacht haben). Natürlich habe ich aussen rum noch einiges gebastelt wie z.B. eine Chatter-Hierarchie mit verschiedenen Rechten und mehrere Gruppen und Räume. Meine eigentliche Frage ist also: Würde man das in C++ genauso machen, sprich ein Thread nimmt Verbindungen an und startet Chatter-Objekte in einem Thread und gibt diesen ein Socket Objekt mit oder läuft da die Implementierung anders?
Eigentlich plant man ein Programm ja erstmal unabhängig von der Sprache, IMHO sollten Deine bisherigen Entwicklungen nicht umsonst gewesen sein! Die genaue Implementierung wird sich sicherlich stark von dem Java-chat unterscheiden, das Prinzip wird aber in etwas gleiche bleiben... Grüße Andre PS: Ich habe zuhause viele Socket-Beispiele in C, könnte ich bei Bedarf mailen... (Unix Socket Programmmierung, Hanser)