What's it all about?
COM Express is a CASE (Computer Aided Software Engineering) package that can manage and generate source code for VB, VB.NET and ASP based database applications. More importantly, it is possible to generate quite sophisticated 'n' tier application (including its GUI) in minutes rather than days and weeks. COM Express supports a number of database packages and technologies, including XML, SOAP, MS Jet, MS SQL Server and Oracle.
For more details about COM Express's and its features, check out Shoutsoft
How do you get it?
You can download a trial copy of COM Express from The Shoutsoft Home Page and purchase a full copy of the software for 'Professional Suite Edition' for a single user license at $699. Note: other versions and license types are available, for more details please visit their site.
Who's it for?
Pretty much anybody who's involved in VB, VB.NET or ASP database development and wants to seriously reduce the time taken to develop their applications as well as conforming to industry standards.
Note: Although its not entirely necessary to have any COM experience to develop an application using COM Express, I would recommend that potential users have some knowledge of COM development or VB OOP programming before diving into this product straight away. Personally, I found I could fall back on this foundation whilst using COM Express and in some cases I felt that having an OOP/COM mindset accelerated my understanding of what was happening 'under the bonnet'.
What's it like?
After downloading and installing the product, which was very easy and intuitive, I checked out the 'Help' documentation. Although sadly lacking in tutorials or walkthroughs on how to use the product I found viewing the sample projects particularly useful, in my case that old favourite 'NorthWind.mdb'. This enabled me to see how the Project's 'Object Model' had been built and the functions and options available to each section of the Project.
Once I had a handle on the various features and how to navigate the interface, I decided to generate my own 'project' from scratch. To start, I generated a MS Access based Employee Database with four data entities. Completed, I created a new 'project' in COM Express and worked through the 'New Project' wizard, specifying data source information and global project options. With the wizard completed, I generated a 'Business Object' for each data entity and customised the GUI as appropriate.
Happy with everything, I then generated the source for both my Business Objects and (VB) GUI and that was it. Opening up VB Studio, all the source code for both elements of the application had been generated and, apart from adding any application logic and additional functionality, my VB database application was completed.
Revisiting my project in COM Express, I changed the GUI output from VB application to an ASP application and re-generated the source code. Compiling my Business Objects into a DLL and configuring an ASP site in IIS and some modifications to the ASP source code, I had a full ASP application using the same Business Objects as my VB application accessing the same database.
Sounds pretty easy huh? Well, it was and the impressive thing was that the above took less than an hour to get both the VB and ASP applications configured in COM Express and tested!
So what's wrong with it?
Not much really. It does have a couple of niggles that don't affect the core functionality of the product. For example, switching between the 'Help' and the main application can be a pain as the 'Help' always stays on top of the main application, regardless of which one has focus.
Another example is that some of the VB6 generated code initialised objects within the object's declaration, e.g.
Dim x As New Recordset - which is a technique of instantiating objects that I would generally avoid.
But minor UI problems and coding preferences pretty much pale into insignificance when compared to the versatile and powerful facilities that COM Express offers.
Is it worth it?
In short, yes. Regardless of whether you are embarking on developing a large-scale 'n' tier development or simply looking for a quick and powerful database prototyping tool, COM Express offers an awful lot of flexibility and control over both Business Object and GUI development. It also dramatically reduces your development lifecycles and utilises industry standard 'tried and tested' techniques in your applications.
Finally, here's a real-life comparison about COM Express: during the last project I worked on I spent at least six weeks coding just the Business and Data Objects for the system. Utilising COM Express, I produced virtually the same code, albeit without any application logic included, in one afternoon.
Still here? Get yourself over to The Shoutsoft Home Page and try it yourself.