When speaking about e.g. computer "objects" (files, documents or other things manipulable through a graphical user interface) what would you say is the difference between the object's properties and its settings - if the properties (as well as the settings) can be edited/changed?

EDIT: I should clarify that I refer to the presentation in a user interface (from a user perspective) - not in relation to programmers/programming languages.

  • 2
    Are you asking in terms of what these words would mean to a programmer/computer scientist, or to a normal computer user? – Vincent McNabb Jul 7 '11 at 10:33
  • 2
    It all boils down that we need details about which meaning is meant. Personally I thought the question is about "properties" as in "right-click the file and select 'properties' to bring up the dialog". – Joachim Sauer Jul 7 '11 at 10:51
  • @Joe Blow, I'll admit that the choice of "object" perhaps is a bit unwise, since it has a certain meaning to programmers. If you find it shambolic(?) I have tried to clarify, but please let me know, if it isn't clear enough, still. After all, from my understanding, this forum is about clear and "correct" communication :) – agibsen Jul 7 '11 at 13:11
  • @agib, Well done on clearing up the question. I truly apologise if I appeared aggressive. I am only 5'1" and 89 years old so you can be sure I am not aggressive! Might I suggest very simply editing the initial paragraph to "computer interfaces" – Fattie Jul 7 '11 at 13:43

All of this is in the context of computer user interfaces, I can't really comment on the more general meaning.

Properties are attributes of a thing that are somehow inherent to it. Examples of properties are:

  • the amount of memory in your computer
  • the type of processor/CPU in your computer
  • the size of a hard disk in your computer
  • the size of a given file

You can't usually change properties directly. You can open the computer and add more memory, but you can't just pull a "memory" slider to the right to add more memory.

Settings are attributes that can easily be modified. Examples of settings are:

  • the background color and/or image of your desktop
  • the format used to display the time of day
  • the location where your browser stores downloaded files

Note that there is a separate meaning of this in the world of object-oriented programming (a part of software development) where a property is any attribute of an object, no matter if it's changeable or not. But even here the terminology can vary a lot between languages.

  • 1
    Your answer actually would generalise to the real world quite well. Consider a house. A property of it is the number of bedrooms. A setting would be the temperature of the central heating. – Vincent McNabb Jul 7 '11 at 9:34
  • 1
    @Joe Blow: the questions here are often posed by people who are not particularly conversant with English or with a specific subset of the language. The phrase "computer 'object'" is a way of adding context to the question, separating the term "object" from its everyday, physical, meaning. That the question refers to "objects" in the OOP sense of the term seems quite obvious to me. – bye Jul 7 '11 at 10:46
  • 1
    ... because the questioner is a one-hit disappering user who we'll never hear from again. But it does raise an interesting issue. IMO, when a question is an utter shambles, it's not a good idea for people to jump in and supply "answers" (even if the information in itself, such as presented here, is useful and correct, in and of itself). The only real response to a "question" like the above, is "Hmm, let's step back, so far all we have is a total muddle - tell us more, Mr OP." You know what I mean? We collectively serve nothing by "answering" confused shambleses. @stan – Fattie Jul 7 '11 at 12:01
  • 1
    @Stan also purely FWIW, I think you're (sensibly) forgetting that "Windows" (shudder) uses the word "properties" I believe as part of the user experience, in relation to preferences - I think. (A couple of others mentioned this.) Anyway again the only thing proved here, as an astounding amount of time can be wasted by many people, on shambolic questions. – Fattie Jul 7 '11 at 12:02
  • 1
    Why so aggressive @Joe Blow ??? Yes, it's my first time here on English SE, but I'm quite active on UX SE. I was thinking that a language question would be more suitable here than on UX SE, but perhaps that was a wrong assumption... Instead of talking about muddle/shambolic question, a more constructive stance would be to, gently, ask: Please tell us more. And then, if the question is judged not to be relevant here, point to a better way of/resource for answering the question. – agibsen Jul 7 '11 at 13:32

Every software developer will say, that "computer" object has neither properties (except for some software languages, where property is a method with special syntax) nor settings.

Settings is more of a set of external data, that specifies the behaviour of computer entity - application as a whole or some submodule in it. In UI they are frequently refered as options or preferences.

Properties (if we are not talking about special syntax I mentioned earlier) - I can't say I hear this word applied to computer entities often. I'd say it can be applied to a special kind of settings, that are stored in external files on disk (called property files or configuration files).

  • Every software developer? Not this one -- ever. – bye Jul 7 '11 at 9:00
  • @Stan Rogers I feel for you. – Philoto Jul 7 '11 at 9:33
  • A "property" is never a method, although its accessors and mutators (its getters and setters) might be. Even if the property is entirely virtual (that is, if it is entirely an artifact of its accessor and is unsettable), the property and its accessor are not the same thing. The property, in that case, is the value returned by the accessor, not the accessor itself. It has always been thus. – bye Jul 7 '11 at 10:50
  • @Stan Rogers I didn't want to start an argument about names, but since you insist... You're talking about fields of an object, not properties. And yes, they are not methods. – Philoto Jul 7 '11 at 11:23
  • Fields are merely the storage entities, not the properties themselves. They may or may not be accessible as properties (and the "data hiding" dictum suggests that they never be accessible except through accessors and mutators), and the value returned by the accessor or set by the mutator may or may not be the same as the value stored in the field. (I've been in the game for more than thirty years; you can keep going if you want, but you'd better know what you're talking about.) – bye Jul 7 '11 at 11:52

When talking about objects (instances of classes in an object-oriented language) you should use the word properties.

Settings apply more properly to applications and environments; they are changes in configuration. A setting may be controlled entirely by a single property of a single object in some cases, but the object itself doesn't have a setting, it has a property.

(There is a little room for confusion here, since the act of changing a property is often accomplished using a method called a setter, and in many languages the setter is named by convention setPropertyName(). And it doesn't help at all that Java uses *.properties as the default name for an application's configuration file.)

  • Should we now delete all the answers and comments which relate to OO programming, which we now know is utterly irrelevant? – Fattie Jul 7 '11 at 14:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.