Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid

Re^4: The Accessor Heresy

by itub (Priest)
on Nov 28, 2005 at 20:51 UTC ( #512368=note: print w/replies, xml ) Need Help??

in reply to Re^3: The Accessor Heresy
in thread The Accessor Heresy

Which attributes? What are the "attributes" and why should the user care? The only thing the user of an object should care about is being able to do whatever he needs with the object, which may include getting and setting certain "observable" properties, while the methods take care of keeping the object in a consistent internal state.

The actual attribute stored internally by a circle object might turn out to be the perimeter, but that doesn't affect the circle's user at all, as long as he is able to get the radius, or whatever he needs, out of the object. If the user then wants to set or get the perimeter and the implementation turns out to be a trivial "accessor" because it happens to match the internal structure of the object, it doesn't make any difference and is not bad design.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://512368]
[Lady_Aleena]: ctags?
[shmem]: ctags is a program which (recursively) extracts the symbols from source and stores them in a one-file database. This allows you to query the locations where these symbols (e.g. a subroutine name) are used anywhere in the source code tree...
[shmem]: ...from inside the editor.
[shmem]: apt-get install exuberant-ctags
[Lady_Aleena]: I think I heard vim has a big learning curve.
[shmem]: then in the root of your source tree run: ctags -R
[shmem]: you get a file named tags where all symbols and the places where they are used are listed
[Lady_Aleena]: geany may not support that.
[shmem]: I see that there is a plugin geany-plugin- codenav

How do I use this? | Other CB clients
Other Users?
Others rifling through the Monastery: (10)
As of 2017-04-27 12:11 GMT
Find Nodes?
    Voting Booth?
    I'm a fool:

    Results (505 votes). Check out past polls.