KDE4 Libs components

Aaron J. Seigo aseigo at kde.org
Sun Mar 5 04:38:40 GMT 2006

On Saturday 04 March 2006 11:39, Olivier Goffart wrote:
>  IMO, this is why we should not divide in too much different library.
>  So why make a division that will restrict ourself if it's not really
> usefull ?

what's not useful is having 2 libs (libkdecore and libkdeui) which have 
hundreds of classes in them (yes, hundreds) that cover many, many different 
concepts. some classes belong together topically, some don't. deciphering 
what "goes" with what is nigh impossible without a huge investment in time.

and that's without the randomness of many of our libs such as kfile in kio. i 
know why it's there, you know why it's there but it takes a while to figure 
that out for someone newer to the project ... and who would guess that the 
icon dialog is in libkfile, the "file dialog library"? =/

moreover, when we glob a ton of shit together like we do it becomes very hard 
to get a good overview of things. it makes it harder to see what should and 
shouldn't be there. 

it also makes things like maintainership much more difficult. i'm toying with 
the idea of volunteering to be the maintainer for kconfig stuff if the 
kconfig rework i'm doing works out (that'll be my resume for the job ;). it 
would be REALLY nice to be able to say "hey, this directory right here? 
that's mine to look after." it gives us bite size things to maintain.

it also makes daunting tasks like proper documentation and unit tests "more 
manageable". someone can spend an evening or two and provide a nice intro 
text to using kconfig or ensure the unit tests are done, and they will have 
accomplished something for an entire "unit". that's satisfying, measurable 
and less of a perceived investment. writing unit tests for everything in 
libkfile sounds a lot more impossible.

for me the question is NOT about "how many libraries?" i personally couldn't 
care less if we have the same, or less!, number of libraries in kdelibs in 
kde4 compared to what we have in kde3.

the question for me is "how do we organize our sources? how do we organize our 
components? how do we put things together?"

right now we have an untidy room: years and years of adding more and more 
great stuff into a pile on the floor. it's a monster to try and maintain and 
manage; it's a bigger monster to learn and figure your way around.

does that make any sort of sense?

Aaron J. Seigo
GPG Fingerprint: 8B8B 2209 0C6F 7C47 B1EA  EE75 D6B7 2EB1 A7F1 DB43

Full time KDE developer sponsored by Trolltech (http://www.trolltech.com)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20060304/7cce1edc/attachment.sig>

More information about the kde-core-devel mailing list