I’ve used Visual Studio 2017 in the examples below, but all features are supported in the Eclipse IDE too (unless stated otherwise). Also all the features here are supported in Visual COBOL & Enterprise Developer.
COBOL Code Analysis
Two new analysis features have been added.
Program Flow Graph
The developer can display a graph showing the flow of their program, with synchronization and easy navigation between the graph and the code. Sections and paragraphs are represented as nodes and the links between them show the direction of flow and are colorized to show the type of call, for example PERFORM, GO TO, CALL.
Data Flow Analysis
The developer can also display an impact analysis tree which shows the effect on the program of changing a data item.
Code formatting allows developers to apply their indentation and alignment preferences to COBOL programs. Configuring preferences is really straightforward – there is a whole host of configuration options and a preview window, so the developer can quickly see the effect on their code of changing an option.
There is more information on this in Ted’s blog about editing which was published several weeks’ ago.
Debugging – Conditional watchpoints
The new conditional watchpoint support allows the developer to specify conditions and hit counts for COBOL watchpoints.
Data Driven Unit Testing
From within Visual Studio or Eclipse, the developer can already create and run COBOL run unit tests, using the Micro Focus Unit Testing Framework. An enhancement has been added to provide support for data driven unit testing – this allows the developer to write one test, which can be run many times, with different input data. The IDE provides support for automatically generating tests from the source code. Also the ability to run tests and navigate between the results and the code.
Visual Studio IDE only features
Now there are some features that are specific to Visual Studio which I will talk about here.
In 5.0 the developer gets a choice of using Visual Studio 2017 or Visual Studio 2019.
.NET Core Support
.NET Core is an open-source development platform that supports multiple operating systems. In Visual COBOL and Enterprise Developer for Visual Studio we’ve added project templates to help the developer create COBOL .NET Core applications which can be published and deployed on a .NET Core platform. So the developer could use Visual Studio on Windows to develop their application, then deploy and run on Linux.
There is a new COBOL Visualizer window which allows the developer to easily view and edit COBOL data as text or hex.
COBOL Editor – Peek Definition
Peek Definition behaves the same as Go To Definition, but displays sections, methods and data items in-line in the editor, which allows the developer to view and edit them without having to move away from the code they are working on.
COBOL Editor – Quick Actions
Some new Quick Actions (or light bulbs) have been added. Quick Actions allow developers to easily refactor or fix code by offering fix options for them to select from. The new Quick Actions include creating a missing section or a paragraph, adding and sorting $ILUSING statements, removing or commenting out dead code which has been detected by running COBOL Code Analysis.
COBOL Editor – IntelliSense
IntelliSense has been added for the new .NET COBOL language features – async and await.
There has also been an enhancement to IntelliSense on COPY statements – this allows the developer to browse and select folders for copybooks.
COBOL Editor – COBOL snippets
Also new COBOL code snippets have been added, including those for inserting $if and $region code constructs.
COBOL Editor – collapsible regions
Collapsible regions (or Outlining) support has been added for if, evaluate and perform statements. The developer can just click on the +/- on the left-hand side of the editor window to expand and collapse code blocks.
And there’s more…
In addition to the IDE features I’ve covered here, many other new features have been added in Visual COBOL and Enterprise Developer 5.0.
These include Amazon Web Services Quick Start for Enterprise Server and new COBOL language support for Enterprise COBOL 6.2 syntax.
Enterprise Server and Scale Out Architecture & Enterprise Server Common Web Administration have been added as Early Adopter Product (EAP) features.
For more information, please see the full list of new features in Enterprise Developer: