¿Por qué los archivos Objective-C usan la extensión .m?


204

Desde que comencé a aprender Objective-C y Cocoa, me he estado preguntando por qué han elegido la extensión .m para los archivos de implementación: ¿se suponía que significaba algo o era solo una letra aleatoria?


12
Es para el em plementation.
dreamlax

2
Supongo que esto estaba molestando a alguien más, por lo que hicieron un poco de investigación para encontrar evidencia contradictoria sobre el significado detrás de la extensión .m. En definitiva, significa mensajes. Para la lectura completa: pempek.net/blog/2013/11/30/objective-c-file-extension/…
John Riselvato

.mLos archivos son archivos de implementación como usted dijo. Conociendo a Apple le gusta a todo con prefijo ies fácil ver que i MPLEMENTACIÓN convierte MPLEMENTACIÓN sin dicho i. Luego se acaba de utilizar la primera letra del MPLEMENTACIÓN para la extensión de archivo: m.
Daniel

Respuestas:


465

Hoy la mayoría de la gente se referiría a ellos como "archivos de método", pero

"La extensión .m correspondía inicialmente a" m ensajes "cuando se introdujo primero en Objective-C, en referencia a una característica central de Objective-C [...]"

(del libro " Aprender Objective-C en la Mac " de Mark Dalrymple y Scott Knaster, página 9)

EDITAR: Para satisfacer una picazón, le envié un correo electrónico a Brad Cox , el inventor de Objective-C, sobre la pregunta y respondió con esta sola línea:

"Porque .o y .c fueron tomados. Así de simple".

Aquí está el correo electrónico como prueba visual:

Prueba visual


115
Se molestó en enviar un correo electrónico a Brad Cox para averiguarlo. Eres una persona increíble, increíble.
Chironex

15
Parece que estaba haciendo una broma. Si se tomaron o y c, ¿por qué my ninguna otra letra disponible? Si bien creo que es una respuesta divertida, también me resulta difícil creer que simplemente se haya sacado de un sombrero y que no haya usado ninguna lógica para elegir m.
prototípico

2
Estoy de acuerdo en que probablemente estaba bromeando, pero probablemente algo burlón. .m probablemente fue para método o mensajería, pero también solo se usó porque .o y .c ya se usaron.
bigtunacan

10
Desearía que Brad hubiera respondido la pregunta en lugar de simplemente explicar por qué no se usaron. Al menos arroja un poco de luz sobre un aspecto de la respuesta, aunque ...
still_dreaming_1

1
@INTPnerd Él respondió, más o menos. Me parece que “.m” fue elegido primero en salir de la necesidad de algo distinto de “.o” o “.c” y en segundo lugar porque podría ser tomado para significar cualquier / todos los m étodos, m ensajes, i estoy plementación
Slipp D. Thompson

8

Significa "métodos". De las preguntas frecuentes de comp.lang.objective-C :

La organización de la fuente de Objective-C es típicamente similar a la del código fuente de C o C ++, con declaraciones e interfaces de objetos que van a los archivos de encabezado nombrados con una extensión .h, y las definiciones e implementaciones de objetos van en archivos nombrados con un .m (abreviatura para métodos ) extensión.



-3

Suposición: 1983 se introdujo ObjectC junto con la primera computadora Macintosh .... Por lo tanto, podría ser m como en Macintosh o m como en métodos o incluso ambos.


44
Objective-C originalmente no tenía nada que ver con Macintosh. Además, la respuesta correcta ya se publicó hace años.
Johan Halin
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.