Objective-C dosyaları neden .m uzantısı kullanıyor?


204

Objective-C ve Cocoa öğrenmeye başladığımdan beri, uygulama dosyaları için neden .m uzantısını seçtiklerini merak ediyordum.


12
Bu em uygulaması için .
dreamlax

2
Sanırım bu başka birini rahatsız ediyordu, bu yüzden .m uzantısının anlamı hakkında çelişkili kanıtlar bulmak için biraz araştırma yaptılar. Sonuçta mesajlar anlamına gelir. Tam okuma için: pempek.net/blog/2013/11/30/objective-c-file-extension/…
John Riselvato

.mdosyalar, dediğin gibi uygulama dosyalarıdır. İle Bilmek Elma önek her şeyi sever io görmek kolaydır i mplementation olur mplementation söyledi olmadan i. Sonra onlar sadece dosya uzantısı için mplementation ilk harfini kullandı: m.
Daniel

Yanıtlar:


465

Bugün çoğu insan bunlara "yöntem dosyaları" der.

" Objektif-C ilk tanıtıldığında, .m uzantısı başlangıçta " Objektif C'nin merkezi özelliğine atıfta bulunarak " m essages" anlamına geliyordu [...] "

( Mark Dalrymple ve Scott Knaster'ın " Mac'te Objective-C'yi Öğrenin " kitabından , sayfa 9)

DÜZENLEME: Bir kaşıntıyı tatmin etmek için Objective-C'nin mucidi Brad Cox'a soru hakkında e-posta gönderdim ve bu tek satırla cevap verdi:

"Çünkü .o ve .c alındı. Bu kadar basit."

Görsel kanıt olarak e-posta:

Görsel Kanıt


115
Öğrenmek için Brad Cox'a e-posta göndermeye zahmet ettin! Seni harika, harika biri.
Chironex

15
Şaka yapıyormuş gibi geliyor. Eğer o ve c alınırsa, neden başka m mevcut değil m? Komik bir cevap olduğunu düşünmeme rağmen, sadece şapkadan çekildiğine ve m seçiminde herhangi bir mantık kullanmadığına inanmakta zorlanıyorum.
prototipik

2
Muhtemelen şaka yaptığını kabul ediyorum, ama muhtemelen yanakta biraz dil. .m büyük olasılıkla yöntem veya mesajlaşma içindi, ancak yalnızca .o ve .c zaten kullanıldığı için de kullanıldı.
bigtunacan

10
Keşke Brad, neden sadece .o ve .c'nin kullanılmadığını açıklamak yerine soruyu cevaplasaydı. En azından cevabın bir yönüne biraz ışık tutuyor ...
still_dreaming_1

1
@ INTPnerd Yanıt verdi az çok. “.M” “.o” veya “.c” ve herhangi anlamında atılabilecek çünkü ikinci / tüm dışındaki bir şey için ihtiyaç birinci out seçildi geliyor bana m ö n- tem, m essages i m plementation.
Slipp D.Thompson

8

"Yöntem" anlamına gelir. Gönderen comp.lang.objective-C SSS :

Objective-C kaynağının organizasyonu genellikle C veya C ++ kaynak kodununkine benzer, bildirimler ve nesne arabirimleri .h uzantısıyla adlandırılmış başlık dosyalarına ve tanımları ve nesne uygulamaları .m (kısa için yöntemler ) uzantısı.



-3

Vahşi tahmin: 1983, ilk Macintosh bilgisayarla birlikte ObjectC olarak tanıtıldı .... Yani macintosh'da olduğu gibi m veya yöntemlerde olduğu gibi m veya her ikisi de olabilir.


4
Objective-C'nin Macintosh ile hiçbir ilgisi yoktu. Ayrıca, doğru cevap yıllar önce yayınlanmıştır.
Johan Halin
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.