Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
oop-concordance.rtf
Скачиваний:
27
Добавлен:
10.02.2016
Размер:
2.04 Mб
Скачать

660 Dominate and double dispatch can be suffered, or an embedded dynamic typing

suffice

294 fail to suffice.

sugar

41 Attempts to find a consensus definition or theory behind objects have not proven very successful (however, see Abadi & Cardelli, A Theory of Objects[18] for formal definitions of many OOP concepts and constructs), and often diverge widely. For example, some definitions focus on mental activities, and some on program structuring. One of the simpler definitions is that OOP is the act of using "map" data structures or arrays that can contain functions and pointers to other maps, all with some syntactic and scoping sugar on top. Inheritance can be performed by cloning the maps (sometimes called "prototyping"). OBJECT:=>> Objects are the run time entities in an object-oriented system. They may represent a person, a place, a bank account, a table of data or any item that the program has to handle.

suit

1895 can be configured and constructed to best suit the runtime

suited

66 However, Niklaus Wirth (who popularized the adage now known as Wirth's law: "Software is getting slower more rapidly than hardware becomes faster") said of OOP in his paper, "Good Ideas through the Looking Glass", "This paradigm closely reflects the structure of systems 'in the real world', and it is therefore well suited to model complex systems with complex behaviours" (contrast KISS principle).

suitesoftware's

2143 SUITESOFTWARE's Distributed Object Management Environment (DOME)

summ

887 [Meyer 88] contains a brief summ

summaries

1428 Summaries and comparisons will be provided in future FAQs. Suggestions for

summarizes

1465 [Wilkie 93] summarizes, compares, and provides examples of Booch, Wirfs-Brock,

sunsoft's

1968 Windows 3.1 and SunSoft's Distributed Objects Everywhere (DOE) on Solaris.

super-class

185 super-class terminology, and is preferred in

superclasses

2 In the domain of object-oriented programming an object is usually taken to mean an ephemeral compilation of attributes (object elements) and behaviors (methods or subroutines) encapsulating an entity. In this way, while primitive or simple data types are still just single pieces of information, object-oriented objects are complex types that have multiple pieces of information and specific properties (or attributes). Instead of merely being assigned a value, (like int =10), objects have to be "constructed". In the real world, if a Ford Focus is an "object" - an instance of the car class, its physical properties and its function to drive would have been individually specified. Once the properties of the Ford Focus "object" had been specified into the form of the car class, it can be endlessly copied to create identical objects that look and function in just the same way. As an alternative example, animal is a superclass of primate and primate is a superclass of human. Individuals such as Joe Bloggs or John Doe would be particular examples or 'objects' of the human class, and consequently possess all the characteristics of the human class (and of the primate and animal superclasses as well).

supersets

986 (intensional) approach (where subtypes are supersets of (contain) supertypes).

supplied

1824 their own, HP has supplied several object-service interfaces for developers

supporters

1704 The OMG also has a (Corporate) Membership list and "known CORBA supporters"

supposedly

2299 between supposedly independent modules.

surveying

1468 Wirfs-Brock, R.J. and Johnson, R.E., "Surveying Current Research in Object-

sustained

834 leading to statistical (process) control and sustained improvement. Watts S.

svg

42 Question book-new.svg

swapping

2316 is inefficient (swapping two references will result in three

swiss

1861 The C++ interface in August. Customers include AMD, Consilium and Swiss

switchable

2286 below). [Ada has switchable GC, too -bob]

switches

2398 b) Switches indicating deletion. Many applications must clear the switch to

symbolic

999 viewed in an almost symbolic way) occurs when object types may be specified and

symposium

2498 Object-Oriented Programs", Proceedings of the 4th Symposium on

synchrony

1714 in C++. It supports object-groups, virtual synchrony, multithreading

synonymously

405 used synonymously, but can be used to show the "object is-a class"

system-based

1805 modification on HP, Sun and IBM UNIX(R) system-based workstations. They

system's

712 system's responsibilities in that light".

sz

1870 1st Floor, Lawrence House, 1A Morrell St, Leamington Spa, England CV32 5SZ

tables

1118 implemented with tables of function pointers and offsets), and is how

tail

419 base class and the tail indicating the derived class.

talks

2589 Publications. The article talks some about why testing is

tangible

108 the things are likely to fall into the following five categories: Tangible

tanler

1791 our entire company on it," said Richard Tanler, president and chief

tar

2707 etet1.10.1.tar.Z". They are looking for

target

2665 specifically designed to operate in both host and target

targeted

2066 system and invoking targeted services based on service

tasking

1390 as well as basic OS i ssues such as memory, file, tasking management.

tav

2499 Testing, Analysis, and Verification (TAV4), 1991, ACM, Inc.,

taylor

2587 Taylor, David. "A quality-first program for object technology", Object

teaching

1369 NachOS (written in C++, OS teaching

team-

836 version of the CMM for individuals [Humphrey 95]. Next should follow a team-

teams

4 Objects are used in software development to implement abstract data structures, by bringing together the data components with the procedures that manipulate them. Objects in object- oriented programming are key in the concept of inheritance; thereby improving program reliability[attribution needed], simplification of software maintenance[attribution needed], the management of libraries, and the division of work in programmer teams. Object-oriented programming languages are generally designed to exploit and enforce these potential advantages of the object model. Objects can also make it possible to handle very disparate objects by the same piece of code, as long as they all have the proper method. Simple, non-OOP programs may be one "long" list of statements (or commands). More complex programs will often group smaller sections of these statements into functions or subroutines each of which might perform a particular task. With designs of this sort, it is common for some of the program's data to be 'global', i.e. accessible from any part of the program. As programs grow in size, allowing any function to modify any piece of data means that bugs can have wide-reaching effects.

techical

2564 Overview. Techical Report TR92-0656, MPR Teltech Ltd., October

technique

2280 and technique.

technol

2510 Validation and Testing of Object Oriented Systems, BT Technol

techreports

1719 techreports

tel

1972 Paul Hickey, tel: +353-1-6686522

telematics

1450 Center of Telematics and Information Technology, University of Twente,

temporary

2304 particular problem with temporary values produced by C++ overloaded

temps

154 Simple statically-typed objects (static and auto vars and temps in C++ and

termed

9 An object-oriented program may thus be viewed as a collection of interacting objects, as opposed to the conventional model, in which a program is seen as a list of tasks (subroutines) to perform. In OOP, each object is capable of receiving messages, processing data, and sending messages to other objects. Each object can be viewed as an independent "machine" with a distinct role or responsibility. The actions (or "methods") on these objects. The terms "objects" and "oriented" in something like the modern sense of object- oriented programming seem to make their first appearance at MIT in the late 1950s and early 1960s. In the environment of the artificial intelligence group, as early as 1960, "object" could refer to identified items (LISP atoms) with properties (attributes); Alan Kay was later to cite a detailed understanding of LISP internals as a strong influence on his thinking in 1966.[3] Another early MIT example was Sketchpad created by Ivan Sutherland in 1960-61; in the glossary of the 1963 technical report based on his dissertation about Sketchpad, Sutherland defined notions of "object" and "instance" (with the class concept covered by "master" or "definition"), albeit specialized to graphical interaction. Also, an MIT ALGOL version, AED-0, linked data structures ("plexes", in that dialect) directly with procedures, prefiguring what were later termed "messages", "methods" and "member functions".

testcenter

2676 TestCenter from CenterLine will do coverage testing of C++ (and C)

testgraphs

2521 approach to testing which the authors call Testgraphs. An

tex

1491 The authors, regretfully, cannot supply ftp, postscript, TEX, or

text

1084 many kinds of objects such as text and graphical objects, multiple-polymorphism

textually

449 from more than one class must textually include all but one of those classes in

theilen

2591 Theilen, David. "No Bugs. Delivering error free code in C and C++.",

theoretical

75 Christopher J. Date stated that critical comparison of OOP to other technologies, relational in particular, is difficult because of lack of an agreed-upon and rigorous definition of OOP. Date and Darwen propose a theoretical foundation on OOP that uses OOP as a kind of customizable type system to support RDBMS.

thereof

25 Open recursion – a special variable (syntactically it may be a keyword), usually called this or self, that allows a method body to invoke another method body of the same object. This variable is late-bound; it allows a method defined in one class to invoke another method that is defined later, in some subclass thereof.

thesis

1386 This thesis covers the design of an extensible object-oriented

thinking

9 An object-oriented program may thus be viewed as a collection of interacting objects, as opposed to the conventional model, in which a program is seen as a list of tasks (subroutines) to perform. In OOP, each object is capable of receiving messages, processing data, and sending messages to other objects. Each object can be viewed as an independent "machine" with a distinct role or responsibility. The actions (or "methods") on these objects. The terms "objects" and "oriented" in something like the modern sense of object- oriented programming seem to make their first appearance at MIT in the late 1950s and early 1960s. In the environment of the artificial intelligence group, as early as 1960, "object" could refer to identified items (LISP atoms) with properties (attributes); Alan Kay was later to cite a detailed understanding of LISP internals as a strong influence on his thinking in 1966.[3] Another early MIT example was Sketchpad created by Ivan Sutherland in 1960-61; in the glossary of the 1963 technical report based on his dissertation about Sketchpad, Sutherland defined notions of "object" and "instance" (with the class concept covered by "master" or "definition"), albeit specialized to graphical interaction. Also, an MIT ALGOL version, AED-0, linked data structures ("plexes", in that dialect) directly with procedures, prefiguring what were later termed "messages", "methods" and "member functions".

third-party

2240 with any number of third-party GUI and CASE tools. Among the GUIs are

thomas

2494 Cheatham Thomas J., and Lee Mellinger, "Testing Object-Oriented

thousands

1924 proven communication framework that links thousands of nodes.

threads

2385 different threads) makes it impossible to statically determine the last user

thrust

1131 downcasting (historically known as type narrowing), the thrust of RTTI, can

tight

2298 modules must co-operate closely. This leads to a tight binding

timers

305 timers. In Smalltalk, the situation is more complex. To make this easy, refer

title

2577 This paper, or one with the same title and authors, is

titled

73 Luca Cardelli wrote a paper titled "Bad Engineering Properties of Object-Oriented Languages" Richard Stallman wrote in 1995, "Adding OOP to Emacs is not clearly an improvement; I used OOP when working on the Lisp Machine window systems, and I disagree with the usual view that it is a superior way to program."

tivoli

1697 > Tivoli

tockey

93 Smith and Tockey: "an object represents an individual, identifiable item,

tolerant

1851 Isis RDOM(tm) is a fault tolerant distributed ORB platform for reliable

tom

2545 Love, Tom. Object Lessons. SIGS Books, 588 Broadway #604, New York, NY

toolbox

2426 object-oriented programmer's toolbox.

toolset

1799 Smalltalk. This toolset works with VisualWorks from ParcPlace Systems to

toolsus

2616 "toolsus.ps.Z" for US letter formatting.

toopinht

2637 papers. Get toopinht.ps.Z" for A4 paper formatting or get

toopinhtus

2638 "toopinhtus.ps.Z" for US letter formatting.

toopus

2603 papers. Get "toop.ps.Z" for A4 paper and "toopus.ps.Z" for

top-down

897 and procedures (top-down) are frequently changed, providing object-oriented

topology

418 in [Rumbaugh 91]) allow any topology, with the head of an arrow indicating the

toronto

2519 Conference, October 1993, Toronto. Email addresses for authors

tqm

830 (CMM), a process-based TQM model for assessing the level of an organization's

traced

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.

tradeoff

1228 efficiency tradeoff), and sources can cause inlining and create source code

trained

2252 staff of fully trained professionals ensures "real world" responses

transfer

2177 DOME allows message transfer from one object to another object,

transitively

1167 (transitively) from any polymorphic object's class (inclusion polymorphism

translation

2201 - Logical name translation for true aliasing

transport

1759 the Open Software Foundation(tm) as its transport mechanism. DCE is

treadmill

2419 sometimes choose treadmill collectors [4] over hand-management because of its

treated

46 Languages called "pure" OO languages, because everything in them is treated consistently as an object, from primitives such as characters and punctuation, all the way up to whole classes, prototypes, blocks, modules, etc. They were designed specifically to facilitate, even enforce, OO methods. Examples: Scala, Smalltalk, Eiffel, JADE, Emerald.

treelw

2654 TreeLW1.1" from st.cs.uiuc.edu.

trees

2645 specific classes that test non-interactive objects such as trees,

trivial

150 Below is a simple example to show a most trivial case of OO implementation.

t's

2113 NCR, AT&T's computer business, brings computing and

tsp

837 based software process (TSP?). Other CMM's in the works at the SEI include a

tue

1709 Date: Tue, 4 May 1993 13:12:36 +0200 (MET DST)

turnaround

2685 *No recompilation needed, resulting in quick turnaround

tuxedo

1969 In addition Orbix-TP, integration with Tuxedo for transaction processing, has

twente

1450 Center of Telematics and Information Technology, University of Twente,

txt

1580 doclist.txt

type-

1120 both static and dynamic typing, sometimes with static typing providing type-

type-safety

1160 representations per type while still maintaining reasonable type-safety.

type-tests

1394 on C++. [[ The lack of type-tests in C++ was a problem in other designs.]]

typology

1461 Monarchi, David and Puhr, Gretchen I. A Research Typology for Object-Oriented

ubiquitous

900 Polymorphism is a ubiquitous concept in object-oriented programming and is

uel

2702 etet_support@uel.co.uk

uh

847 ricis.cl.uh.edu

ultimately

833 by specifying steps for organizations to progress to the next level, ultimately

uml

17 Just as procedural programming led to refinements of techniques such as structured programming, modern object-oriented software design methods include refinements[citation needed] such as the use of design patterns, design by contract, and modeling languages (such as UML).

unacceptable

2322 unacceptable in some applications. However the overhead of manual

unaddressed

2400 multiple containers, leaving many memory management issues unaddressed.

unavoidable

690 and run-time selection (or checking) as unavoidable in the general case [a

unchanged

432 explicitly calling them, allowing client class code to remain unchanged [Booch

uncooperative

2338 [3] "Garbage Collection in an Uncooperative Environment" by Boehm and

undecidability

689 general undecidability of dynamic types at compile-time renders dynamic typing

understands

1753 products, understands how to help customers adopt new technology for maximum

underway

1970 just entered beta testing. Work is underway on Orbix-FT, integration with

unfair

76 Alexander Stepanov suggested that OOP provides a mathematically-limited viewpoint and called it "almost as much of a hoax as Artificial Intelligence. I have yet to see an interesting piece of code that comes from these OO people. In a sense, I am unfair to AI: I learned a lot of stuff from the MIT AI Lab crowd, they have done some really fundamental work....".

uniface

2241 Powerbuilder,, Visual Basic,, and Uniface,. Among the CASE tools are

uniform

786 * It assumes a relatively uniform and orderly sequence of development steps

uniformly

930 "Parametric polymorphism is obtained when a function works uniformly on a range

unify

2149 all of the essential services necessary to unify distributed

union

988 extensional view and set union with an intensional view. Details are left as

uniprocessor

2329 [2] "Uniprocessor Garbage Collection Techniques," by Paul R. Wilson,

unique

564 languages and perhaps object id's for unique objects. Object id's support the

univ

2642 There is a smalltalk class library in the Univ. of Illinois archives

universities

79 Richard Mansfield, author and former editor of COMPUTE! magazine, states that "like countless other intellectual fads over the years ("relevance", communism, "modernism", and so on—history is littered with them), OOP will be with us until eventually reality asserts itself. But considering how OOP currently pervades both universities and workplaces, OOP may well prove to be a durable delusion. Entire generations of indoctrinated programmers continue to march out of the academy, committed to OOP and nothing but OOP for the rest of their lives."[38] He also is quoted as saying "OOP is to writing a program, what going through airport security is to flying".

unixware

2000 UnixWare Computer Innovations 4th Qtr

unnecessarily

657 real-world programming situations, unnecessarily. In the author's opinion,

unsatisfactory

293 upon unsatisfactory results, and finally the latter if the first two approaches

unsourced

43 This section does not cite any references or sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged and removed. (August 2009)

unsuitable

82 Carnegie-Mellon University Professor Robert Harper in March 2011 wrote: "This semester Dan Licata and I are co-teaching a new course on functional programming for first-year prospective CS majors... Object-oriented programming is eliminated entirely from the introductory curriculum, because it is both anti-modular and anti-parallel by its very nature, and hence unsuitable for a modern CS curriculum. A proposed new course on object- oriented design methodology will be offered at the sophomore level for those students who wish to study this topic."

untyped

146 have no type, but the objects (values) they point to always do. An untyped

uofi

1366 Choices (research OS, UofI, C++, supports SVR4, See Appendix E, Papers)

updates

1346 information, updates to Release 1.1 of The Object Database Standard:

updating

2126 updating a collection of incompatible hardware platforms, operating

upgraded

1936 for the first time, as well as an upgraded Interface Repository, a new

uq

2520 are dhoffman@csr.uvic.ca and pstropp@cs.uq.oz.au. Describes an

use-case

112 to identifying objects through use-cases (scenarios), leading to a use-case

user-

749 (user-)environment). The product, or resultant model,

user-configured

1884 DOME is an ORB toolkit for the production of user-configured

user-oriented

746 (from its requirements, domain and environment) from a user-oriented or domain

user-specific

1898 implemented to user-specific requirements.

uta

2644 (bruce@utafll.uta.edu). It is a general superclass for application

utafll

2644 (bruce@utafll.uta.edu). It is a general superclass for application

utexas

2335 anonymous ftp (cs.utexas.edu:pub

utwente

1489 Sjaak Brinkkemper (sjbr@cs.utwente.nl), which we will forward to the

uvic

2520 are dhoffman@csr.uvic.ca and pstropp@cs.uq.oz.au. Describes an

validate

2649 used to validate the Tree classes. For ParcPlace Smalltalk (ObjectWorks

value-oriented

1318 opposed to a purely value-oriented approach) and because of support for methods

variation

218 Chambers has proposed an interesting variation called "Predicate Classes"

variations

397 being used (especially in OOD), because inheritance has many variations and

varieties

908 animal or plant in several forms or color varieties.

vars

154 Simple statically-typed objects (static and auto vars and temps in C++ and

vax

1644 1, SunOS, ULTRIX, Digital VAX

verlag

2332 eds.), Springer Verlag Lecture Notes in Computer Science #637.

verses

612 See also section 1.19 below for a discussion on the functional (prefix) verses

vice

1501 Vice President & Technical Director

viewpoint

76 Alexander Stepanov suggested that OOP provides a mathematically-limited viewpoint and called it "almost as much of a hoax as Artificial Intelligence. I have yet to see an interesting piece of code that comes from these OO people. In a sense, I am unfair to AI: I learned a lot of stuff from the MIT AI Lab crowd, they have done some really fundamental work....".

views

289 [Booch 94, 4.2] proposes 3 views of classification as useful in OO analysis and

violates

668 violates subtype polymorphism, because only subclass polymorphism is based on

visibility

273 classes, visibility and member lookup resolution. This is a feature-based or

visible

238 may be accessed wherever visible. CLOS and Ada allow methods to be defined

visitor

61 Behavioral patterns : Chain-of-responsibility pattern, Command pattern, Interpreter pattern, Iterator pattern, Mediator pattern, Memento pattern, Observer pattern, State pattern, Strategy pattern, Template method pattern, Visitor pattern.

vlissides

57 Design Patterns: Elements of Reusable Object-Oriented Software is an influential book published in 1995 by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides, sometimes casually called the "Gang of Four". Along with exploring the capabilities and pitfalls of object-oriented programming, it describes 23 common programming problems and patterns for solving them. As of April 2007, the book was in its 36th printing.

vms

1645 VMS, Digital OpenVMS

vocabulary

707 that form the vocabulary of the problem domain, and in OOD, we invent the

vw

2653 st80_vw

warehousing

1796 stores, and warehousing and distribution operations."

warren

2542 to "john_lakos@warren.mentorg.com".

waterfall-

797 Waterfall-

watts

834 leading to statistical (process) control and sustained improvement. Watts S.

websters'

901 defined in many ways, so many definitions are presented from: Websters',

webster's

904 > Webster's New World Dictionary:

weiser

2339 Weiser. Software --- Practise and Experience vol 18(9), pp 807-820.

well-defined

94 unit, or entity, either real or abstract, with a well-defined role in the

well-known

72 A number of well-known researchers and programmers have analysed the utility of OOP. Here is an incomplete list:

westborough

1660 > HyperDesk (Westborough MA) HD-DOMS, rich_fraser@hyperdesk.com

whitney

1383 From: whitney@oberon.Meakins.McGill.CA ()

wide

1752 distributed computing. HP provides a wide variety of distributed-computing

wider

11 The Smalltalk language, which was developed at Xerox PARC (by Alan Kay and others) in the 1970s, introduced the term object-oriented programming to represent the pervasive use of objects and messages as the basis for computation. Smalltalk creators were influenced by the ideas introduced in Simula 67, but Smalltalk was designed to be a fully dynamic system in which classes could be created and modified dynamically rather than statically as in Simula 67.[9] Smalltalk and with it OOP were introduced to a wider audience by the August 1981 issue of Byte Magazine.

wide-reaching

4 Objects are used in software development to implement abstract data structures, by bringing together the data components with the procedures that manipulate them. Objects in object- oriented programming are key in the concept of inheritance; thereby improving program reliability[attribution needed], simplification of software maintenance[attribution needed], the management of libraries, and the division of work in programmer teams. Object-oriented programming languages are generally designed to exploit and enforce these potential advantages of the object model. Objects can also make it possible to handle very disparate objects by the same piece of code, as long as they all have the proper method. Simple, non-OOP programs may be one "long" list of statements (or commands). More complex programs will often group smaller sections of these statements into functions or subroutines each of which might perform a particular task. With designs of this sort, it is common for some of the program's data to be 'global', i.e. accessible from any part of the program. As programs grow in size, allowing any function to modify any piece of data means that bugs can have wide-reaching effects.

widespread

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.

wikstrom

1136 polymorphic type system [Wikstrom 87]. Russell (see Appendix E) is a more

wildavsky

130 Wildavsky, send requests to adamw@panix.com.

wilkerson

71 Responsibility-driven design defines classes in terms of a contract, that is, a class should be defined around a responsibility and the information that it shares. This is contrasted by Wirfs-Brock and Wilkerson with data-driven design, where classes are defined around the data-structures that must be held. The authors hold that responsibility-driven design is preferable.

willis

856 Humphrey, W., Snyder, T. and Willis, R. "Software Process Improvement at

willowleaf

2695 Quality Assured Software Engineering (938 Willowleaf Dr., Suite 2806,

wilson

2329 [2] "Uniprocessor Garbage Collection Techniques," by Paul R. Wilson,

wind

2484 direct from Berard Software Engineering, Ltd., 902 Wind River

winder

2570 Purchase, Jan A. and Russel L. Winder, "Debugging tools for

wire

1741 PALO ALTO, Calif.--(BUSINESS WIRE) via First! -- Hewlett-Packard Company

wirth's

66 However, Niklaus Wirth (who popularized the adage now known as Wirth's law: "Software is getting slower more rapidly than hardware becomes faster") said of OOP in his paper, "Good Ideas through the Looking Glass", "This paradigm closely reflects the structure of systems 'in the real world', and it is therefore well suited to model complex systems with complex behaviours" (contrast KISS principle).

workbench

2083 environments supported include CFRONT and C++ Workbench from

workflow

2191 - True messaging for workflow management and EDI

workings

234 about its inner workings. [Oxford, 1986]"

workplaces

79 Richard Mansfield, author and former editor of COMPUTE! magazine, states that "like countless other intellectual fads over the years ("relevance", communism, "modernism", and so on—history is littered with them), OOP will be with us until eventually reality asserts itself. But considering how OOP currently pervades both universities and workplaces, OOP may well prove to be a durable delusion. Entire generations of indoctrinated programmers continue to march out of the academy, committed to OOP and nothing but OOP for the rest of their lives."[38] He also is quoted as saying "OOP is to writing a program, what going through airport security is to flying".

workshop

2330 in Memory Management (proceedings of 1992 Int'l Workshop on Memory

workstation

415 Data Proc Scientific PC Workstation

world'

66 However, Niklaus Wirth (who popularized the adage now known as Wirth's law: "Software is getting slower more rapidly than hardware becomes faster") said of OOP in his paper, "Good Ideas through the Looking Glass", "This paradigm closely reflects the structure of systems 'in the real world', and it is therefore well suited to model complex systems with complex behaviours" (contrast KISS principle).

worlds

63 Both object-oriented programming and relational database management systems (RDBMSs) are extremely common in software today. Since relational databases don't store objects directly (though some RDBMSs have object-oriented features to approximate this), there is a general need to bridge the two worlds. The problem of bridging object-oriented programming accesses and data patterns with relational databases is known as Object-Relational impedance mismatch. There are a number of approaches to cope with this problem, but no general solution without downsides.[20] One of the most common approaches is object-relational mapping, as found in libraries like Java Data Objects and Ruby on Rails' ActiveRecord.

worldwide

1754 business benefit, and offers worldwide support and training programs,

worldy

780 life-cycle models and their use. Humphrey also details Worldy and Atomic

worse

2363 man's garbage collector", are usually misguided. Reference counting has worse

worthy

65 OOP can be used to associate real-world objects and processes with digital counterparts. However, not everyone agrees that OOP facilitates direct real-world mapping (see Negative Criticism section) or that real-world mapping is even a worthy goal; Bertrand Meyer argues in Object-Oriented Software Construction that a program is not a model of the world but a model of some part of the world; "Reality is a cousin twice removed". At the same time, some principal limitations of OOP had been noted. For example, the Circle-ellipse problem is difficult to handle using OOP's concept of inheritance.

writes

80 Steve Yegge, making a roundabout comparison with Functional programming, writes, "Object Oriented Programming puts the Nouns first and foremost. Why would you go to such lengths to put one part of speech on a pedestal? Why should one kind of concept take precedence over another? It's not as if OOP has suddenly made verbs less important in the way we actually think. It's a strangely skewed perspective."

xhtml

53 The Document Object Model of HTML, XHTML, and XML documents on the Internet have bindings to the popular JavaScript

xml

53 The Document Object Model of HTML, XHTML, and XML documents on the Internet have bindings to the popular JavaScript

xti

1880 IP, NetBIOS, XTI

xx

1222 See [Booch 87b] for several examples in Ada and [Stroustrup xx] and [Murray

yacc

1347 ODMG-93 along with ODL lex and yacc files. In the future, we will be

yourdon-constantine

1444 Yourdon-Constantine SD, Martin information engineering design, Wasserman OOSD,

yves

2331 Management, Sept. 1992, St. Malo, France, Yves Bekkers and Jacques Cohen,

zool

907 crystallographically distinct forms. 3. Zool., Bot. existence of an

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]