Object (computer science)

In computer science, an object is a programming element that has state, has associated operations and is accessed via an identifier.

Object is a categorization into which many programming concepts fall. For example, an object can be a programming language variable, data structure, function, or method.

In object-oriented programming (OOP), an object is an abstract data type with the addition of polymorphism and inheritance. An object-oriented system integrates code and data as objects that each have state (data) and behavior (code). Any language that supports a construct with state and behavior is classified as object-based. In a class-based language, an object is an also known as an instance of a class.

In the relational model of database management, aspects such as table and column may act as objects.[1]

Distributed objects

The object-oriented approach is not just a programming model. It can be used equally well as an interface definition language for distributed systems. The objects in a distributed computing model tend to be larger grained, longer lasting, and more service-oriented than programming objects.

A standard method to package distributed objects is via an Interface Definition Language (IDL). An IDL shields the client of all of the details of the distributed server object. Details such as which computer the object resides on, what programming language it uses, what operating system, and other platform-specific issues. The IDL is also usually part of a distributed environment that provides services such as transactions and persistence to all objects in a uniform manner. Two of the most popular standards for distributed objects are the Object Management Group's CORBA standard and Microsoft's DCOM.[2]

In addition to distributed objects, a number of other extensions to the basic concept of an object have been proposed to enable distributed computing:

  • Protocol objects are components of a protocol stack that enclose network communication within an object-oriented interface.
  • Replicated objects are groups of distributed objects (called replicas) that run a distributed multi-party protocol to achieve high consistency between their internal states, and that respond to requests in a coordinated way. Examples include fault-tolerant CORBA objects.
  • Live distributed objects (or simply live objects)[3] generalize the replicated object concept to groups of replicas that might internally use any distributed protocol, perhaps resulting in only a weak consistency between their local states.

Some of these extensions, such as distributed objects and protocol objects, are domain-specific terms for special types of "ordinary" objects used in a certain context (such as remote method invocation or protocol composition). Others, such as replicated objects and live distributed objects, are more non-standard, in that they abandon the usual case that an object resides in a single location at a time, and apply the concept to groups of entities (replicas) that might span across multiple locations, might have only weakly consistent state, and whose membership might dynamically change.

The Semantic Web

The Semantic Web is essentially a distributed-objects framework. Two key technologies in the Semantic Web are the Web Ontology Language (WOL) and the Resource Description Framework (RDF). RDF provides the capability to define basic objects—names, properties, attributes, relations—that are accessible via the Internet. OWL adds a richer object model, based on set theory, that provides additional modeling capabilities such as multiple inheritance.

OWL objects are not like standard large-grained distributed objects accessed via an Interface Definition Language. Such an approach would not be appropriate for the Internet because the Internet is constantly evolving and standardization on one set of interfaces is difficult to achieve. OWL objects tend to be similar to the kinds of objects used to define application domain models in programming languages such as Java and C++.

However, there are important distinctions between OWL objects and traditional object-oriented programming objects. Traditional objects get compiled into static hierarchies usually with single inheritance, but OWL objects are dynamic. An OWL object can change its structure at run time and can become an instance of new or different classes.

Another critical difference is the way the model treats information that is currently not in the system. Programming objects and most database systems use the "closed-world assumption". If a fact is not known to the system that fact is assumed to be false. Semantic Web objects use the open-world assumption, a statement is only considered false if there is actual relevant information that it is false, otherwise it is assumed to be unknown, neither true nor false.

OWL objects are actually most like objects in artificial intelligence frame languages such as KL-ONE and Loom.

The following table contrasts traditional objects from Object-Oriented programming languages such as Java or C++ with Semantic Web Objects:[4][5]

OOP Objects Semantic Web Objects
Classes are regarded as types for instances. Classes are regarded as sets of individuals.
Instances can not change their type at runtime. Class membership may change at runtime.
The list of classes is fully known at compile-time and cannot change after that. Classes can be created and changed at runtime.
Compilers are used at build-time. Compile-time errors indicate problems. Reasoners can be used for classification and consistency checking at runtime or build-time.
Classes encode much of their meaning and behavior through imperative functions and methods. Classes make their meaning explicit in terms of OWL statements. No imperative code can be attached.
Instances are anonymous insofar that they cannot easily be addressed from outside of an executing program. All named RDF and OWL resources have a unique URI under which they can be referenced.
Closed world: If there is not enough information to prove a statement true, then it is assumed to be false. Open world: If there is not enough information to prove a statement true, then it may be true or false.[6]

See also

  • Object lifetime – Time period between the creation and destruction of an object-oriented programming instance
  • Object copying – Techniques for copying an object in object-oriented programming
  • Business object – Entity within a multi-tiered software application
  • Actor model – Model of concurrent computation

References

  1. ^ Oppel, Andy (2005). SQL Demystified. McGraw Hill. p. 7. ISBN 0-07-226224-9.
  2. ^ Orfali, Robert (1996). The Essential Client/Server Survival Guide. New York: Wiley Computer Publishing. pp. 399–403. ISBN 0-471-15325-7.
  3. ^ Ostrowski, K., Birman, K., Dolev, D., and Ahnn, J. (2008). "Programming with Live Distributed Objects", Proceedings of the 22nd European Conference on Object-Oriented Programming, Paphos, Cyprus, July 07–11, 2008, J. Vitek, Ed., Lecture Notes in Computer Science, vol. 5142, Springer-Verlag, Berlin, Heidelberg, 463-489, http://portal.acm.org/citation.cfm?id=1428508.1428536.
  4. ^ Berners-Lee, Tim; James Hendler; Ora Lassila (May 17, 2001). "The Semantic Web A new form of Web content that is meaningful to computers will unleash a revolution of new possibilities". Scientific American. 284: 34–43. doi:10.1038/scientificamerican0501-34. Archived from the original on April 24, 2013.
  5. ^ Knublauch, Holger; Oberle, Daniel; Tetlow, Phil; Wallace, Evan (2006-03-09). "A Semantic Web Primer for Object-Oriented Software Developers". W3C. Retrieved 2008-07-30.
  6. ^ Table excerpted from tables in: http://www.w3.org/2001/sw/BestPractices/SE/ODSD/

Read other articles:

Castello del MateseKomuneComune di Castello del MateseLokasi Castello del Matese di Provinsi CasertaNegara ItaliaWilayah CampaniaProvinsiCaserta (CE)Luas[1] • Total21,77 km2 (8,41 sq mi)Ketinggian[2]476 m (1,562 ft)Populasi (2016)[3] • Total1.509 • Kepadatan69/km2 (180/sq mi)Zona waktuUTC+1 (CET) • Musim panas (DST)UTC+2 (CEST)Kode pos81016Kode area telepon0823Situs webhttp://www.parco…

Bagian dari seriGereja Katolik menurut negara Afrika Afrika Selatan Afrika Tengah Aljazair Angola Benin Botswana Burkina Faso Burundi Chad Eritrea Eswatini Etiopia Gabon Gambia Ghana Guinea Guinea-Bissau Guinea Khatulistiwa Jibuti Kamerun Kenya Komoro Lesotho Liberia Libya Madagaskar Malawi Mali Maroko Mauritania Mauritius Mesir Mozambik Namibia Niger Nigeria Pantai Gading Republik Demokratik Kongo Republik Kongo Rwanda Sao Tome dan Principe Senegal Seychelles Sierra Leone Somalia Somaliland Sud…

LaskarinPengawal Laskarin Guard dari Padikara Muhandiram Arthur Silva Wijeyasinghe SiriwardenaAktif1500-an hingga 1930-anNegara Ceylon Portugal Ceylon Belanda Ceylon BritaniaAliansi Imperium Portugal Imperium Belanda Imperium BritaniaCabangTentaraTipe unitInfanteriPertempuranPerang Sinhala–PortugalPerang Belanda–Portugal Peragaan kembali Pengawal Laskarin di Mount Lavinia Hotel in 1997 Laskarin (bahasa Sinhala: ලස්කිරිඤ්ඤ, translit. …

نيوي إبيفاتي تقسيم إداري البلد اليونان  [1] إحداثيات 40°30′04″N 22°54′32″E / 40.501°N 22.909°E / 40.501; 22.909  السكان التعداد السكاني 5984 (إحصاء السكان) (2011)  معلومات أخرى التوقيت ت ع م+02:00 (توقيت قياسي)،  وت ع م+03:00 (توقيت صيفي)  الرمز البريدي 570 19  الرمز الجغرافي 73…

ألمانيا الاتحاد المشرف اتحاد ألمانيا لكرة القدم البلد المضيف  بولندا و  أوكرانيا المدرب أورو 2008 أورو 2016 تعديل مصدري - تعديل   هذا المقال عن مشاركة منتخب ألمانيا لكرة القدم في بطولة أمم أوروبا لكرة القدم 2012 التي نظمت في بولندا وأوكرانيا ما بين 8 يونيو و 1 يوليو 2012. التشكي…

Lala KarmelaLahirKarmela Mudayatri Herradura Kartodirdjo2 April 1985 (umur 38)Jakarta, IndonesiaNama lainLala KarmelaPekerjaanAktrispenyanyiTahun aktif2003—sekarangSuami/istriChristopher Villa Hartland ​ ​(m. 2021)​Karier musikGenrePopInstrumen Vokal Gitar Label Warner Music Philippines Sony Music Entertainment Indonesia Artis terkaitInersiaBarry LikumahuwaDudy OrisIrfan Fahri LazuardyMarcello TahitoeSandy Canester Karmela Mudayatri Herradura K…

Wake 和気町Kota kecil BenderaLambangLokasi Wake di Prefektur OkayamaNegara JepangWilayahChūgokuPrefektur OkayamaDistrikWakeLuas • Total144 km2 (56 sq mi)Populasi (Oktober 1, 2015) • Total14.412 • Kepadatan100,1/km2 (2,590/sq mi)Zona waktuUTC+9 (JST)Kode pos709-0495Simbol • PohonPrunus serrulata• BungaWisteria floribundaNomor telepon0869-93-1121Alamat555 Shakuso, Wake-chō, Wake-gun, Okayama-kenSitus webSitus…

Daftar 100 bangunan dan struktur tertinggi di wilayah Paris, termasuk wilayah urban dalam Paris (Paris dan komune). La Défense, dilihat dari Arc de Triomphe. Wilayah urban Paris memiliki pencakar langit lebih banyak dibanding wilayah metropolitan lainnya di Uni Eropa:[1] Pada tahun 2007, terdapat 14 pencakar langit yang mencapai ketinggian 150 meter (492 kaki), dengan satu bangunan sedang dibangun (Tour AXA), dibandingkan dengan 10 pencakar langit di London dan Frankfurt dan empat di Ma…

Spanish explorer of the New World Cabeza de Vaca redirects here. For other uses, see Cabeza de Vaca (disambiguation). Álvar Núñez Cabeza de VacaBust of Cabeza de VacaBornÁlvar Núñez Cabeza de Vacac. 1488/1490/1492Jerez de la FronteraDiedAfter 19 May 1559 (aged over 66–71)Jerez de la Frontera or Valladolid, SpainResting placeSpainOccupation(s)Treasurer, explorer, author of La relación y comentarios, and ex-governor of Río de Plata in ArgentinaSpouseMaría MarmolejoParent(s)Francisco de …

Dependent territory of New Zealand in the southern Pacific Ocean For other uses, see Tokelau (disambiguation). Dependent territory of New ZealandTokelauDependent territory of New Zealand FlagBadgeMotto: Tokelau mo te Atua (Tokelauan)(Tokelau for the Almighty)Territorial anthem: Te Atua o Tokelau[1] Map of all Tokelau Islands. Swains Island is shown to the south.Sovereign state New ZealandProtectorate createdJune 1889British colony29 February 1916Assigned to New Zealand11 F…

В Википедии есть статьи о других людях с именем Стефан. Стефан Первовенчанный Король Сербии 1217 — 1228 Преемник Стефан Радослав Рождение 1166неизвестно Смерть 24 сентября 1228неизвестно Место погребения Монастырь Студеница Род Неманичи Отец Стефан Неманя[1] Мать Анастаси…

بيجاي 毕节市    خريطة الموقع تقسيم إداري البلد  الصين[1] التقسيم الأعلى قويتشو  خصائص جغرافية إحداثيات 27°18′07″N 105°17′11″E / 27.30193°N 105.28627°E / 27.30193; 105.28627   [2] المساحة 26853 كم² الارتفاع 1723 السكان التعداد السكاني 6536370 نسمة (إحصاء 2010) الكثافة السكانية 256.9 …

رافائيل امايا معلومات شخصية اسم الولادة (بالإسبانية: José Rafael Amaya Parra Núñez)‏  الميلاد 28 فبراير 1977 (العمر 47 سنة)ارموسييو سونورا  مواطنة المكسيك  العشير أنجليكا سيلايابليندا  [لغات أخرى]‏  الحياة العملية المهنة ممثل تلفزيوني،  وممثل أفلام  اللغات الإسبانية&…

Town in West Coast, New Zealand Place in West Coast, New ZealandKumaraSign beside SH 73 on the outskirts of KumaraCoordinates: 42°37′52″S 171°11′13″E / 42.63111°S 171.18694°E / -42.63111; 171.18694CountryNew ZealandRegionWest CoastDistrictWestland DistrictWardNorthernElectoratesWest Coast-TasmanTe Tai TongaGovernment • Territorial authorityWestland District Council • Regional councilWest Coast Regional Council • Mayor o…

Kurds in FinlandTotal population16,603 (0.3%)Regions with significant populationsUusimaa8,573 (0.5%)[1]Southwest Finland2,861 (0.6%)[1]Pirkanmaa871 (0.2%)[1]Päijät-Häme809 (0.4%)[1]Central Finland487 (0.2%)[1]LanguagesFinnish and KurdishReligionSunni Islam Christianity Atheism YazidismRelated ethnic groupsIranian peoples   Part of a series on: Kurdish history and Kurdish culture People List of Kurds Population Homeland Kurdistan Turkey (Northern Ku…

Medicine used to reduce diarrhea LoperamideClinical dataPronunciation/loʊˈpɛrəmaɪd/ Trade namesImodium, others[1]Other namesR-18553, Loperamide hydrochloride (USAN US)AHFS/Drugs.comMonographMedlinePlusa682280License data US DailyMed: Loperamide Pregnancycategory AU: B3 Routes ofadministrationBy mouthATC codeA07DA03 (WHO) A07DA05 (WHO) (oxide)Legal statusLegal status AU: S2 (Pharmacy medicine) BR: Class C1 (Other controlled substances)[…

Cet article est une ébauche concernant les relations internationales. Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants. Pour un article plus général, voir Sommet du G8. Sommet du G8 de 1999 Type conférence diplomatique Édition 25e Pays Allemagne Localisation Cologne Date 18 juin 1999 au 20 juin 1999 Participant(s) Allemagne, États-Unis, France, Italie, Japon, Royaume-Uni, Russie et Canada 24e sommet du G8 (…

Voce principale: Supercoppa di San Marino. Trofeo Federale 1999Trofeo Federale 1999 Competizione Trofeo Federale Sport Calcio Edizione 13ª Organizzatore FSGC Luogo  San Marino Partecipanti 4 Formula torneo eliminazione diretta Risultati Vincitore Cosmos(3º titolo) Secondo Faetano Statistiche Incontri disputati 3 Gol segnati 8 (2,67 per incontro) Cronologia della competizione 1998 2000 Manuale Il Trofeo Federale 1999 è stato la 14ª edizione di tale competizione, e si è concluso con…

William Johnson Hakim Mahkamah Agung Amerika SerikatMasa jabatan7 Mai 1804 – 4 Agustus 1834 Informasi pribadiKebangsaanAmerika SerikatProfesiHakimSunting kotak info • L • B William Johnson adalah hakim Mahkamah Agung Amerika Serikat. Ia mulai menjabat sebagai hakim pada mahkamah tersebut pada tanggal 7 Mei 1804. Masa baktinya sebagai hakim berakhir pada tanggal 4 Agustus 1834.[1] Referensi ^ Justices 1789 to Present. Washington, D.C.: Mahkamah Agung Amerika Serik…

Cet article est une ébauche concernant l’art et une chronologie ou une date. Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants. Chronologies Données clés 1599 1600 1601  1602  1603 1604 1605Décennies :1570 1580 1590  1600  1610 1620 1630Siècles :XVe XVIe  XVIIe  XVIIIe XIXeMillénaires :-Ier Ier  IIe  IIIe Chronologies thématiques Art Architecture, Arts pla…

Kembali kehalaman sebelumnya