One of our major concerns is to make good tools, good extensions. But what does this means.
A good Dreamweaver extension
What makes a Dreamweaver extension and in a general way any
application to be considered good. There are more "parameters" that can
be accounted to determine that a certain application is a good
one. Some of this parameters can be quantified, most of them can't.
Performance
The performance is one of the easiest parameter that can
be determined. It is a quantifiable one and there are tools and ways to
determine an application performance. For a Dreamweaver
extension there are not tools to determine the performance but some
programming techniques can be implemented.
A Dreamweaver extension is inherently slow due to the fact that they
are written in JavaScript. Because of this the developer must
take good care of the code he's writing as small mistakes can have
a huge impact on the extension performance.
There are three performance steps to be addressed when creating a Dreamweaver extension:
- Loading time
- Handling speed
- Code generation speed
All this may not be seen as important factors as Dreamweaver
extensions are relatively small in size but let's consider the
following one:

This
is the ImpAKT's Insert Record Wizard. This is a big one. There are a
lot of fields to be initialized at startup. There is also a grid
control that must be filled with values generated based on the values
of another fields. All this must be done at startup. And doing this
fast in JavaScript is not an easy task.
After the initialize part comes the handling. An interface
responsiveness is a big issue. Users do not like interfaces that behave
like from another era (of computing). So all the events between UI's
components must be handled with care, not to clutter the system with
communication.
The user has set up the parameters, click's OK and the code is
generated. This wizard (set up like in the image) generates 140 lines
of code in 312ms. And trust me this is a good time. Remember: all the
extensions are written in JavaScript and the Dreamweaver extensibility
layer is also written in JavaScript.
|