NeXTSTEP(ネクストステップ)は、NeXTコンピュータのUnix系オブジェクト指向マルチタスクオペレーティングシステム (OS) である。
オリジナル版は同社独自のコンピュータ「NeXTcube」上で動作するよう開発された。NEXTSTEPそのものは商業的にあまり成功しなかったものの、技術面やユーザインタフェース面で後世に与えた影響は大きい。現在のmacOSやiOS, iPadOSは、NEXTSTEPの直系の子孫に当たる。
NeXTSTEP 1.0は、1986年からのプレビューを経て1989年9月18日にリリースされた。最終リリースとなった3.3は1995年にリリースされている。最終リリース時点では、モトローラ68000ファミリ(NeXTのマシン)だけでなく、インテルのx86(IBM PC/AT互換機)、サンのSPARC、HPのPA-RISCでも動作した。
概要 NeXTSTEPにはいくつかの構成要素がある。 Machカーネルに基づいたUnix系OS (XNU)。ただし、カリフォルニア大学バークレー校のBSD Unixのソースコードも取り入れている。 ディスプレイ・ポストスクリプトとウィンドウ・エンジン Objective-C言語とランタイム環境 オブジェクト指向アプリケーション層、いくつかのキットを含む。 オブジェクト指向層のための開発ツール
NeXTSTEPのユーザインタフェースは洗練されていて整合性が高く、特徴的なウィジェットはWindows 95のシェルデザインの原型になった。他に、macOSでも採用されたDockというアイデアがあり、Shelfという仕組みもあった。NEXTSTEPのファイルマネージャであるWorkspace Managerは多数のファイルを管理するのに便利であり、Smalltalkのクラスブラウザから受け継いだカラム表示(Miller columns)のコンセプトは、macOSのFinderをへてiTunes、iPodのインタフェースに引き継がれている。
NeXTSTEPは他にも今では一般的な数々のGUIコンセプトを生み出した。三次元風なインタフェース部品、システム全体で共通なドラッグ・アンド・ドロップ、システム全体のパイプサービス、リアルタイムスクロールとウィンドウドラッグ、プロパティダイアログ ("inspectors")、ウィンドウを変化させて何かを知らせる(たとえば、ファイルセーブ状況など)といったことである。
他にもいろいろな面で初めてのものが導入されている。印刷用カラー標準への対応、アルファチャンネル(白黒時代からアルファ値を持っていた)、洗練されたサウンドと音楽処理(モトローラの56000DSPを使用)、グラフィックの基本要素、国際化、全てのアプリケーションで同一の文字表示(組版)などである。日本語版ではモリサワのPostscript フォント(リュウミンLと中ゴシックBBB)が標準で付属し、画面表示に利用された。
追加のキットが製品として出ている。それには、Portable Distributed Objects (PDO) というリモート実行(呼び出し)ができるものや、WebObjectsの元となったEnterprise Objects Framework (EOF) というオブジェクト指向データベースシステムがあった。これらのキットはカスタムアプリケーションプログラマには面白いものであり、NeXTSTEPは金融系プログラミングの世界では長く使われた。
名称 名前の大文字、小文字の組み合わせはいろいろなバリエーションがある。時間軸で並べると、最初にNextStep、次にNeXTstep、そしてNeXTSTEP、最後にNEXTSTEPとなった。関係者が一般に使うのはNeXTstepである。OPENSTEPリリース時、NeXT社は従来のNEXTSTEPをOPENSTEP 4.0 for Machという名前に改称しリリースした。
影響 世界初のウェブブラウザであるWorldWideWebはNeXTSTEPプラットフォーム上で開発された。最近のブラウザでも見られるいくつかの機能とキーボード・ショートカットはNeXTSTEPが持っていた機能に由来している部分がある。それを他のブラウザではブラウザ自身の機能として再実装しているのである。HTML 1.0 と 2.0 における基本的なレイアウトオプションはNeXTのTextクラスで可能だった機能に由来しているhttp://www.w3.org/People/Berners-Lee/WorldWideWeb。DOOMというゲームも主にNeXTマシン上で開発されたJohn Romero of id Software talks about development of Doom on NeXT。ほかにも、Macromedia FreeHand、Mathematicaの "Notebook" インタフェース、Lotus ImprovなどがNeXTマシン発祥である。
3.2のリリース時点でNeXTはサン・マイクロシステムズと共同でOPENSTEPの開発に着手した。こちらはNEXTSTEPの上位フレームワーク層のみを色々なOS (NEXTSTEP, Microsoft Windows NT, Sun Solaris) 上で動作できるようにしたもので、NEXTSTEP 3.2をベースにしている。1996年12月20日の発表を経て、1997年2月4日、AppleはNeXTを4億2700万ドルで獲得し、OPENSTEPオペレーティングシステムをMac OS Xのベースとして使用した。Mac OS XがOPENSTEPから受け継いだものはCocoa開発環境に見ることができる。そこではObjective-Cのライブラリクラスは "NS" というプレフィックスが付いている。
かつてのMac OS XのAquaとFinderはQuartzやHFS+といったNEXTSTEPにはない機能を生かすためにCarbon APIで開発されたものだが、NEXTSTEP独自のユーザインタフェースの特徴の多くを引き継いでいる。なお、Mac OS XのFinderは、Mac OS X v10.6以降はCocoaで改めて作り直された。macOS Catalina以降では64ビット非対応のCarbon APIは廃止されており、NEXTSTEP由来で64ビット対応となったCocoaで書き直され、ファイルシステムも64ビットのAPFS必須となっている。
OPENSTEPのクローンの実装もGNUstepとして存在している(GPL)。
バージョン履歴 バージョン リリース コメント 0.9 1988年 最初のバージョン。NeXTのハードウェアのみサポート 1.0 1989年 1.0a 2.0 1990年9月18日 2.1 1991年3月25日 2.2 3.0 1992年末 3.1 1993年5月25日 i386、PA-RISC、SPARCをサポート 3.2 1993年10月 3.3 1995年2月 NEXTSTEP の名称でリリースされた中では最も広く使われたバージョン 4.0 (beta) 1996年 ごく一部の開発者向けに配布されたβ版
なお、OPENSTEPは最終的には4.2までリリースされている。4.2のリリースはAppleによる買収後であった。
脚注
参考文献
主要開発者 アビー・テバニアン バド・トリブル バートランド・サーレイ スコット・フォーストール ジャン=マリー・ヒューロット
関連項目 OPENSTEP GNUstep Window Maker NeXTcube NeXTstation
外部リンク A complete guide to the confusing series of names applied to the system NeXTComputers.org