Archive for the ‘design’ Category

C++ Datastore

Saturday, December 29th, 2007

     I cleaned up the C++ interfaces a little bit. This image below is only for the C++ interfaces.

    I am concentrating on Postgres, sqlite, Oracle and MySQL. Postgres and SQlite have the most project friendly licenses, and MySQL / Oracle have the least friendly licenses.

    However, the cluster aspects of MySQL and Oracle are awesome. Something the other two do not have.

( I know Postgres has clustering, but it is not the same )

GUI pt 3

Thursday, December 20th, 2007

    Ok, to answer a question, the interface is written C++. NOT wxWidgets.NET. Chills run down my spine just thinking about it. And to answer the second question, the Alpha GUI will be ready when it is ready. Sorry, but I want to get the interface right the first go around ( or at least build in enough flexibility ) that I don’t ‘code myself into a box’ that would require me to break a lot of stuff to fix the UI.

    So here are some of the changes I have made. ( With screencaps ! )

Click to enlarge

[1] The rows are thinner so more information can be shown to the user.

[2] First cut at user defined views ( Notice the View 1/2 tabs )

[3] The Books ( or desks , or whatever you want to call them ) can be user defined.

[4] I took out the application menu for now. I want to roll part of the functionality into the main screen, and the rest into the status menu.

Design is not how something looks, but how it is used. -Unknown

YAUT - Yet Another Unit Test framework

Wednesday, October 31st, 2007

I have been putzing with unit testing frameworks all week. I could not find one I really liked. First a lot were too complicated for my purposes. Most of my unit testing exercises computation. Making sure 1 + 1 is 2, is what I really , really need. The other gripe I had is the text file output. I want somewhat is databaseable. I want to look back and see when something stopped working, with out digging thru a lot of files or doing the svn thing. You know, pulling out old copies, running the unit tests to see where things broke. Granted, I only had to do that a few times, mainly when I had a busted import into svn. Oh, and I wanted the same output accross implementations since the interfaces will be developed in parallel.

So I decided to write my own. Not as featured as JUnit, CUnit, G-Unit , but functional. It has databaseable output and fits in a header file in C++. So that is getting dumped into svn, but it won’t be in the release for a while.

And I know databasable and putzing are not real words.

Signals & Slots

Friday, October 12th, 2007

    Raydo uses the Slots and Signals pattern for communication. So just as an aside, I want to give a little background on this design pattern. We are using two models for signals and slots, and have not decided on which one to use. We may keep both.

    Signals and slots is a language construct (originally used by TrollTech in their QT project ) to implement the Observer pattern avoiding boilerplate code. A signal to slot connection is the same as the Design Pattern Observer

    The concept is that objects can send signals containing information which can be received by other objects using special functions known as slots. The signal/slot system can be used for asynchronous I/O including sockets, pipes, serial devices, etc.