Re: attack of silly coding standard?
On Dec 5, 11:57 pm, =D6=F6 Tiib <oot...@hot.ee> wrote:
On Dec 5, 10:16 pm, "Daniel T." <danie...@earthlink.net> wrote:
[...]
We discuss C++. Yes, for example class-based is one style of OOP,
other style of OOP is the one that uses prototypes and clones of such
prototypes (like Javascript) and there may be even more styles.
However here we discuss C++ OOP so here we expect it to be class-
based.
Actually, at the start, we weren't discussing OO at all. While
there are many styles of writing OO (some particular to C++, but
most more generally applicable), an essential element of all is
polymorphism. That's what separates "object oriented" from
other paradigms.
C is procedural language that deals with low level resource management
explicitly uses single exit (structured programming) idiom to ease
that task.
C is a low-level procedural language, yes. How it deals with
low-level resource management is up to the programmer, however.
And the SESE structured programming idiom has very little to do
with it, having been developed for entirely different reasons.
Some OOP languages may use closures or finalizers for
recycling non-memory resources by their OOP engine.
Neither closures nor finalizers have anything to do with OO,
either. (Closures are typical of functional languages, for
example, and pre-date OO by several decades.)
With C++ most of us expect RAII (OOP) idiom to be used to let
destructors to deal with releasing resources instead of
explicit resource management of C. That is most robust and
simple way.
And? What does that have to do with the original question? Or
OO?
[...]
Classification is of less interest for me, but i am still curious. To
what concept of what paradigm that RAII belongs then?
As has already been mentionned, it's a form of encapsulation.
I don't think it's really associated with any particular higher
level paradigm, however: it really fits into many of them.
(I've seen similar concepts used in Lisp, for example.)
--
James Kanze