CodeDOM Helper Library
New Retail Release
Evaluate the CodeDOM Helper Library
The full, retail release, version of the CodeDOM Helper library is now available
and can be downloaded for evaluation free of charge. When first installed, the CodeDOM
Helper Library may be used in evaluation mode for a period of 14 days.
- There are no restrictions when running in evaluation mode, however, the library will
only run in evaluation mode from within the development environment.
- Evaluate, prototype or test the CodeDOM Helper library with your own .Net Framework
code generator components or applications.
- Comes with CSharp and Visual Basic sample projects and includes extensive sample
code in the documentation to get you up and running quickly.
Register, download and evaluate the CodeDOM Helper Library:
Specification
The CodeDOM Helper library provides an abstraction layer over the types in the System.CodeDom
namespace. Developers can use the CodeDOM Helper library types to simplify the process
of creating a Code Document Object Model and can easily generate source code from
the model in any, supported, .Net Framework language.
The CodeDOM Helper library targets the .Net Framework version 2.0 and requires,
at least, version 2.0 to run, it can, however, generate source code compatible with
earlier Framework versions. The CodeDOM Helper library is run time royalty free,
so developers can ship the library with their own components or applications free
of charge. A developer license is required to use the CodeDOM Helper library, in
the development environment, at design time but the library can be evaluated free
of charge for a period of 14 days. Whilst in evaluation mode the CodeDOM Helper
library is fully functional, however, the library will only operate from within
the development environment.
Product Feature Highlights
- Does not require prior knowledge of the
System.CodeDom types, you can build a Code Document
Object Model without having to create or access a System.CodeDom type.
- Typically, requires less code to create and generate a Code Document Object Model.
- Each CodeDOM Helper type provides access to its, underlying,
System.CodeDom type,
therefore you have full control of initialization if required.
- Most of the CodeDOM Helper types are extensible, so you can create your own, custom,
expressions, statements, etc.
- You can generate the same Code Document Object Model in multiple languages just
by changing the generator Language or CodeProviderName property value.
- You can create types, members, etc. and add them to the object model in a single
method call.
- Supports, language specific, versions of the same statement and automatically generates
the version required for the specified generator language.
- Supports multi-line statements that can be added to a member code body in a single
call.
- Provides simple, high-level, support to create frequently used code constructs.
You can, for example, create member argument or parameter validation statements
with the relevant exception throw statement in a single method call.
Product Feature Details
The Blayd Software CodeDOM Helper library is designed to make it easier for developers
to create a source Code Document Object Model (Code DOM). The object hierarchy represented
in the
System.CodeDom namespace has a complex inheritance chain and typically requires
the developer to write a lot of code to generate even fairly simple source code
structures. The CodeDOM Helper library tries, where possible, to flatten the hierarchy,
thus reducing the number of
Types that have to be created and to provide high level
methods to create the required source code structures, thus reducing the amount
of code that has to be written to create such structures.
The CodeDOM Helper library uses the types defined in the System.CodeDom namespace
to build a Code Document Object Model internally but externally it presents its
own version of the model and developers can build a Code Document Object Model without
having to create or access a System.CodeDom type at all, the library takes care
of instantiating and initializing the, relevant, underlying System.CodeDom types.
The CodeDOM Helper library does not generate source code, it uses a, specified,
language specific concrete implementation of the System.CodeDom.Compiler.CodeDomProvider
class to generate source code from its own Code Document Object Model. The CodeDOM
Helper Generator class creates the required code provider instance and uses it to
generate source code from the underlying System.CodeDom types maintained by the
CodeDOM Helper Code Document Object Model. The CodeDOM Helper library does, therefore,
support all of the functionality of the System.CodeDom types and all of the functionality
of the supported language specific code providers and code generators. It does,
however, also have the same limitations as the System.CodeDom types and the supported
code providers and code generators. The CodeDOM Helper library cannot, for example,
create code structures that are not supported by the types in the System.CodeDom
namespace and it cannot generate source code that is not supported by the relevant
language, code provider or source code generator.
The good news, however, is that the CodeDOM Helper library does provide functionality
that is not, explicitly, available in the System.CodeDom types. You can use the
LanguageStatement class to create, language specific, versions of the same statement
and add them as a single statement to the code body of a member. The CodeDOM Helper
library will then ensure that the correct, language specific, version of the statement
is added to the underlying Code Document Object Model just before the source code
is generated. The MultiLineStatement class allows developers to add multiple comment
lines to a type member or code body in a single call and can also be used by developers
to create their own multi-line statement types. The ValidationStatement class enables
developers to generate argument validation, conditional, statements with the relevant
exception throw statement in a single call. The ThrowExceptionStatement class makes
it very easy for developers to create exception throw statements in a single call.
Developers can add their own, custom banner or header to the generated source code
output and there are many other, productivity, features available in the CodeDOM
Helper library. Using the library to build a Code Document Object Model will, typically,
require less code than using the System.CodeDom types directly will.