I’ve spent some time away from studying over the last week or so due to illness, but this weekend I finally managed to finish Unit 6: Graphical User Interfaces. Prior to this course, the only GUIs I’d ever created were for the C++ course MT262, which used Borland Builder, and for Excel/Access stuff I created at work using VBA. So when I started Unit 6 of M257, I was expecting to use a WYSIWYG GUI-building tool along the lines of what you get with Borland, only snazzier. Imagine my surprise when I realised we would be creating GUIs entirely in code!

To be honest, at first I had misgivings about this – designing a user interface visually, being able to drag and drop components, resizing and positioning them graphically rather than programmatically, seemed to make more sense. However, as I worked through the practical exercises, I started to enjoy the process of putting together the GUI line by line, and ultimately I think it’s a more satisfying approach than using a WYSIWYG editor; perhaps the precision of creating and placing the components by code rather than by hand appeals to the control-freak side of me!

On the other hand, maybe I’ve just been seduced by the relative sleekness of the basic GUI components in Swing compared to the stuff we used in MT262… For comparison, here is one of the first interfaces we’ve created in M257:

Putting Java to work

And here is one of the GUIs from the last TMA of MT262:

Putting computer systems to work

I know, it’s shallow, but I find the blue-grey gradient fills of the Swing components irresistible!