CODE:NEO Templates
Do you want to segregate programming from HTML? Do you want to
procude a product that can easily be customized by client and
resellers? Are your pages frequently changing?
If you answered yes to any of these questions your an excellent
candidate for the brand new CODE:NEO Templates. They allow you
to create html files which contain specific tags that the server
processes in an orderly fashion before delivering the web page.
A few standard tags come pre-programmed, but this part of the
product is realeased as an exapmle so that you may customize it
fully.
This website itself uses CODE:NEO templates. You can see that
the filename for this page is CnTemplateInfo.CnTmpl. Templates
can be run a number of ways, they can be associated in the web
server so that an ISAPI extension run a CODE:NEO application with
which to process the page.
Or you can intergrate these templates into your application internaly
by using a URL the contains the name of the template. For Example
youdomain.com/youExecutable.CnBin?template=yourTemplate.
This allows complete flexibility within your application. You
can then build your application code using CODE:NEO's C++ language
and let your designer build the Cntmpl and you simply colaborate
with him as to the meaning and functionality of simele tags. See
this as example;
yourApplication.CnSrc;
<%Cn>
CnTmpl myTemplate("yourDesignSource");
myTemplate.substituteToken("myToken","hello world
from within a .CnTmpl");
swrite(myTemplate.buffer);
</Cn%>
yourDesignSource.CnTmpl;
<html><body><%Cn>myToken</Cn%></body></html>
the ouput;
<html><body>
hello world from within a .CnTmpl</body></html>
This also works really great for databases to because you use
method called insertRow which repeats your token inplace within
the HTML. See this example of multiple inserts into a output page.
yourApplication.CnSrc;
<%Cn>
CnTmpl myTemplate("yourDesignSource");
for(int i=1;i<=3;i++)
myTemplate.substituteRow("myToken","<tr><td>hello
world from within a .CnTmpl<td></tr>");
swrite(myTemplate.buffer);
</Cn%>
yourDesignSource.CnTmpl;
<html><body><table
border=1>
<%Cn>myToken</Cn%>
</table></body></html>
the ouput of course;
| hello world from within a .CnTmpl | | hello world from within a .CnTmpl |
By mixing and matching different templates and using these token
in a nested design you can creativly control the interface of
your application without having to jeopordise the sanctity of
your code or the stability of your program.
A common difficulty with operating web software companies is
that code piracy is nearly impossible to prevent as you've distributed
your ASP, CF or Java source files directly to the server. In this
CODE:NEO method you can simply package your .CnBin ready to go
with some examples and web designer can easily use your package.
This is also extremely high performance because the templates
can be cached, and the tokens simply 'substituted' in a flash
from the CODE:NEO shared memory server. You simply load the CnTmpl
into a shared memory object, when the .CnBin runs, it looks to
see if this is expired, or available, if so it calls swrite that
data directly from memory, otherwise it creates a new object,
which loads it from the disk placing it in shared memory.
The above example loads the file each time, which is probably
in cache already and rapidly read through the from cache through
block device. Again, high performance.
You can of course use .CnTmpl to create data files, or do even
string processing.
Creating CSV files, or sending emails.
If you are interested in finding out more, please contant
us. You'll be using a template that executes a specifc .CnBin
file to send us your email and page us so that we know someone
wants to make contact. The result you see, is of course another
template, index.CnTmpl, our homepage.
|