Paul

That was just the property heirachy that popped into my mind

Neven

----- Original Message -----
From: "Paul Ritchie" <[EMAIL PROTECTED]>
To: "Multiple recipients of list delphi" <[EMAIL PROTECTED]>
Sent: Friday, November 02, 2001 3:36 PM
Subject: RE: [DUG]: Best practice - To except or not


> At the risk of not appearing to not enter into the spirit of the
discussion
> ;) aren't you talking about a database application?
>
> Therefore the number of clock cycles you can save by coding a certain way
> over another is more than swamped by relatively slow database operations.
>
> Therefore I'd err on the side of selecting what is easiest to maintain in
> the future.
>
> Paul.
>
> > -----Original Message-----
> > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On
> > Behalf Of Myles Penlington
> > Sent: Friday, 2 November 2001 3:18 p.m.
> > To: Multiple recipients of list delphi
> > Subject: RE: [DUG]: Best practice - To except or not
> >
> >
> > Take your pick. Paul is quite right in this statement.
> >
> > The overhead in setting up and taking down exception frames
> > is reasonably
> > light (something equivalent to about 4 assignments), however
> > the overhead in
> > raising an exception (and the OS raising an AV) is huge by comparison.
> >
> > Depends on the numbers of how often you expect it to fail. If
> > never then I
> > would tend to use the exception handler.
> >
> > Myles.
> >
> >
> > Neven asked:
> >
> > > If you are following a trail of properties, ie
> > > Datasource.DataSet.Connection
> > > is it be to test for assignment/nil a each step or
> > > just try except it?
> > >
> > > ie
> > >   if (Datasource <> nil) and
> > >      (Datasource.DataSet <> nil) and
> > >      (Datasource.DataSet.Connection <> nil)
> > >   then Result := Datasource.DataSet.Connection
> > >   else Result := nil;
> > > or
> > >
> > > try
> > >   Result := Datasource.DataSet.Connection
> > > except
> > >   Result := nil
> > > end;
> >
> > From an efficiency point of view, setting up and collapsing
> > exception frame
> > is not free.
> >
> > Whether it's cheaper than the code to test all the pointers
> > against nil
> > would depend on how many you were testing. I haven't examined
> > the generated
> > code but I would not be suprised if it took quite a few
> > pointer tests before
> > the exception handling overhead was a net win.
> >
> > Now, if the exception is actually _fired_, you'd be paying
> > lots of cycles so
> > I wouldn't use this idiom where you expect Result to be nil
> > very often.
> > Exception processing itself is not cheap - it should only
> > really be used for
> > catching rare cases  (hence the name exception I suppose :-)
> >
> > The efficiency concerns would put me off using this idiom,
> > but from a style
> > point of view, I'd say it's a matter of personal preference.
> >
> > TTFN,
> >   Paul.
> >
> >
> > --------------------------------------------------------------
> > -------------
> >     New Zealand Delphi Users group - Delphi List -
> > [EMAIL PROTECTED]
> >                   Website: http://www.delphi.org.nz
> > To UnSub, send email to: [EMAIL PROTECTED]
> > with body of "unsubscribe delphi"
> > Web Archive at: http://www.mail-archive.com/delphi%40delphi.org.nz/
> > --------------------------------------------------------------
> > -------------
> >     New Zealand Delphi Users group - Delphi List -
> > [EMAIL PROTECTED]
> >                   Website: http://www.delphi.org.nz
> > To UnSub, send email to: [EMAIL PROTECTED]
> > with body of "unsubscribe delphi"
> > Web Archive at: http://www.mail-archive.com/delphi%40delphi.org.nz/
> >
>
> --------------------------------------------------------------------------
-
>     New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED]
>                   Website: http://www.delphi.org.nz
> To UnSub, send email to: [EMAIL PROTECTED]
> with body of "unsubscribe delphi"
> Web Archive at: http://www.mail-archive.com/delphi%40delphi.org.nz/
>

---------------------------------------------------------------------------
    New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED]
                  Website: http://www.delphi.org.nz
To UnSub, send email to: [EMAIL PROTECTED] 
with body of "unsubscribe delphi"
Web Archive at: http://www.mail-archive.com/delphi%40delphi.org.nz/

Reply via email to