Overview
Visual Gene Developer supports programming
languages (VBScript, JScript)
and allows users to develop new modules and plug-ins. Basically, you
can check a list of modules in the 'Module Library' window and encode
programs in the 'Module Editor' window. In this section, we will explain
how to develop new modules.
o
Script file (file extension: vgs)
A 'script file' is a collection of modules and contains at least one
module. As default, all script files are located in the sub folder
("/Script") where Visual Gene Developer is installed. Because a script file
has a standard text format, you can open any file and review its content
with editing software such as NotePad or MS Word.
o Module Identification Key (=Module Hash
Code)
When a user makes a new module, Visual Gene
Developer automatically
generates a 'hash code (or Module Identification Key)' and assigns it
to the module like SSN (Social Security Number) in the USA or Resident
Registration Number in other countries. Because the hash code is a very
unique string code that consists of number and alphabet and created by
a special algorithm, every module has a different hash code. We use the
hash code to identify a module from the module collections.
Although every module has its own name (what we call 'module name') and
our software has some functions that allow a programmer to use
module name instead of Module Identification Key, our internal
algorithms and exposed classes (class: object of module collection)
recognize certain module mainly by Module Identification Key. The most
important reason is to prevent duplicate module names. Because some
developers may prefer a same module name in spite of different modules, it is
not easy to identify a certain module from multiple modules or multiple script
files. If we use a unique code like Module Identification Key, we don't
need to worry about duplicate names. Additionally we can change module
name anytime without causing software error.
o PropertyBag
A
PropertyBag is a customized parameter setting panel as shown in the
figure. With PropertyBag, end-users can easily change parameters of a
module and module developers also can make use of it to adjust internal
algorithm parameters.
Because we provide a specialized class (class name: PropertyBag),
developers not only can read and write parameter values in PropertyBag
but also can control and modify PropertyBag in the programming level.
A user can easily design new PropertyBag in the 'PropertyBag Editor' and
'PropertyBag Library' windows and can access to maximum two PropertyBags
according to its module type. Like modules, a PropertyBag also has a
unique hash code (PropertyBag Identification Key).
o Module Category
There are 8 different module types. When a user creates a new
module, Visual Gene Developer automatically registers the module to
a 'Target place' according to its category.
Category |
Routine
type |
Does it return value? |
Target place |
PropertyBag |
Function |
Function |
Yes |
'Gene
optimization' window
and 'Viewer setting'
window
or 'mRNA structure
viewer' window |
Yes. It has 1
PropertyBag |
Sub |
Sub |
No |
'Toolbox' window |
No |
Gene Component |
Routine not required |
No |
"Construct designer' window |
Yes. It has 1
PropertyBag |
Sequence
optimization |
Sub |
No |
'Configuration of
gene optimization' window |
Yes. It has 1
PropertyBag |
mRNA structure
optimization |
Sub |
No |
'Configuration of
gene optimization' window |
Yes. It has 1
PropertyBag |
Manipulation |
Sub |
No |
'Configuration of
gene optimization' window |
Yes. It has 1
PropertyBag |
Constraint |
Function |
Yes |
'Configuration of
gene optimization' window |
Yes. It has 1
PropertyBag |
Search strategy |
Sub |
No |
'Gene optimization'
window |
Yes. It has 2
PropertyBags |
When you develop a new module, Visual Gene
Developer automatically
generates a 'hash code (or Module Identification Key)' and assigns it
to the module like SSN (Social Security Number) in the USA or Resident
Registration Number in other countries. Because the hash code is a very
unique string code that consists of number and alphabet and created by
special algorithm, every module has different hash code. We use this
hash code to identify a module among module collections.
Although every module has its own name (what we call 'module name') and
Visual Gene Developer has some functions that allow a programmer to use
module name instead of Module Identification Key, our internal
algorithms and exposed classes (class: object of module collection)
recognize certain module mainly by Module Identification Key. The most
important reason is to prevent duplicate module name. Because some
developers may prefer the same.
o
General procedure
1. Design a PropertyBag in the 'PropertyBag Editor' window
2. Develop a new module in the 'Module Editor' window
3. Attach the PropertyBag to the module in the 'Module Editor' window
4. Test and debug code in the 'Module Editor' window
5. Run the module in the 'Target place' window.
|