suitability for architecture related software

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

suitability for architecture related software

Sanjay Minni-2
Is Dolphin Suitable for a CAD type of software.
we may have to develop a specific purpose
visual designing software for an interior designer
to be deployed at several locations.

In this connection we had worked on Dolphin
for quite sometime with the intention of porting
our database apps, but eventually gave up
(very reluctantly!) as we found database access
very slow
( tested only DST 4.0 with Sybase ASA 6.0.3 and
as compared to Powerbuilder we use at present)

Though its possible our knowledge may be lacking
and we would really like to migrate if possible

Sanjay Minni
www.minisoftindia.com


Reply | Threaded
Open this post in threaded view
|

Re: suitability for architecture related software

Bill Schwab-2
Sanjay,

> Is Dolphin Suitable for a CAD type of software.
> we may have to develop a specific purpose
> visual designing software for an interior designer
> to be deployed at several locations.

Keep in mind that I am a Smalltalk addict, but I suspect you would do very
well to build you CAD system in Dolphin.  I would further speculate that you
will find need to do the brute force drawing in a C/C++ DLL, but MinGW will
do a fine job of building that for you.

Of course the best place to start is to make something that works, then load
it to see whether the performance is adequate.   If not, profile the
Smalltalk code to find bottlenecks, fix those in Smalltalk, and then if you
still need more speed, split the expensive stuff into a DLL.

If youi are trying to build a 3D system, you might be able to get DirectX or
OpenGL to do the ugly work for you.  There is an OpenGL tool for Dolphin,
and you might look to Balloon 3D in Squeak for guidance.  If OpenGL were
more widely supported on Windows, I'd probably do more 3D work in Dolphin;
as it is, I have low expectations and use Squeak because the DirectX support
is already present.

Also, Croquet will hopefully appear in beta fairly soon.  The first public
release would run on only one machine available to me, but the 3D object
code (even then) looked pretty impressive.


> In this connection we had worked on Dolphin
> for quite sometime with the intention of porting
> our database apps, but eventually gave up
> (very reluctantly!) as we found database access
> very slow
> ( tested only DST 4.0 with Sybase ASA 6.0.3 and
> as compared to Powerbuilder we use at present)

Have you tried forward-only cursors?

Have a good one,

Bill

--
Wilhelm K. Schwab, Ph.D.
[hidden email]


Reply | Threaded
Open this post in threaded view
|

Re: suitability for architecture related software

Christopher J. Demers
In reply to this post by Sanjay Minni-2
"Sanjay Minni" <[hidden email]> wrote in message
news:bhn6l7$15i1b$[hidden email]...
> Is Dolphin Suitable for a CAD type of software.
> we may have to develop a specific purpose
> visual designing software for an interior designer
> to be deployed at several locations.

I wrote a simple CAD program for Visual Smalltalk and ported parts of it to
Dolphin (it is a low priority and I want to redesign parts of it so I do not
have the whole thing working yet).  I can't imagine there being any
performance problems for that.  However I suppose it depends what you want
to do, and how well designed the frame work is.  If you are talking about a
simple 2D CAD program I don't think that would be a problem.  In Visual
Smalltalk I just used the canvas with raster inversion to allow me to drag
objects around without having to repaint the entire screen.  I was pleased
with the way it worked.  My original program converted all the DXF
primitives into polygons (circles were lots of lines).  In my rewrite I will
be trying to use canvas shape drawing API's more.

> In this connection we had worked on Dolphin
> for quite sometime with the intention of porting
> our database apps, but eventually gave up
> (very reluctantly!) as we found database access
> very slow
> ( tested only DST 4.0 with Sybase ASA 6.0.3 and
> as compared to Powerbuilder we use at present)

If you use the ODBC DBConnection with lots of queries and do not precompile
them you will find database access can be very slow.  I found that I gained
a lot of speed by using precompiled queries.  It can be a annoying to do
that due to the development design overhead.  If you use ADO (which is now
wrapped in Dolphin 5) I suspect you would be able to get performance similar
to any other environment using ADO if you do similar things.  I personally
like ReStore ( http://www.solutionsoft.co.uk/restore/ ), it uses the ODBC
DBConnection, but automatically precompiles queries and caches objects.  It
is an Object-Relational mapping tool, and currently you need to let it
design the database for you (may a problem if you need to keep a previous
structure).

Let me mention one other thing just on the off chance that it is relevant.
I recently wrote a database explorer type tool in Dolphin.  At first I was
putting a DBResultSet directly in a list box.  The performance of that was
slow beyond all belief!  I worked on a caching wrapper to buffer the data.
I still found it to be very slow.  I found that the database was doing some
heavy lifting every time the list box asked for the size (quite often).  I
then simply cached the size of the recordset and the performance improved
massively.  If Powerbuilder is anything like MS Access, and you are used to
throwing query results directly into a list box you may be unimpressed if
you try the same in Dolphin.  It is easy to workaround just by caching the
size (or a better way that someone else should feel free to chime in with).
Of course simply throwing query results into a list box may not be the best
design in Smalltalk anyway.

> Though its possible our knowledge may be lacking
> and we would really like to migrate if possible

Post about any specific issues you have, and there is a good chance that one
of the regulars here can help.

Chris