Slashdot Mirror


Simple Windows Development Tools?

fwc asks: "Over the past few years, I've been fortunate to be able to avoid writing a Windows GUI application, however this good luck is coming to an end. In the next few weeks, I need to write a fairly simple application which will need to display data received from a serial port in a decoded (and graphical) form via a Windows GUI. Unfortunately, my skills in this area are out of date, since I haven't written any GUI apps for close to 10 years. Because this program needs to be fairly small and easy to install, the use of Perl/tk isn't a valid option. What options do I have to build a small application on Windows, without a large learning curve?"

4 of 255 comments (clear)

  1. Alternative.... by ceeam · · Score: 4, Interesting

    Ask yourself - how would you've done it on Unix? Well - Perl/tk may be not an option, but definitely you can write a no-GUI program to receive data from your serial port and store it somewhere. Then make a small web-server (plenty of options - no need to install apache or stuff) and serve your data in graphical form to a web-browser.

  2. Nobody said Mozilla??? by Anonymous Coward · · Score: 1, Interesting

    XUL (pronounced "zool") is Mozilla's XML-based User interface Language that lets you build feature-rich cross platform applications that can run connected or disconnected from the Internet.

    How powerful is it? Well, Mozilla Firefox and Thunderbird are two examples.

    http://www.mozilla.org/xpfe/
    http://www.mozilla.org/projects/xul/
    http://www.xulplanet.com/

  3. VB. Don't be fooled: VC++ is not similar by dpbsmith · · Score: 3, Interesting

    If what you're interested in is just getting the job done, you can't beat VB... or RealBasic, which I'm partial to, since I do more of this kind of thing on the Mac, but it's not mainstream.

    There are a lot of knocks on VB, but most of them are snobbery, pure and simple.

    If you're interested in earning status with your developer peers, boosting your career, making your resume marketable... stay away from VB.

    But if what you're interested in is just getting the job done, it's a good choice.

    Postscript: do not let Microsoft's marketers fool you into thinking there's any similarity between Visual Basic and Visual C++. Visual C++ is not just Visual Basic with a different programming language component. I wish it were, or I wish they had a product like that.

    VC++'s "visual" features are shallow, fragile, and paper-thin.

  4. Re:VB not the answer by cgreuter · · Score: 3, Interesting

    I have a bit of experience with both Tck/Tk and Visual Basic 5. Here's what I think:

    Tcl/Tk is great for dashing off little graphical apps that do stuff. I once wrote a fully-functional GUI front end for "cdplayer" in 8 lines and ten minutes. It's the easiest tool I've ever used for hand-coding GUIs but you can also get GUI builders for it.

    Good things:

    • Cross platform, free and open-source
    • Well documented in ways that don't assume you're an idiot.
    • It's really, really easy to get a GUI up and running.
    • It's extremely flexible. You can override nearly every aspect of a widget, add new behaviour and even write your own widgets in Tcl. I've seen WinAmp-style user interfaces in Tcl/Tk applications.
    • It's simple. Most Windows-based development tools I've used have zillions of functions, classes and datatypes, far more than you could ever grok. Tcl/Tk is small enough that I could still get a sense of knowing how everything worked.
    • Tcl, for all its wierdness, is an incredibly flexible language. You can write your own control structures in it and you can create multiple interpreters so that your Tcl/Tk application can provide Tcl as a scripting language while protecting the app's internals from scripts.
    • It's got a really simple C API. C code can call Tcl code which calls C code which calls Tcl code and so on.
    • It's interactive. You type in and evaluate expressions on the command line and even build GUI controls that way.

    Bad things:

    • It's ugly, at least out of the box. It's possible to make your app look nice (and maybe even Windows-native) but it requires a lot of tinkering to do.
    • Tcl isn't really designed for developing large programs. (I haven't tried [incr Tcl] though--that might be better). It'll do in a pinch (and my app grew to some 13000 lines of Tcl without getting unmanageable) but lack of types and the error/catch exception mechanism became a hassle after a while.
    • There were a few Windows things that I couldn't do without writing a C routine to do it and linking it in.
    • No debugger. You're stuck using printf^Wputs statements.

    If I were going to write a large or complex Windows app today, I'd probably write the interface in Tcl/Tk and the actual complex stuff in C.

    As for Visual Basic, I didn't really use it enough to have an informed opinion. When I used it, I found that it was really easy to create a GUI but the IDE became irritating to use once I needed to write larger amounts of actual code. I also found the help reader annoying (but this was version 5--they may have improved since) and the documentation condescending.

    It worked well as long as I didn't try anything too unusual. I don't think I could do Tcl/Tk trick of creating a new kind of widget by adding event handlers to a label widget in Visual Basic. But, I didn't need try it and it worked okay for what I needed to do.

    Of course, given how MS radically changed the language with VB7.net and stopped supporting VB6, I don't think I'd ever use VB for any code I thought might be valuable.