Talk:Object (computer science)
This is the talk page for discussing improvements to the Object (computer science) article. This is not a forum for general discussion of the article's subject. |
Article policies
|
Archives: Index, 1Auto-archiving period: 2 years |
This article is rated Start-class on Wikipedia's content assessment scale. It is of interest to the following WikiProjects: | |||||||||||||||||||||
|
yeah but
editWRT current intro text "an object is an entity with well-defined behavior." That is not wrong but it's not useful. My car is an entity with a well defined behavior, but it's not a software object. There's something about a software object that is different than my car. I'm pretty sure I fixed this a few months ago but it morphed into generic gobbledygook.
A software object is a grouping of data and functionality. And it should represent an entity with well defined behavior ... although that implies a quality of design that is not required to be an object. Stevebroshar (talk) 01:26, 25 October 2024 (UTC)
Terrible Article
editThis is all over the place, no clean and clear definition of object. No wonder people are confused. Ian.joyner (talk) 01:37, 27 October 2024 (UTC)
- @Ian.joyner yes it's bad. it was better a while ago but people reworked it to its current form. One challenge is that object is highly overloaded and this article tries to cover many of the overloads. A programming object is different from a database object is different from whatever the semantic web is. Do they have common aspects? Not sure. ... FYI I edited it to focus on programming object. If folks think the other types of objects are not covered now I suggest new articles such as object (database), object (semantic web) ... and maybe renaming this article to something like object (programming) Stevebroshar (talk) 20:34, 27 October 2024 (UTC)
Content archived
editI see that this talk page content was archived not too long ago. I don't think that was a good choice. The posts were on the older side, but many of them still relevant. In general, I think folks are far too quick to archive talk info. Stevebroshar (talk) 14:54, 28 October 2024 (UTC)
Definition is not wrong
editWRT starting text (before my edit) "an object is an entity with well-defined behavior" based based on my knowledge of the subject is not wrong, but is not useful. Before the rule hounds complain about OR, I did check the reference material: Object-Oriented Analysis and Design with Applications, page 38. Sure enough that page includes: "In the previous chapter, we informally defined an object as a tangible entity that exhibits some well-defined behavior." (Notice the "previous chapter". This definition was introduced on page 20. But, that's not the most important thing.) The important part is "we informally defined". The authors are still teasing the reader about the definition of object. They call it informal here (pg 38) since they give a more accurate (formal) definition later! On page 78 they finally get to it: "An object is an entity that has state, behavior, and identity." That is consistent with what I know to be an object in software development; not just behavior, but also state and identity.
<rant> I hate it when folks use hard-to-verify sources. It was hard to obtain that book. Since it was hard to find, I assumed the cite was accurate. And others assume it is correct. Google and AI bots scrape the definition from WP and then tell the world that an object is "an object is an entity with well-defined behavior" even though that's a lame definition. </rant>
For those who don't have access to the book. Here are direct quotes of the referenced information:
page 78
An object is an entity that has state, behavior, and identity. The structure and behavior of similar objects are defined in their common class. The terms instance and object are interchangeable
page 76
We add to our informal definition the idea that an object models some part of reality and is therefore something that exists in time and space
Real-world objects are not the only kinds of objects that are of interest to us during software development. Other important kinds of objects are inventions of the design process whose collaborations with other such objects serve as the mechanisms that provide some higher-level behavior [3]. Jacobson et al. define control objects as “the ones that unite courses of events and thus will carry on communication with other objects” [62]. This leads us to the more refined definition of Smith and Tockey, who suggest that “an object represents an individual, identifiable item, unit, or entity, either real or abstract, with a well-defined role in the problem domain” [4].
I editing the intro to accurately cover this info. Stevebroshar (talk) 10:44, 31 October 2024 (UTC)