Pregunta ¿Qué significa el prefijo NS?


Muchas clases en Cocoa / Cocoa Touch tienen el prefijo NS. Qué significa eso?


514
2018-01-23 17:22


origen


Respuestas:


Es de Próximo paso patrimonio.


398
2018-01-23 17:24



El código original para los marcos de Cocoa provino del Próximo paso libraries Foundation y AppKit (esos nombres todavía son utilizados por los frameworks Cocoa de Apple), y los ingenieros de NextStep eligen prefijar sus símbolos con NS.

Como Objective-C es una extensión de C y, por lo tanto, no tiene espacios de nombres como en C ++, los símbolos deben ir precedidos de un prefijo único para que no colisionen. Esto es particularmente importante para los símbolos definidos en un marco.

Si está escribiendo una aplicación, de modo que es probable que su código solo use sus símbolos, no debe preocuparse por esto. Pero si está escribiendo un marco o una biblioteca para el uso de los demás, también debe ponerle un prefijo único a sus símbolos. CocoaDev tiene una página donde muchos desarrolladores en la comunidad de Cocoa han enumerado sus prefijos "elegidos". También puedes encontrar esta discusión SO servicial.


744
2018-01-23 17:52



norteeXTSTEP o norteeXTSTEP /Sun depende de a quién le preguntes.

Sun tuvo una inversión bastante grande en OpenStep por un tiempo. Antes de que Sun entrara en escena, la mayoría de las cosas en la fundación, a pesar de que no se conocía como la base en ese momento, tenían el prefijo NX, para nortemiXT, y en algún momento justo antes de que Sun entrara en escena, todo fue renombrado como NS. los S lo más probable es que no representara a Sun entonces, pero después de que Sun intervino, el consenso general fue que Sun defendió su participación.

De hecho, tenía una referencia para esto, pero no puedo encontrarlo ahora. Actualizaré la publicación si / cuando la encuentro nuevamente.


145
2018-01-23 18:03



Es el patrimonio NextStep (= NS). NeXT fue la empresa de informática que formó Steve Jobs después de abandonar Apple en 1985, y NextStep era su sistema operativo (basado en UNIX) junto con el lenguaje Obj-C y el tiempo de ejecución. Junto con sus bibliotecas y herramientas, NextStep pasó a llamarse OpenStep (que también era el nombre en una API que NeXT desarrolló junto con Sun), que luego se convirtió en Cocoa.

Estos nombres diferentes en realidad son bastante confusos (especialmente porque algunos de los nombres difieren solo en qué caracteres son mayúsculas o minúsculas ...), intente esto para obtener una explicación:

TheMerger OpenstepConfusion


51
2018-01-23 18:01



De los documentos para desarrolladores de Apple:

Nota histórica: si se pregunta por qué tantas de las clases que encuentra tienen un prefijo NS, es debido a la historia pasada de Cocoa y Cocoa Touch. Cocoa comenzó su vida como los marcos recopilados utilizados para crear aplicaciones para el sistema operativo NeXTStep. Cuando Apple compró NeXT en 1996, gran parte de NeXTStep se incorporó a OS X, incluidos los nombres de clase existentes. Cocoa Touch fue introducido como el equivalente de iOS de Cocoa; algunas clases están disponibles tanto en Cocoa como en Cocoa Touch, aunque también hay una gran cantidad de clases exclusivas para cada plataforma.   Los prefijos de dos letras como NS y UI (para elementos de interfaz de usuario en iOS) están reservados para Apple.

Fuente: Programación con Objective-C


39
2018-03-19 04:53



De Cocoa_ (API) Wikipedia:

(énfasis añadido)

Las clases de cacao comienzan con el acrónimo "NS" (de pie ya sea para el    Creación NeXT-Sun de OpenStep, o por el término propietario original   para el marco OpenStep, Próximo paso): NSString, NSArray, etc.

Kit de fundación, o más comúnmente simplemente Fundación, apareció por primera vez en    OpenStep. En Mac OS X, está basado en Core Foundation. La Fundación es una   biblioteca genérica orientada a objetos que proporciona cadena y valor   manipulación, contenedores e iteración, informática distribuida, ejecutar   bucles y otras funciones que no están directamente relacionadas con el gráfico   interfaz de usuario. El prefijo "NS", usado para todas las clases y constantes en   el marco, proviene de El patrimonio OPENSTEP del cacao, que fue conjuntamente   desarrollado por Siguiente y Sol.


21
2017-10-27 18:08



Cuando NeXT estaba definiendo la API NextStep (a diferencia del sistema operativo NEXTSTEP), usaron el prefijo NX, como en NXConstantString. Cuando estaban escribiendo la especificación OpenStep con Sun (que no debe confundirse con el sistema operativo OPENSTEP) usaban el prefijo NS, como en NSObject.


10
2018-01-24 02:32