Designing a Library (Diagrams and Helper functions)

I'm in the process of designing my own multi-purpose library with its focus to be mostly on rendering much like ogre although I have enough knowledge to implement other things like networking, even if its a bit crude. My library is still in an infant stage so nothing is set in stone. I have not made any diagrams yet, but I do have what I consider some decent interfaces in my library. I have however partitioned and conceptualized my library into namespaces similiar to that of ogre and irrlicht but as clean as ogre and simpler than ogre.

Although I do not have any diagrams drawn out I have devised clear and specific coding standards in terms of typing, modularity vs aggregation, file naming, use of namespaces, use of classes vs structs in writing and by coding. I am able to detect novelty things like endianness and what system the user is using and in turn this allows me to determine what code compiles like a real library.

So right now I'm still in the early stages of development.
My general approach at design has been thinking, thinking, and creating interfaces based off of my conceptualizations and implementing only when it seems practical, scalable, and simple enough to do so.

Now that I've seen Irrlicht its seems to me to be less design strict and more of a makeshift collection of code here and there aside from the thinks that force one to design out of shear complexity.

Now here's my question. Is it possible to make a library out of helper functions? Are diagrams necessary? One thing that I have realized that my method is slow, however I have not come up with any problems yet as I have not done anything worth warranting changes (design clashes).

The way I have it setup now is that one of my namespaces is sys. The sys namespace is a collection of namespaces consisting of helper functions and classes to the main namespaces that my library will use. I use the sys namespace as a foundation for my main namespaces for which I wrap around sys.

for example (this is not my actual code but a placeholder):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
namespace mymainnamespace
{
    namespace sys
    {
    }

    namespace somenamespacethatusessysforsomethingspecific_A
    {
    }

    namespace somenamespacethatusessysforsomethingspecific_B
    {
    }
}



Last edited on
Anybody.
closed account (S6k9GNh0)
There's no reason you can't make a library out of helper functions.
Diagrams are not necessary. A lot of my projects, especially the more well made ones, were just well documented through word rather than picture and given explicit and realistic examples of use.

Aside from that, design often differs from realistic implementation. Don't be afraid to change design to fit your implementation slightly for a realistic issue.

I'm afraid I don't understand the rest of what you're saying though if I haven't already answered any questions.
Last edited on
ok
Last edited on
Topic archived. No new replies allowed.