[Ruby-de-talk] Performance-Frage - String zusammenbasteln
Michael Neumann
mneumann at ntecs.de
Sun Aug 1 16:11:07 EDT 2004
Dirk Einecke wrote:
> Bisher hatte ich sowas:
> path = p.directory + p.filename + '.rb'
>
> Würde nun
> path = "#{p.directory}#{p.filename}.rb"
> oder
> path = p.directory << p.filename << '.rb'
> besser sein?
komischerweise ist das erste (also mit +) am schnellsten, wenn directory
und filename so jeweils um die 20 bytes gross sind.
Aber wenn du das nicht in einer Schleife mehrere tausend mal ausführst,
oder wirklich grosse Strings zusammenbaust, dann ist es wirklich wurscht
was du verwendest. Ich würde dann lieber auf lesbarkeit achten.
BTW, Pfade kannst du auch mit File.join zusammenbauen.
File.join("a", "b", "c") # => "a/b/c"
>> Hier ein kleiner Benchmark:
>>
>> require 'benchmark'
>
>
> Kann ich leider auf dem Server nicht machen, dieses Modul nicht
> installiert ist:
> info.rb:3:in `require': No such file to load -- benchmark (LoadError)
einfach bei dir auf'm heimrechner mal testen. hm, kann sein, das
benchmark erst ab 1.8 standardmässig dabei ist.
Grüsse,
Michael
More information about the Ruby-de-talk
mailing list