Programmieraufgaben

der Übung

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

Programmieraufgaben
Hi,

wäre jemand von Euch so nett und würde seine Implementierung der Fehlerkontroll-Protokolle posten? Ich hab die nicht gemacht und in so kurzer Zeit will ich mich auch nicht mehr in das “Framework” reindenken … würd sich wohl nicht lohnen. Nur um mal zu sehn, wie das implementiert aussähe bzw. den Code in der Prüfung für den Fall der Fälle dabei zu haben.

Danke


ich hab meine Version online gestellt:

http://wwwcip.informatik.uni-erlangen.de/~simtschn/ti4/

Ich habs mir aber nicht mehr angeschaut.
‘Damals’ isses gelaufen und das wars dann aber auch :slight_smile:


Hier hab ich noch nützliche Codes und Dokus für die Programmieraufgabe zusammengestellt:

http://wwwcip.informatik.uni-erlangen.de/~siasschu/TI%20IV/TI%20IV%20-%20Socket-Programmierung%20mit%20JAVA.pdf


Achtung, falls es jemand verwenden sollte: Beim Multi-Threaded Web-Server fehlte bei der statusLine die HTTP-Version, also "HTTP/1.0 " bzw. "HTTP/1.1 " je nachdem ob nicht-persistent oder persistent.

… nicht dass jemand noch den Code wegen nen Punktabzug verflucht :motz:
(v.a. da ich den Code eh nie compiliert hab bzw. einem Strukturtest unterzogen hab :red: )


Zum UDP-Client aus der Übung bzw. dem Kurose:

byte[] sendByte = new byte[1024];
...

sendByte = sentence.getBytes();

Ist es hier nicht überflüssig das Array mit new anzulegen? So wie ich das verstehe erzeugt doch getBytes() ein neues Array. Wird das durch den =-operator nicht an sendByte “übergeben”?

/EDIT: Ich hoffe mal dieser Thread bleibt nicht von mir dominiert! :red:


jo, das new macht keinen sinn (falls das java ist) , sendbyte is ja ne art pointer


oh der gute datentyp (art pointer) … ich mag java einfach


da ich unfaehig bin find ich das edit nicht.

goethe melde dich mal bei uns auf ne pizza. wir haben von deinen zsfsgn gut profitiert des sem.


krieg ich auch eine?


das macht schon sind das array

ist nur eine referenz

byte[] sendbyte;

sowas geht dagegen in java offensichtlich nicht(siehe 2. link in c++ vs java vergleich)

int variable[10];

http://www.programmersbase.net/Content/Java/Content/Tutorial/Library/Array.htm
http://www.rz.uni-karlsruhe.de/~ae15/java/JavaCpp.html


Tatsächlich! Hät ich nicht gedacht, aber passt: In java gibts ja nur Objekte.

Außerdem muss man solche Variablen wenigstens gleich mit null initialisieren, wenn man schon nicht mit new das Array anlegt. Sonst mekkert der Compiler.

@AssO: Na das ist doch mal ein tolles Angebot! Denke wir laufen uns schon mal über den Weg. … Für mich allein hät sich der Aufwand der zusammenfassungen wohl auch kaum gelohnt … für TI :wink:


ich denk mal es reicht wenn das programm funktioniert, sonst müssteste ja noch alle exceptions abfangen ^^ dann wirste in 90 minuten nimmer fertig


[quote=Goethe]

byte[] sendByte = new byte[1024];
...

sendByte = sentence.getBytes();

Ist es hier nicht überflüssig das Array mit new anzulegen? So wie ich das verstehe erzeugt doch getBytes() ein neues Array. Wird das durch den =-operator nicht an sendByte “übergeben”?[/quote]
In dem Fall ist das überflüssig bzw. beschäftigt nur den Garbage-Collector, da String.getBytes() selbst ein byte Array anlegt und das anderen somit ohne Referenz da steht und verloren geht.

Wenn eine Methode ein Byte Array zum befüllen als Parameter benötigt, muss man das natürlich vorher mit new anlegen.

Aqua