Why do Objective-C files use the .m extension?

后端 未结 4 1318
-上瘾入骨i
-上瘾入骨i 2020-12-04 06:22

Since I started learning Objective-C and Cocoa, I\'ve been wondering why they have chosen the extension .m for the implementation files - was it supposed to mean something,

相关标签:
4条回答
  • 2020-12-04 07:00

    Today most people would refer to them as "method files", but

    "The .m extension originally stood for "messages" when Objective-C was first introduced, referring to a central feature of Objective-C [...]"

    (from the book "Learn Objective-C on the Mac" by Mark Dalrymple and Scott Knaster, page 9)

    EDIT: To satisfy an itch I emailed Brad Cox, the inventor of Objective-C, about the question and he answered with this single line:

    "Because .o and .c were taken. Simple as that."

    Here's the email as visual proof:

    Visual Proof

    0 讨论(0)
  • 2020-12-04 07:05

    .m files contain the (m)ethods. Possible reason?

    0 讨论(0)
  • 2020-12-04 07:07

    Wild guess: 1983 was ObjectC introduced along with the first Macintosh computer... . So it might be m as in macintosh or m as in methods or even both.

    0 讨论(0)
  • 2020-12-04 07:23

    It stands for "methods". From the comp.lang.objective-C FAQ:

    The organisation of Objective-C source is typically similar to that of C or C++ source code, with declarations and object interfaces going into header files named with a .h extension, and definitions and object implementations going in files named with a .m (short for methods) extension.

    0 讨论(0)
提交回复
热议问题