[SDL] List all GUI toolkits for SDL

j_post j_post at pacbell.net
Sun Sep 11 18:25:40 PDT 2016


On Sunday 11 September 2016 13:48:12 actsl wrote:
> 
> Right but, the complexity of the code cannot be completely hidden, and
>  attempt to do so may decrease the freedom of the user to do what the user
>  wants to do, or what may be necessary to do in some case.
> 
> But as i said, this is only one aspect of comparing the libraries, i agree
>  that it no way says everything about the code or the library, other
>  features have to be considered also to meaningfully compare. Yet the
>  number of lines of code is one important aspect in comparing the codes.
> 
I would say that lines of code is of relative unimportance. Decades ago, when 
computers were *slow* compared to today, I wrote some software that was 
heavily table driven. This increased lines of code immensely compared to 
algorithmic computations, but it was blindingly *fast*, which was one of my 
primary objectives. It was also conceptually simple and therefore easy to 
maintain.

I believe that the most important aspect of software is summed up by what I 
would tell the programmers who worked for me: "I don't care how difficult it is 
for you to write the code, I care about how easy it is for the customers to 
use."

Beyond that, I think the most important characteristics of good software are, 
in no rigorous order,

Algorithmically correct: it does what it's supposed to do and nothing else. It 
is essentially bug free in that unusual circumstances, such as unexpected 
input will not cause it to do anything insane.

Simplicity: it should be easy to maintain.

Flexibility: it should be easy to add new features or modify behavior.

If it involves a GUI, it should be intuitive and pleasant to look at (which 
IMHO kiss_sdl is not - the graphics are too primitive).

If it doesn't have a gui, it should be intuitive and easy to use.

And so on... I'm not trying to write a treatise on good software design.

Lines of code is near the bottom of the list.

I did take a very brief look at your code, with a view to adapting it to SDL 
1.2. I have a lot of code using 1.2 and rather than rewrite it for 2.0, I 
think it would be easier to just rewrite it in Java, which also takes care of 
porting issues - specifically that Apple intentionally makes it difficult for 3rd 
party developers to compile code for Macs.

I admit I didn't have time to look at your code in more depth, but at first 
glance it didn't seem to be all that easy to modify it for SDL 1.2 (and then 
there's the graphics issue).

Nevertheless, I would encourage you to continue working on kiss_sdl, but don't 
get hung up on lines of code. Keep It Simple is not the same as keep it short.

Jeff


More information about the SDL mailing list