[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Methods, data hiding, and friends



"David Harrington" writes:
>In SNMP, the small number of functions have direct access to any
>variable anywhere in the MIB (scoped by a copntext of course). This is
>very consistent with the apporoch used by assembly language, BASIC
>(before structured BASIC was developed), C, and other procedural
>languages.

This might be true if libc had only three functions (get, get-net, set).
Seen in this light, SNMP is more like early basics, where one could
peek and poke, based on the documentation, but never had a proper API.

>In O-O development, the software industry found a need to have things
>like inheritance, private methods, and friend methods.

And factories and overloading and interfaces and virtual functions
and templates and generics and other sources of endless training
courses (in popular vacation sites ;^)

>In netconf, a capability's method such as "create-vlan" may need to
>manipulate the data elements of other capabilities, such as the
>interface capability. Will methods of one capability be permitted to
>directly modify the data of another capability, or will they be
>constrained to utilize public and friend interface methods of the
>other capabilities?

I see netconf as more like C, but that's probably because I like C.

A capability is like a library, with the functions as RPC methods
and the documentation as, well, documentation.  With a little IDL
work, one can make the functions appear as real RPCs to a C program,
so that "ping(host, size, timeout)" does the right thing.  (I admit
I had an easier time doing this in perl, with associative array
arguments and AUTOLOAD, but it works in C too.)

Thanks,
 Phil

--
to unsubscribe send a message to netconf-request@ops.ietf.org with
the word 'unsubscribe' in a single line as the message text body.
archive: <http://ops.ietf.org/lists/netconf/>