There are several tools out there that use the XML format. Reality Check and RB Code Reports are two such examples that can’t use the binary format or the version control formats. I think each one of them would be awesome IDE additions. But alas, there is no IDE plugin architecture so they’re forced to look at the project files instead. This seems needlessly constricting.
Many of us came to REALbasic from Visual Basic 6. Let’s see a show of hands. Who installed the free MZ Tools add-on? Thought so. For a free add-on it made the VB6 IDE, an (arguably) crummy IDE, into something that was powerful and useful for everyone. MZ Tools wasn’t a separate utility to run on the project it was integrated into the IDE.
Here are a few things that having some IDE hooks would (hopefully) allow 3rd party developers to create for the IDE itself:
• A class hierarchy view
• String spell checking
• A way to add code to all methods in a project
• An alternative search and replace
• Multiple search windows
• Source Code Control utilities
• A code snippet library
• To Do Lists
• An SQL Query builder
• Code generators
• Project snapshots
• Dozens of other ideas!
I think having a plugin architecture for REALbasic would make RB much more attractive to pro developers. For all its strength, the RB IDE is limiting in many ways when you use it all day long. It would be nice to have some hooks rather than forcing us to use the XML format outside of the IDE.
By forcing developers to use the XML format RS is almost begging us to tap into the speed and power of the binary file format. I’ve heard that using the binary format violates the REALbasic EULA which seems odd since the same data is present in the XML and version control formats since RB has to recreate the same project from all three sources.
Let’s be honest for a second. IDE hooks would solve a lot of the reasons why developers want to read and write to the project file. I don’t think anyone wants to be a criminal they just want a way to do their job faster and easier.
What are your thoughts?