It's not all that sophisticated, but I'm using a text editor to write my BASIC program (TextWrangler on a Mac but could use anything really), then using the very handy "zmakebas" by Russell Marks which creates a .tap file containing a BASIC file, which I can then test into my emulator. I find it a lot quicker than using the in built editor on the speccy (although you obviously miss out on the syntax checking as you go along, which is probably helpful if you're less fluent in Sinclair Basic).