.NET Modules
For a debug build, the
PowerBuilder .NET compiler creates a .NET module for each PowerBuilder
class or class group. A class group consists of a container object
that instantiates a primary class, and the controls in that container
object, that are instances of subsidiary classes.
For example, a
window normally contains several controls. The window and the controls
are declared as separate classes that are bound together as a class
group in the .NET build process.
For a release build, the compiler creates a .NET module for
each PBL rather than for each class or class group. Although basing
the generated .NET modules on classes and class groups increases
performance for incremental builds, this is mostly needed at development
time when the application is being debugged. At production time,
basing the generated .NET modules on target PBLs is more advantageous,
since it minimizes the number of modules that need to be deployed.
Incremental rebuilds are supported for deployment to remote
servers as well as for MSI file generation. In addition to saving
time on deployment, the generation of .NET modules is especially
beneficial for smart client Windows Forms applications, because
the modules can reduce the size of the assembly files that need
to be updated.