NeXTSTEP is a discontinued
object-oriented
Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of ...
,
multitasking operating system
An operating system (OS) is system software that manages computer hardware, software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ef ...
based on the
Mach kernel and the
UNIX
Unix (; trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, ...
-derived
BSD. It was developed by
NeXT Computer in the late 1980s and early 1990s and was initially used for its range of proprietary
workstation
A workstation is a special computer designed for technical or scientific applications. Intended primarily to be used by a single user, they are commonly connected to a local area network and run multi-user operating systems. The term ''workst ...
computers such as the
NeXTcube. It was later ported to several other
computer architectures.
Although relatively unsuccessful at the time, it attracted interest from computer scientists and researchers. It hosted the original development of the
Electronic AppWrapper
The Electronic AppWrapper (EAW) was an early commercial electronic software distribution catalog.
Originally, the AppWrapper was a traditional printed catalog, which later developed into the Electronic AppWrapper, offering electronic distributio ...
,
the first commercial electronic software distribution catalog to collectively manage encryption and provide digital rights for
application software
Application may refer to:
Mathematics and computing
* Application software, computer software designed to help the user to perform specific tasks
** Application layer, an abstraction layer that specifies protocols and interface methods used in a ...
and
digital media, a forerunner of the modern "
app store" concept. It is the platform on which
Tim Berners-Lee created the first
web browser
A web browser is application software for accessing websites. When a user requests a web page from a particular website, the browser retrieves its files from a web server and then displays the page on the user's screen. Browsers are used o ...
, and on which
id Software developed the video games ''
Doom
Doom is another name for damnation.
Doom may also refer to:
People
* Doom (professional wrestling), the tag team of Ron Simmons and Butch Reed
* Daniel Doom (born 1934), Belgian cyclist
* Debbie Doom (born 1963), American softball pitcher
* ...
'' and ''
Quake''.
In 1996, NeXT was acquired by
Apple Computer to succeed the
classic Mac OS, by merging NeXTSTEP and
OpenStep
OpenStep is a defunct object-oriented application programming interface (API) specification for a legacy object-oriented operating system, with the basic goal of offering a NeXTSTEP-like environment on non-NeXTSTEP operating systems. OpenStep wa ...
with Apple's user environment to become Mac OS X, renamed
macOS
macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and la ...
. This powers all of Apple's platforms, including
iOS.
Overview
NeXTSTEP (also stylized as NeXTstep, NeXTStep, and NEXTSTEP
) is a combination of several parts:
* a
Unix
Unix (; trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, ...
operating system based on the
Mach kernel, plus
BSD
*
Display PostScript and a proprietary windowing engine
* the
Objective-C language and runtime
* an
object-oriented
Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of ...
(OO) application layer, including several "kits"
* development tools for the OO layers.
NeXTSTEP is a preeminent implementation of the last three items. The toolkits are the canonical development system for all of the software on the system.
It introduced the idea of the
Dock (carried through
OpenStep
OpenStep is a defunct object-oriented application programming interface (API) specification for a legacy object-oriented operating system, with the basic goal of offering a NeXTSTEP-like environment on non-NeXTSTEP operating systems. OpenStep wa ...
and into
macOS
macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and la ...
) and the
Shelf. NeXTSTEP originated or innovated a large number of other
GUI
The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
concepts which became common in other operating systems: 3D chiseled widgets, large full-color
icon
An icon () is a religious work of art, most commonly a painting, in the cultures of the Eastern Orthodox, Oriental Orthodox, and Catholic churches. They are not simply artworks; "an icon is a sacred image used in religious devotion". The mos ...
s, system-wide drag and drop of a wide range of objects beyond file icons, system-wide piped
services, real-time scrolling and window dragging, properties dialog boxes called "inspectors", and window modification notices (such as the saved status of a file). The system is among the first general-purpose user interfaces to handle publishing color standards, transparency, sophisticated sound and music processing (through a
Motorola 56000 DSP), advanced
graphics primitives
Computer graphics deals with generating images with the aid of computers. Today, computer graphics is a core technology in digital photography, film, video games, cell phone and computer displays, and many specialized applications. A great deal ...
, internationalization, and modern
typography
Typography is the art and technique of arranging type to make written language legible, readable and appealing when displayed. The arrangement of type involves selecting typefaces, point sizes, line lengths, line-spacing ( leading), an ...
, in a consistent manner across all applications.
Additional kits were added to the product line. These include Portable Distributed Objects (PDO), which allow easy
remote invocation, and
Enterprise Objects Framework, an
object-relational database
In computing, a database is an organized collection of data stored and accessed electronically. Small databases can be stored on a file system, while large databases are hosted on computer clusters or cloud storage. The design of databases ...
system. The kits made the system particularly interesting to custom application programmers, and NeXTSTEP had a long history in the financial programming community.
History
NeXTSTEP was built upon Mach and BSD, initially
4.3BSD-Tahoe The History of the Berkeley Software Distribution begins in the 1970s.
1BSD (PDP-11)
The earliest distributions of Unix from Bell Labs in the 1970s included the source code to the operating system, allowing researchers at universities to modify an ...
. A preview release of NeXTSTEP (version 0.8) was shown with the launch of the
NeXT Computer on October 12, 1988. The first full release, NeXTSTEP 1.0, shipped on September 18, 1989.
It was updated to
4.3BSD-Reno The History of the Berkeley Software Distribution begins in the 1970s.
1BSD (PDP-11)
The earliest distributions of Unix from Bell Labs in the 1970s included the source code to the operating system, allowing researchers at universities to modify an ...
in NeXTSTEP 3.0. The last version, 3.3, was released in early 1995, for the
Motorola
Motorola, Inc. () was an American multinational telecommunications company based in Schaumburg, Illinois, United States. After having lost $4.3 billion from 2007 to 2009, the company split into two independent public companies, Motorola ...
68000 family
The Motorola 68000 series (also known as 680x0, m68000, m68k, or 68k) is a family of 32-bit complex instruction set computer (CISC) microprocessors. During the 1980s and early 1990s, they were popular in personal computers and workstations an ...
based NeXT computers,
Intel
Intel Corporation is an American multinational corporation and technology company headquartered in Santa Clara, California. It is the world's largest semiconductor chip manufacturer by revenue, and is one of the developers of the x86 ser ...
x86,
Sun SPARC
SPARC (Scalable Processor Architecture) is a reduced instruction set computer (RISC) instruction set architecture originally developed by Sun Microsystems. Its design was strongly influenced by the experimental Berkeley RISC system develope ...
, and
HP PA-RISC-based systems.
NeXT separated the underlying operating system from the application frameworks, producing
OpenStep
OpenStep is a defunct object-oriented application programming interface (API) specification for a legacy object-oriented operating system, with the basic goal of offering a NeXTSTEP-like environment on non-NeXTSTEP operating systems. OpenStep wa ...
. OpenStep and its applications can run on multiple underlying operating systems, including OPENSTEP,
Windows NT
Windows NT is a proprietary graphical operating system produced by Microsoft, the first version of which was released on July 27, 1993. It is a processor-independent, multiprocessing and multi-user operating system.
The first version of Win ...
, and
Solaris. In 1997, it was updated to
4.4BSD The History of the Berkeley Software Distribution begins in the 1970s.
1BSD (PDP-11)
The earliest distributions of Unix from Bell Labs in the 1970s included the source code to the operating system, allowing researchers at universities to modify a ...
while assimilated into Apple's development of
Rhapsody for x86 and
Power Macintosh. NeXTSTEP's direct descendants are Apple's
macOS
macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and la ...
,
iOS,
iPadOS,
watchOS, and
tvOS.
Legacy
The first
web browser
A web browser is application software for accessing websites. When a user requests a web page from a particular website, the browser retrieves its files from a web server and then displays the page on the user's screen. Browsers are used o ...
,
WorldWideWeb, and the first
app store were all invented on the NeXTSTEP platform.
Some features and
keyboard shortcuts now common to web browsers originated in NeXTSTEP conventions. The basic layout options of
HTML
The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaS ...
1.0 and 2.0 are attributable to those features of NeXT's Text class.
Lighthouse Design Ltd. developed Diagram!, a drawing tool, originally called BLT (for Box-and-Line Tool) in which objects (boxes) are connected together using "smart links" (lines) to construct diagrams such a
flow charts. This basic design can be enhanced by the simple addition of new links and new documents, located anywhere in the local area network, that foreshadowed Tim Berners-Lee's initial prototype that was written on NeXTStep in October–December 1990.
In the 1990s, the pioneering PC games ''
Doom
Doom is another name for damnation.
Doom may also refer to:
People
* Doom (professional wrestling), the tag team of Ron Simmons and Butch Reed
* Daniel Doom (born 1934), Belgian cyclist
* Debbie Doom (born 1963), American softball pitcher
* ...
'', ''
Doom II'', ''
Quake'', and their respective level editors were
developed by
id Software on NeXT machines. Other games based on the
''Doom'' engine such as ''
Heretic'' and its sequel ''
Hexen'' by
Raven Software, and ''
Strife'' by
Rogue Entertainment
Rogue Entertainment was an American computer game developer based in Dallas, Texas, which was active in the late 1990s. It was founded by Rich Fleider, Steve Maines, and Jim Molinets in 1994. Rogue Entertainment's office was in the same buildin ...
were developed on NeXT hardware using id's tools.
Altsys made the NeXTSTEP application Virtuoso, version 2 of which was ported to Mac OS and Windows to become
Macromedia FreeHand
Adobe FreeHand (formerly Macromedia FreeHand and Aldus FreeHand) was a computer application for creating two-dimensional vector graphics oriented primarily to professional illustration, desktop publishing and content creation for the Web. FreeH ...
version 4. The modern "Notebook" interface for
Mathematica, and the advanced spreadsheet
Lotus Improv, were developed using NeXTSTEP. The software that controlled
MCI's Friends and Family calling plan program was developed using NeXTSTEP.
About the time of the release of NeXTSTEP 3.2, NeXT partnered with
Sun Microsystems to develop
OpenStep
OpenStep is a defunct object-oriented application programming interface (API) specification for a legacy object-oriented operating system, with the basic goal of offering a NeXTSTEP-like environment on non-NeXTSTEP operating systems. OpenStep wa ...
. It is the product of an effort to separate the underlying operating system from the higher-level object libraries to create a cross-platform object-oriented API standard derived from NeXTSTEP.
OpenStep
OpenStep is a defunct object-oriented application programming interface (API) specification for a legacy object-oriented operating system, with the basic goal of offering a NeXTSTEP-like environment on non-NeXTSTEP operating systems. OpenStep wa ...
is hosted on multiple underlying operating systems, including NeXT's own OPENSTEP. It was released for Sun's
Solaris,
Windows NT
Windows NT is a proprietary graphical operating system produced by Microsoft, the first version of which was released on July 27, 1993. It is a processor-independent, multiprocessing and multi-user operating system.
The first version of Win ...
, and NeXT's version of the
Mach kernel. NeXT's implementation is called "OPENSTEP for Mach" and its first release (4.0) superseded NeXTSTEP 3.3 on NeXT, Sun, and Intel
IA-32
IA-32 (short for "Intel Architecture, 32-bit", commonly called i386) is the 32-bit version of the x86 instruction set architecture, designed by Intel and first implemented in the 80386 microprocessor in 1985. IA-32 is the first incarnatio ...
systems.
Following an announcement on December 20, 1996,
Apple Computer acquired NeXT on February 4, 1997, for $429 million. Based upon the "
OPENSTEP
OpenStep is a defunct object-oriented application programming interface (API) specification for a legacy object-oriented operating system, with the basic goal of offering a NeXTSTEP-like environment on non-NeXTSTEP operating systems. OpenStep wa ...
for Mach" operating system, and developing the OPENSTEP API to become
Cocoa
Cocoa may refer to:
Chocolate
* Chocolate
* ''Theobroma cacao'', the cocoa tree
* Cocoa bean, seed of ''Theobroma cacao''
* Chocolate liquor, or cocoa liquor, pure, liquid chocolate extracted from the cocoa bean, including both cocoa butter an ...
, Apple created the basis of
Mac OS X,
and eventually of
iOS,
iPadOS,
watchOS, and
tvOS.
GNUstep is a
free software
Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, n ...
implementation of the OpenStep standard.
Release history
Versions up to 4.1 are general releases. OPENSTEP 4.2 pre-release 2 is a bug-fix release published by Apple and supported for five years after its September 1997 release.
See also
*
OpenStep
OpenStep is a defunct object-oriented application programming interface (API) specification for a legacy object-oriented operating system, with the basic goal of offering a NeXTSTEP-like environment on non-NeXTSTEP operating systems. OpenStep wa ...
, the
object-oriented
Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of ...
application programming interface
An application programming interface (API) is a way for two or more computer programs to communicate with each other. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how ...
derived from NeXTSTEP
*
GNUstep, an open-source implementation of
Cocoa API
Cocoa is Apple's native object-oriented application programming interface (API) for its desktop operating system macOS.
Cocoa consists of the Foundation Kit, Application Kit, and Core Data frameworks, as included by the Cocoa.h header file, and ...
respectively OpenStep API
*
Window Maker, a
window manager designed to emulate the NeXT GUI for the
X Window System
*
Bundle (macOS)
In NeXTSTEP, OPENSTEP, GNUstep, and their lineal descendants macOS and iOS, a bundle is a file directory with a defined structure and file extension, allowing related files to be grouped together as a conceptually single item.
Examples of bundl ...
*
Miller Columns
Miller columns (also known as cascading lists) are a browsing/ visualization technique that can be applied to tree structures. The columns allow multiple levels of the hierarchy to be open at once, and provide a visual representation of the curre ...
, the method of directory browsing that NeXTSTEP's File Viewer used
*
Multi-architecture binary
*
NeXT character set The NeXT character set (often aliased as NeXTSTEP encoding vector, WE8NEXTSTEP or next-multinational) was used by the NeXTSTEP and OPENSTEP operating systems on NeXT workstations beginning in 1988. It is based on Adobe Systems' PostScript (PS) chara ...
*
Previous, an emulator for NeXT hardware capable of running some versions of NeXTSTEP
References
External links
*
NeXTComputers.org*
The Next StepBYTE Magazine 14-03, Object Oriented Programming with NextStep
{{DEFAULTSORT:Nextstep
1989 software
Berkeley Software Distribution
Discontinued operating systems
Mach (kernel)
NeXT
Object-oriented operating systems
Unix variants
Window-based operating systems