> On Feb 9, 2015, at 3:40 PM, Marc Mutz <marc.m...@kdab.com> wrote:
> 
> On Monday 09 February 2015 09:54:12 Smith Martin wrote:
>> This is the kind of thing we should add to the documentation, but can you
>> elaborate? I mean, illustrate the meaning of "locality of reference,"
>> "wildly mixing insertions, lookups, and removals," and "batch updates and
>> separate them from lookups, time-wise."
> 
> There is a book, Effective STL, and an online paper, "What every programmer 
> needs to know about memory". I don't think that it's the job of the Qt docs 
> to 
> explain "what every programmer needs to know about memory", because it is not 
> specific to Qt.
> 
> The Qt documentation also doesn't give many details on Unicode. It's assumed 
> that people using it know the basics.
> 
> You will also not find in the Qt docs that signed integer overflow is 
> undefined 
> behaviour.
> 
> The Qt docs are not a CS text book :)

That QMap is implemented based on a RB tree is mentioned in a single sentence 
in the beginning of the description of the class, which is the sentence that 
nobody ever reads (because it tends to contain useful information like "The 
QList class is a template class that provides lists.”).

It is followed by a short (but longer) comparison between QMap and QHash, which 
in turn is linked to a relatively long section that compares the complexity of 
Qt’s different containers.
So, fact is that the Qt docs *do* explain more than “QMap is a RB tree” (and I 
think that is good so). And since they talk a lot about algorithmic complexity, 
it would probably be useful to mention a few other things that concern 
performance differences as well. In ~5 sentences. I really can’t see how that 
could hurt.

Actually you sounded like you’d like to educate people about this also “outside 
of CS courses” (by sending them to their manager etc), so do you have a 
different, realistic proposal?

-- 
Eike Ziller, Senior Software Engineer - The Qt Company GmbH
 
The Qt Company GmbH, Rudower Chaussee 13, D-12489 Berlin
Geschäftsführer: Mika Pälsi, Juha Varelius, Tuula Haataja
Sitz der Gesellschaft: Berlin, Registergericht: Amtsgericht Charlottenburg, HRB 
144331 B

_______________________________________________
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development

Reply via email to