Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
IBM System Object Model
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{short description|Programming framework}} {{distinguish|System Object Model (file format)}} {{Refimprove|date=March 2013}} {{Infobox software |name = IBM SOMobjects |logo = IBM System Object Model Logo.png |logo alt = IBM SOM Logo |screenshot = <!-- Image name is enough --> |caption = |screenshot alt = |developer = [[IBM]] |latest release version = 3.0 |latest release date = December 1996 |operating system = [[OS/2]], [[Microsoft Windows|Windows]], [[AIX]], [[Classic Mac OS]], [[Copland (operating system)|Copland]], [[OS/390]], [[NonStop OS]], [[OS/400]] |genre = [[Object-oriented programming|object-oriented]] [[shared library]] system }} The '''System Object Model''' ('''SOM''') is an [[Object-oriented programming|object-oriented]] [[shared library]] technology developed by [[IBM]] that supports defining an [[interface (computing)|interface]] to an [[object (computer science)|object]] so that its interface is separate from its [[implementation]]. '''DSOM''', a [[Distributed computing|distributed]] variant based on [[CORBA]], allowed objects on different computers to communicate. A SOM library can be updated without requiring client code to be rebuilt. If a library is changed to add new classes or methods, or to change the internal implementation of classes or methods, a consuming program can still use it without being rebuilt. In this way, SOM addresses the [[fragile binary interface problem]] that affects other library technology such as [[C++]]. SOM allows [[class (computer science)|classes]] to be defined in one [[programming language]] and used in another. A client can create and use objects from the exposed classes and derive subclasses from the exposed classes even if the client language does not support class typing. SOM provides an [[application programming interface]] (API) that provides access to library [[metadata]]. Each object exposes methods that provide the class name and whether the object implements a particular method, for example.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)