多くのクラスは中プレフィックスNSココア/ココアタッチを持っています。これは何を意味するのでしょうか?
#1階
Appleから開発ドキュメント:
ヒストリカルノート:あなたが遭遇したので、多くの種類がNSの接頭辞で提示されている理由を知りたい場合は、それはココアとココアタッチのための歴史です。Cocoaはアプリケーションの起動NeXTStepのオペレーティングシステムを構築するためのフレームワークから収集しました。Appleが1996年にNeXTのを購入した場合は、既存のクラス名を含め、多くのNeXTStepのOS Xに組み込まれています。ココアタッチのiOSはココアで導入しました。各プラットフォームは一意である多くのクラスがありますが、ココアとココアタッチは、両方のクラスでご利用いただけます。予約二文字は、NSとAppleのために使用されるUI(IOSのためのユーザインタフェース要素)プレフィックス。
出典:使用してObjective-Cのプログラミング
ハウス#2
BumgarnerビルAKAの@bbumは、彼を知っている必要があります 2005年に発表されたCocoaBuilderメーリングリスト:
プレフィックスNSの発効後、日が画像に入りました。NeXTSTEP 4.0(ものOpenStep呼ばれる)へのNeXTSTEP 3.0からの移行時には、NSは、パブリックAPIに表示され接頭辞。バージョン4.0以前は、いくつかのシンボルNX接頭辞が、システムライブラリはクラスのほとんどを提供しなかった接頭辞 - リスト、ハッシュテーブル、ビュー、およびように。
誰もが1994分の1993まで使用に残っプレフィックス(NeXTのための)NXに同意するように見えた、Appleのドキュメントは言います:
1994年9月にリリースの公式のOpenStepのAPI、それはまた、「NS」プレフィックスの人々を使用する最初のものです、財団とアプリケーションキット間のAPIの最初の部門でした。
ハウス#3
基本的には、NSからN EXT S Appleは次元のオペレーティングシステムを買ったときはMac OS XになることであるTEP、。
私はそれが本当に必要とする理由である、他の理由を説明したいと思います。
ほぼすべてのC ++、にあります名前空間はstd
あなたが理由のstd ::文字列を持っている理由です。
エラーに非常にあなたがなりやすい、名前空間を使用して、あなたは、むしろシステムとの競合よりも、独自のクラスの文字列を書くことができます。
Objective-CのはCのスーパーセットであるが、それは名前空間が含まれていない、と同じ理由で、すべてのシステムクラスがNSまたはいくつかの他の奇妙な接頭辞が付いてきました。
これは、DirectXを持つすべてのクラス方法ですD3Dは、事前に固定され、すべてのクラスのOpenGL方法は、GL、事前に同じ固定します。
あなたが使用してはならないことをこれは意味NSを自分のクラスに名前を付けるために、そしてあなたがコアアニメーション見たときにNS、CAまたはコアグラフィックスで見ながら、CGを使用すると、これは、システムのフレームワークへの呼び出しであることを知っていますよ、。
迅速支持間隔、およびコアタイプ(Stringなど)の名前はNS当量にマッピングされているため、スウィフトは、この契約に変化します。
#4階
それはから来ているのNeXTSTEPの遺産。
ハウス#5
元のコードからのCocoaフレームのNeXTSTEPそれはNSと結合される前に、図書館財団とのAppKitは(これらの名前はまだAppleのCocoaフレームワークを使用している)、ネクストステップのエンジニアは、シンボルを選択しました。
Objective-CはCの拡張であるので、それはC ++のように名前空間好きではなかったので、そう、彼らは紛争という、ユニークな接頭記号を追加する必要があります。これは特に重要なシンボル定義されたフレームワークです。
あなただけの記号を使用して、あなたのコードを作成するアプリケーションを作成する場合は、心配する必要はありません。あなたが使用する他の人のためのフレームワークやライブラリを書きたい場合は、あなたはまた、フロントに加えて独自のプレフィックスに署名する必要があります。CocoaDevはページを持って、ココアコミュニティ多くの開発者は、その接頭辞を「選択」に記載されています。あなたも見つけることができ、このSOの議論は役に立ちます。
ハウス#6
これは、ネクストステップ(= NS)遺産です。次は1985年にアップルコンピュータ社を出た後に設立スティーブ・ジョブズ(Steve Jobs氏)、及び(UNIXに基づいて)そのネクストステップ・オペレーティング・システム、およびOBJの-C言語とランタイムました。一緒にそのライブラリとツールで、ネクストステップは、後に(また、SunのAPIで次の名前である)のOpenStep改名され、後にココアとなりました。
(。いくつかの名前のみ大文字または小文字の点で異なり、特にため)これらの異なる名前は実際には非常に混乱している、説明するために、次の方法を試してみてください。
#7の構築
N EXT S TEPまたはN eXTSTEP / Sは、クエリにしたい人に依存します。
SunはOpenStepのにかなりの投資となっています。Sunは、画像を入力する前に、ほとんどのものの基礎は命名されているNXそれは財団と呼ばれていなかったにもかかわらず、N E XT名で、そしていくつかの点で日が絵に入る前に、すべてのものがあります名前を変更NSを。Sおそらく一般的なコンセンサスの後に日が、日を表していなかった、Sは Sunが参加に敬意を払うと言わ表します。
私は実際にこの参照を持っていますが、今で見つけることができません。もし/私は再びそれを見つけたとき、私はこの記事を更新します。
#8の構築
次に(NEXTSTEPのオペレーティングシステムに対して)ネクストステップのAPIを定義したとき、彼らはNX NXConstantString接頭辞です。彼らは日でOpenStepの仕様を記述するとき、彼らはでNSObjectの中など、NSの接頭辞を使用し、(OPENSTEPのオペレーティングシステムと混同しないでください)。
ハウス#9
(強調は追加しました)
頭字語のCocoaクラス「NS」(の先頭の代表のOpenStep 次の日は、作成元の特定の用語を、またはのOpenStepフレーム表すのNeXTSTEP)等NSStringの、NSArrayのは。
キット財団(またはより一般財団は)最初に登場してのOpenStep。Core FoundationのベースにはMac OS X上で。ファンデーションは一般的なオブジェクト指向データベースであり、操作の文字列値、コンテナと反復、分散コンピューティング、運転サイクルと直接グラフィカル・ユーザ・インターフェースに関連付けられていない他の機能を提供します。フレームワークとのすべてのクラスの定数を使用「NS」プレフィックスからのNeXTと日 OPENSTEPの伝統のココア共同開発。