- •1496 Corba - Object-Oriented Technology)
- •1432 Five Object Oriented Development Methods, Research report, hp Laboratories,
- •1866 Corba Implementation Descriptions: Object-Oriented Technologies dome
- •135 Based approaches (e.G. Smalltalk handles) allow powerful dynamic typing, as
- •83 There are many definitions of an object, such as found in [Booch 91, p77]:
- •83 There are many definitions of an object, such as found in [Booch 91, p77]:
- •48 Languages that are historically procedural languages, but have been extended with some oo features. Examples: Visual Basic (derived from basic), Fortran 2003, Perl, cobol 2002, php, abap.
- •121 Interface - e.G. Gui
- •197 Sharing and often instances will simply delegate to parents to access methods
- •670 Polymorphic languages can be statically typed to provide strong type checking,
- •Inclusion
- •209 Usage is atypical] See [Booch 94, pp 154-155] for a brief discussion of
- •203 Parents (as any other member) can be added or changed dynamically, providing
- •23 Subtype polymorphism
- •18 A survey by Deborah j. Armstrong of nearly 40 years of computing literature identified a number of "quarks", or fundamental concepts, found in the strong majority of definitions of oop.
- •24 Object inheritance (or delegation)
- •295 1.4) What Is a Meta-Class? (Object-Oriented Technology)
- •228 [Booch 91, p. 45] defines: "Encapsulation is the process of hiding all of the
- •912 Polymorphism is the ability of an object (or reference) to assume (be replaced
- •702 See also section 3.7, the Annotated Bibliography, and appendix d. The
- •120 Application Objects - In the Object Model
- •210 Prototype theory in the context of ooa and ood.
- •180 Derived class, parent class
- •400 Specify required attributes of a matching object (see sections 2.1, 2.7 and
- •2282 Garbage collection (gc) is a facility in the run-time system associated with a
- •1540 From a joint proposal (named "corba") of Hewlett-Packard, ncr Corp.,
- •170 Inheritance. This is an example of dynamic binding, which replaces a
- •1519 1) The Object Request Broker, or key communications element, for
- •714 Of externally observable behavior; a complete, consistent, and feasible
- •749 (User-)environment). The product, or resultant model,
- •302 The Meta-Class can also provide services to application programs, such as
- •1511 In late 1990 the omg published its Object Management Architecture
- •621 Term "multi-method") consider the functional and receiver based forms
- •1617 Between applications on different machines in heterogeneous
- •192 Objects contain fields, methods and delegates (pseudo parents), whereas
- •159 Function taking an object of the record type, called the receiver, as the
- •1346 Information, updates to Release 1.1 of The Object Database Standard:
- •458 Or change parents from objects (or classes) at run-time. Actors, clos, and
- •774 Should be made into a public standard, perhaps to be adopted by the omg. The
- •140 Objects [Kim 89, ch 19 and Yaoqing 93]. Simple static approaches are found in
- •18 A survey by Deborah j. Armstrong of nearly 40 years of computing literature identified a number of "quarks", or fundamental concepts, found in the strong majority of definitions of oop.
- •18 A survey by Deborah j. Armstrong of nearly 40 years of computing literature identified a number of "quarks", or fundamental concepts, found in the strong majority of definitions of oop.
- •168 [Stroustrup 90] covers the implementation details of virtual member functions
- •220 Parents when certain predicates are true. This can support a types
- •148 In more conventional languages to fully emulate this style of dynamically typed
- •2052 - Naming - network implementation of X.500 directory
- •2082 2 V1.X. Development
- •2182 Functionality than specified by the X.500 standard. Because dome goes
- •2191 - True messaging for workflow management and edi
- •1166 Used for assignment compatibility forcing an assigned object to inherit
- •2065 Registering services and entities in a distributed
- •1541 HyperDesk Corp., Digital Equipment Corp., Sun Microsystems and Object
- •2038 Toolkits (others are planned for future release) --
- •2434 Testing of Object-Oriented Programming (toop) faq
- •863 See also [Yourdon 92], [Wilkie 93], and [Booch 94] for discussions on this
- •1465 [Wilkie 93] summarizes, compares, and provides examples of Booch, Wirfs-Brock,
- •2311 Length, include file nesting and macro stack depth. This causes
- •2257 Optical or magnetic media containing all files required to load and
- •2489 Bezier, Boris, "Software Testing Techniques", 2nd edition, Van Nostrand
- •602 Notations for invoking a method, and this invocation can be called a message
- •1776 Object-communication mechanism across heterogeneous networks by using the
- •1391 It covers extensible objected-oriented programming from hardware up.
- •1317 Structured subobjects, each object has its own identity, or object-id (as
- •434 1.9) Does Multiple Inheritance Pose Any Additional Difficulties? (Object-Oriented Technology)
- •1751 Hp believes it is best positioned to help customers take advantage of
- •2709 One. This is a beta release and _should_ compile on any posix.1 system.
- •660 Dominate and double dispatch can be suffered, or an embedded dynamic typing
83 There are many definitions of an object, such as found in [Booch 91, p77]:
87 defined in [Coplien 92, p280], where "classes play a central role in the
92 reality" [Booch 91, p77]. Other definitions referenced by Booch include
98 in depth. [Martin 92, p 241] defines: "An "object" is anything to which a
102 the problem at hand." [Shlaer 88, p 14] defines: "An object is an abstraction
182 As pointed out in [Stroustrup 90, p197], the base
228 [Booch 91, p. 45] defines: "Encapsulation is the process of hiding all of the
280 [Booch 91, p93]
304 modification). [Booch 91, p 119] provides another example in Smalltalk with
433 91, p 113].
532 p56]. Overriding is the term used in Smalltalk and C++ for redefining a
546 both inheritance and polymorphism and are object-oriented. [Cardelli 85, p481]
559 Stroustrup's first edition of [Stroustrup 91, '86 p. 37] defines object based
593 A method implements behavior, which is defined by [Booch 91, p80]:
623 number of new mechanisms added to COMMON LISP" [Kim ch 4, p70 (D. Moon)].
1014 > Booch's Definition [Booch 91, p. 517]:
1035 > Stroustrup's Definition [Stroustrup 90, p. 209]:
1041 C++). [Stroustrup 91, p. 136] has an example of polymorphism with void *'s,
1044 Rumbaugh's Definition [Rumbaugh 91, p. 2]:
1080 [Garfinkel 93, p80] and [Cox 91, pp 64-67]. To extend Garfinkels example with
1431 Arnold, P., Bodoff, S., Coleman, D., Gilchrist, H., Hayes, F., An Evolution of
1439 Methodologies. Computer, Oct 1992, Vol 25, No. 10, p 22-40
1472 Coad, P., and Yourdon, E. - Object-oriented analysis (2nd edition), 1991a.
1473 Coad, P., and Yourdon, E. - Object-oriented design, 1991b.
2501 Fiedler, Steven P., "Object-Oriented Unit Testing", Hewlett-Packard
2525 Hoffman, D.M. and P.A. Strooper. Graph-Based Class Testing. In
2558 Murphy, G.C., Wong, P. 1992, Towards a Testing Methodology for
2559 Object Oriented Systems, M.P.R Teltech Ltd. A poster at the
2563 Murphy, G. and P. Wong. Object-Oriented Systems Testing Methodology: An
2639 Wong, P. Automated Class Exerciser (ACE) User's Guide. Technical
approach
5 In contrast, the object-oriented approach encourages the programmer to place data where it is not directly accessible by the rest of the program. Instead, the data is accessed by calling specially written functions, commonly called methods, which are either bundled in with the data or inherited from "class objects." These act as the intermediaries for retrieving or modifying the data they control. The programming construct that combines data with a set of methods for accessing and managing those data is called an object. The practice of using subroutines to examine or modify certain kinds of data, however, was also quite commonly used in non-OOP modular programming, well before the widespread use of object-oriented programming.
7 Objects can be thought of as wrapping their data within a set of functions designed to ensure that the data are used appropriately, and to assist in that use. The object's methods will typically include checks and safeguards that are specific to the types of data the object contains. An object can also offer simple-to-use, standardized methods for performing particular operations on its data, while concealing the specifics of how those tasks are accomplished. In this way alterations can be made to the internal structure or methods of an object without requiring that the rest of the program be modified. This approach can also be used to offer standardized methods across different types of objects. As an example, several different types of objects might offer print methods. Each type of object might implement that print method in a different way, reflecting the different kinds of data each contains, but all the different print methods might be called in the same standardized manner from elsewhere in the program. These features become especially useful when more than one programmer is contributing code to a project or when the goal is to reuse code between projects.
8 Object-oriented programming has roots that can be traced to the 1960s. As hardware and software became increasingly complex, manageability often became a concern. Researchers studied ways to maintain software quality and developed object-oriented programming in part to address common problems by strongly emphasizing discrete, reusable units of programming logic[citation needed]. The technology focuses on data rather than processes, with programs composed of self-sufficient modules ("classes"), each instance of which ("objects") contains all the information needed to manipulate its own data structure ("members"). This is in contrast to the existing modular programming that had been dominant for many years that focused on the function of a module, rather than specifically the data, but equally provided for code reuse, and self-sufficient reusable units of programming logic, enabling collaboration through the use of linked modules (subroutines). This more conventional approach, which still persists, tends to consider data and behavior separately.
14 At ETH Z?rich, Niklaus Wirth and his colleagues had also been investigating such topics as data abstraction and modular programming (although this had been in common use in the 1960s or earlier). Modula-2 (1978) included both, and their succeeding design, Oberon, included a distinctive approach to object orientation, classes, and such. The approach is unlike Smalltalk, and very unlike C++.
54 ECMAScript language. JavaScript is perhaps the best known prototype- based programming language, which employs cloning from prototypes rather than inheriting from a class. Another scripting language that takes this approach is Lua. Earlier versions of ActionScript (a partial superset of the ECMA-262 R3, otherwise known as ECMAScript) also used a prototype-based object model. Later versions of ActionScript incorporate a combination of classification and prototype-based object models based largely on the currently incomplete ECMA-262 R4 specification, which has its roots in an early JavaScript 2 Proposal. Microsoft's JScript.NET also includes a mash-up of object models based on the same proposal, and is also a superset of the ECMA-262 R3 specification.
67 Steve Yegge and others noted that natural languages lack the OOP approach of strictly prioritizing things (objects
111 understanding of the problem domain and [Jacobson 92] provides a novel approach
138 approach with an added layer of indirection to Smalltalk's handles is found
292 He advocates starting with the former approach, turning to the second approach
495 otherwise. See [Raj 89] for an alternative approach as found in Jade.
755 and Constantine. Their complete approach ([Shlaer 88, 92]) consists of
792 with a risk-driven incremental prototyping approach. [Booch 91, 6.1]
986 (intensional) approach (where subtypes are supersets of (contain) supertypes).
1009 although it was abandoned in favor of a single class-based approach for
1206 See also [Cook 90], "Inheritance Is Not Subtyping", for a formal approach.
1266 Object Specialization [Sciore 89] is an example of a hybrid approach between
1318 opposed to a purely value-oriented approach) and because of support for methods
1454 S. Hong, G. van den Goor, S. Brinkkemper, A Formal Approach to the
1506 (*) promotion of the object-oriented approach to software engineering
1609 that the object-oriented approach to software construction best
1785 This is part of the companies' planned approach toward a standards-based,
1937 approach to filtering, and more code examples to guide programmers.
1953 In version 1.2 IONA has also extended the whole approach to filtering of
2521 approach to testing which the authors call Testgraphs. An
2575 Describes ways in which the usual approach to software testing
2600 testing. A state-based approach is described.
2612 state-based testing approach.
derived