IntraWeb for ASP.NET

Writing ASP.NET Applications in an Application-centric Way

Mike Riley

October 30, 2009

6 Min Read
ITPro Today logo in a gray background | ITPro Today

asp:review

 

IntraWebfor ASP.NET

WritingASP.NET Applications in an Application-centric Way

 

By Mike Riley

 

As thepopular axiom says, there's more than one way to solve a problem. And inbusiness, the best way in the eyes of management is often the fastest. ASP.NEThas dramatically accelerated the ability to design, code, and release Web-basedapplications. However, many programmers have yet to invest the time necessaryto learn the most effective paths and best practices.

 

Recognizingthat there are still legions of technologists who have yet to become advancedASP.NET developers, Atozed Computer Software has ported their award-winningIntraWeb Web application development framework to the .NET platform. By doingso, they have made the lives of many developers much easier.

 

.NETDevelopment the IntraWeb Way

IntraWebforgoes the HTML page metaphor in favor of a WinForm-like approach to Webapplication development. As such, laying out pages and assigning actions toclick events is more like developing a VB6 or Delphi application as opposed toan ASP.NET HTML client presentation layer. Because the design surface of anIntraWeb application is encased in an Atozed.Intraweb.AppFormUnit class,every object contained in it optimally derives from the Atozed.Intrawebtree. As a result, labels, text and list boxes, images, database objects, andeven rich media objects (such as MPEG and QuickTime references) have their ownIntraWeb derived controls.

 


Figure 1: An IntraWeb application uses itsown user interface objects, including everything from text fields to mediaelements.

 

Naturally,any other .NET component can also be added to and consumed by the IntraWebapplication. As a result of the IntraWeb palette, a mind-shift must take placefor existing ASP.NET developers to warm up to and appreciate the efficiencyIntraWeb has to offer. It took me over a week to acclimate and reorient myperspective toward the form-based, application-centric approach that IntraWeb'sdesign demands, compared to the page-based metaphor that ASP.NET and otherdynamic page-generating scripting languages require. Therefore, only developerswho are open to new approaches will be amenable to IntraWeb's applicationdesign and deployment philosophy.

 

Onceopen-minded developers do become enlightened by the speed and simplicity thatIntraWeb has to offer, a deep appreciation for the product's capabilitiesbegins to overtake the concern and skepticism of proprietary vendor lock-in.It's true that coding with IntraWeb's assemblies can house .NET applications inan abstracted application entity, but this can actually work toward somedevelopers' multi-platform environments. In addition to the .NET platform,Atozed has released IntraWeb for Delphi for Win32, Kylix for Linux, and Java,giving applications built using its framework much more operating system andlanguage flexibility than ASP.NET.

 

Anotheradvantage is the speed of application development using IntraWeb as compared toASP.NET. For any developer who has learned ASP development from Microsoft'sIBuySpy demo, Atozed has reconstructed that shopping cart demonstration usingIntraWeb using a fraction of the code. Not only does this save paper, it alsomakes it considerably easier to understand what the application is doing. Forexample, looking at the validation code for an IntraWeb object is similar tovalidation code attached to a Windows Form control. After I wrote a fewexamples of my own, I asked myself in amazement, "Is that all I have to write?I'm done already?!" Needless to say, I was impressed with the rapid developmentresults that IntraWeb promised and delivered.

 

IntraWebapplications can be compiled and executed as either ISAPI DLLs or standalone.NET executables. The standalone approach, although once again having thatcounter-intuitive "bad design" stigma associated with standalone Web servers,may be useful for small department or prototype demonstration purposes. I foundthat it was also considerably easier to debug a standalone application versus aDLL. And once my IntraWeb app was working to my specifications, I easilyconverted it to an ISAPI DLL. Try doing that with an ASP.NET app!

 


Figure 2: IntraWeb applications can bedeployed either as ISAPI DLLs or standalone executables.

 

Trusting in IntraWeb

As Istated earlier, the steepest learning curve associated with IntraWeb is thedeprogramming necessary for existing dynamic script-based page developers. It'sdefinitely easier for traditional Windows Forms-based programmers to learn andwrite applications with IntraWeb than it is for veteran ASP.NET developers. Assuch, it's not a framework that everyone will want to use. Large enterprisesthat already have blackbelt ASP.NET developers may find the paradigm shift toodisruptive and initially constraining. But even those diehards may consider itat least for rapid prototyping needs after they see how few lines of code wererequired for the dynamic image map product demo.

 


Figure 3: One of several example projects isDie, Fly! Die!, an IntraWeb version of Microsoft's popular IBuySpy demo.

 

However,because IntraWeb handles everything, developers are sometimes at the mercy ofthe presentation layer syntax returned to the client browser. This rarely is aproblem with Internet Explorer, but I did encounter some nasty layout issuesrunning IntraWeb applications in a Mozilla Firefox browser. (Atozed was alreadyaware of the Firefox issues and expected to address them in a future release.)When IntraWeb encounters a browser header of unknown origin, it defaults todisplaying a "Device not supported" error message that could be a problemserving certain mobile clients that don't fully support the HTML 3.2 or higherspecification. Another oddity was the fact that the product's integratedhelp-based documentation requires a separate download and installation insteadof being bundled with the primary application installation package. The companyis going to address this issue as well.

 

Conclusion

The moreI used IntraWeb for ASP.NET the more I appreciated its powerful and timesavingfeatures. Although I would still most likely use straight ASP.NET for most ofmy Web development needs, because of my experience level and the number ofcomponents and code snippets I've amassed over the two years I've beendeveloping for it, I may turn to IntraWeb for that quick prototype or uniquerequest by a customer not interested or capable of running IIS and who needs astandalone approach that is sand-boxed by the .NET Framework. If simplicity andspeed of Web application deployment are paramount, IntraWeb may be the idealsolution.

 

Rating:

Web Site:http://www.atozed.com/intraweb/

Price:See Web site.

 

Pros

Cons

Excellent rapid prototype development tool for Web-centric application designs.

Modifying presentation layer syntax for multi-browser support is problematic.

Powerful functionality that would take pages of ASP.NET code can be designed with IntraWeb using only a few lines of code.

Learning to readjust to IntraWeb's application-centric approach may be a challenge for seasoned ASP.NET developers.

 

 

Sign up for the ITPro Today newsletter
Stay on top of the IT universe with commentary, news analysis, how-to's, and tips delivered to your inbox daily.

You May Also Like