Seite 2 von 2
Verfasst: Dienstag 4. November 2008, 18:58
von Leonidas
snafu hat geschrieben:Naja, für die Daten, die man hat, würde ich dann eher das Präteritum "downloaded" verwenden.
Warum sollen denn Daten an ein Verb im Präteritum gebunden werden. Konsequent angewandt würden dann so ulkige Sachen wie ``instantiated = ElaborateClassName()`` raus kommen.
Verfasst: Dienstag 4. November 2008, 19:04
von snafu
Meinst du, sowas wie "begin_from" würde hier eher passen? Im Grunde sage ich damit ja dem Server, ab wo er den Download starten soll. Andererseits bezeichnet es aber auch die Bytes, die vom letzten Mal schon da sind. Obwohl, an sich wäre "begin_from" vielleicht echt das Beste. Oder vielleicht auch "start_at_byte"...
Verfasst: Dienstag 4. November 2008, 20:03
von BlackJack
Ich schmeisse mal 'offset' oder 'start_offset' in den Ring.

Verfasst: Dienstag 4. November 2008, 20:15
von lunar
Es ist schon bezeichnend, wenn man über die Namensgebung in der Lösung fast schon länger diskutiert als über das eigentliche Problem ...
Verfasst: Dienstag 4. November 2008, 20:16
von snafu
"Offset" meint doch eher "Abweichung"...
Aha, "remaining" vielleicht?

Verfasst: Dienstag 4. November 2008, 20:18
von snafu
lunar hat geschrieben:Es ist schon bezeichnend, wenn man über die Namensgebung in der Lösung fast schon länger diskutiert als über das eigentliche Problem ...
Warum? Das ist doch bereits gelöst.
Verfasst: Dienstag 4. November 2008, 20:43
von Y0Gi
`offset` gefällt mir auch (hatte `start` oder `start_at` im Sinn, aber Letzteres ist mehr ein Name für ein Datenbank-Feld), aber `url` für `data`? Wie wäre es mit `content`?

`received` ginge ähnlich `downloaded` auch - beides könnte aber auch die Menge in Bytes oder ein Boolean (ja, ok) sein. Passend wäre dann wieder `received_data` oder `data_downloaded`. Und das ist dann von meinem Erstvorschlag auch nicht mehr weit entfernt.
lunar: Gute Namenwahl macht guten Programmcode aus, warum sollte man da nicht ausführlich drüber elaborieren? Wo lernt man es sonst?
Verfasst: Dienstag 4. November 2008, 21:05
von BlackJack
@snafu: "offset" würde ich in diesem Fall als "Versatz" übersetzen. Das ist der technische Begriff der für so etwas in der Informatik verwendet wird. Eine Anzahl Bytes oder Elemente, die zu einem bestimmten Index dazu gezählt wird. Wenn kein Index angegeben wird, dann ist in der Regel der Anfang gemeint.
Verfasst: Dienstag 4. November 2008, 21:05
von snafu
"content" ist gut. Und eigentlich nehm ich das auch immer, fällt mir gerade ein. ^^
Verfasst: Dienstag 4. November 2008, 21:08
von snafu
BlackJack hat geschrieben:@snafu: "offset" würde ich in diesem Fall als "Versatz" übersetzen. Das ist der technische Begriff der für so etwas in der Informatik verwendet wird. Eine Anzahl Bytes oder Elemente, die zu einem bestimmten Index dazu gezählt wird. Wenn kein Index angegeben wird, dann ist in der Regel der Anfang gemeint.
Achso, das war mir nicht bekannt. Bin ja eigentlich nicht vom Fach. Gut, dann weiß ich ja jetzt welche beiden Sachen ich nehme. Und an die Funktion werde ich "bufsize" übergeben, würd ich sagen.
Code: Alles auswählen
from __future__ import with_statement
from os.path import getsize
from urllib2 import Request, urlopen
def download(url, outfile, bufbytes=1048576):
with open(outfile, 'a') as f:
offset = getsize(outfile)
request = Request(url)
request.add_header('Range', 'bytes=%d-' % offset)
content = urlopen(request)
while True:
buf = content.read(bufbytes)
if buf == '':
break
f.write(buf)
Verfasst: Dienstag 4. November 2008, 22:03
von lunar
Wieso legen alle meine Bemerkung so negativ aus? Ich finde es einfach nur erstaunlich, wie viel Wert auf "guten" Stil gelegt wird, dass man über einfache Namen so lange Diskussionen führen kann

In Perl-Foren würde man höchstens über den kürzesten Hack reden ...
Verfasst: Mittwoch 5. November 2008, 05:25
von snafu
dateiBestimmungsRootDatenByte

Verfasst: Mittwoch 5. November 2008, 11:12
von BlackJack
`objDateiBestimmungsRootDatenByteVar`

Verfasst: Mittwoch 5. November 2008, 19:12
von Y0Gi
Insbesondere in der Datenbankwelt sind LIMIT und OFFSET an der Tagesordnung.
Verfasst: Mittwoch 5. November 2008, 21:01
von lunar
Weil Datenbankprogrammierung ja auch so viel mit Netzwerkprogrammierung zu tun hat

Verfasst: Mittwoch 5. November 2008, 21:26
von Y0Gi
Mit Programmierung allgemein

Und auch bei der Netzwerk-Programmierung begegnet man dem Begriff "Offset", wenn man sich mit TCP/IP näher beschäftigt.
Verfasst: Donnerstag 6. November 2008, 08:54
von snafu
Dieser Thread beginnt, langsam sinnvoll zu werden...
