Its not going to please everyone, especially those who like to hand code
, and thats a big/primary divide in the programming world but one of the attractions of Clarion is the Dct and AppGen.
I work best inside the AppGen.
I can have a clarion Dct instance open on one monitor, with one or more instances of the clarion AppGen open on other monitors.
What it brings to the table, is no longer having to define variables and groups by hand, thats handled by the Dct editor or Procedure Data button. So no syntax errors there.
When in the embeds, you have the dct file/field window to double click on and add a variable/property to the embed code like I do with a normal clarion app.
I dont have to worry about text alignment, thats taken care of automatically, so you can have perfectly formed classes every time.
I found the AppGen tree contraction/expansion better than code folding in an editor, with the added benefit, I can select a different tab and change the sort order from Tree view to name view and back again.
Sure there’s a bit more drilling down inside a procedure compared to a text editor, but thats how I like to work.
If developing one or more classes with the Class Writer, it handles the Class Module() & Link() settings automatically and still has the ability to add additional Include() files, for separate source files, like an Equate.clw file or parent class file.
It handles the parameter’s properly, so you cant define an parameter with the wrong syntax.
The template prompts also remind the programmer what can and cant be done in each section as well.
The Class Writer template wont let you make a syntax error, its defaults are setup for a default ABC class library, but all options can be adjusted easily within the template.
Since OOP was introduced in C5/C5.5 I’ve waited all these years for something like this, and there’s been attempts by others, but I’ve always found them to be a bit too clunky. So I ended up writing a template which works the way I think one should inside the AppGen.
The other benefit is, what I have here can now be adapted for other programming languages which support OOP. The discovery of the template language limitations has taken time, but been overcome so far.
Or course, there’s nothing stopping you from generating the class in the AppGen as you go along and having the source files open in an editor on other monitors. Notepad++ auto reloads changed files and its possible to have multiple instances of notepad open at the same time.
But its aimed at getting newbies to class writing, up to speed very very quickly.