ऑब्जेक्टिव-सी फाइलें .m एक्सटेंशन का उपयोग क्यों करती हैं?


204

जब से मैंने ऑब्जेक्टिव-सी और कोको सीखना शुरू किया है, मैं सोच रहा हूं कि उन्होंने कार्यान्वयन फ़ाइलों के लिए एक्सटेंशन को क्यों चुना है - क्या इसका मतलब कुछ होना चाहिए था, या यह सिर्फ एक यादृच्छिक पत्र था?


12
यह उन्हें em plementation के लिए है।
ड्रीमलैक्स

2
मुझे लगता है कि यह किसी और को परेशान कर रहा था, इसलिए उन्होंने पीछे .m एक्सटेंशन के अर्थ पर विरोधाभासी सबूत खोजने के लिए थोड़ा शोध किया। अंततः यह संदेशों के लिए खड़ा है। पूर्ण पढ़ने के लिए: pempek.net/blog/2013/11/30/objective-c-file-extension/…
John Riselvato

.mफ़ाइलें आपके द्वारा बताई गई फ़ाइलों को लागू कर रही हैं। यह जानते हुए कि Apple सब कुछ उपसर्ग करना पसंद करता है, iयह देखना आसान है कि मैं कार्यान्वयन बिना कहे लागू हो जाता है i। तब उन्होंने फ़ाइल एक्सटेंशन के लिए केवल कार्यान्वयन के पहले अक्षर का उपयोग किया m:।
डैनियल

जवाबों:


465

आज ज्यादातर लोग उन्हें "मेथड फाइल्स" के रूप में संदर्भित करते हैं, लेकिन

".M एक्सटेंशन मूल रूप से" m निबंध "के लिए खड़ा था जब ऑब्जेक्टिव-सी को पहली बार पेश किया गया था, जिसका उद्देश्य ऑब्जेक्टिव-सी […] की एक केंद्रीय विशेषता थी।

( मार्क डेलरिम्पल और स्कॉट नस्टर द्वारा पुस्तक " लर्न ऑब्जेक्टिव-सी ऑन द मैक " पृष्ठ 9)

संपादित करें: एक खुजली को संतुष्ट करने के लिए, मैंने इस सवाल के बारे में ऑब्जेक्टिव-सी के आविष्कारक ब्रैड कॉक्स को ईमेल किया और उन्होंने इस एकल पंक्ति के साथ उत्तर दिया:

"क्योंकि .o और .c को लिया गया था। उस तरह से सरल।"

यहाँ दृश्य प्रमाण के रूप में ईमेल है:

दृश्य प्रमाण


115
आपने ब्रैड कॉक्स को यह जानने के लिए ईमेल करने की जहमत उठाई! आप कमाल के, कमाल के इंसान हैं।
चिरोनक्स

15
लगता है जैसे वह कोई मज़ाक कर रहा था। यदि ओ और सी लिया गया, तो एम और कोई अन्य उपलब्ध पत्र क्यों नहीं? जबकि मुझे लगता है कि यह एक मज़ेदार उत्तर है, मुझे यह विश्वास करना भी मुश्किल है कि इसे केवल एक टोपी से खींचा गया था और उसने मुझे चुनने में किसी भी तर्क का उपयोग नहीं किया।
प्रोटोटाइप

2
मैं मानता हूं कि वह मजाक कर रहा था, लेकिन गाल में कुछ जीभ होने की संभावना थी। .m संभावना विधि या संदेश भेजने के लिए थी, लेकिन इसका उपयोग केवल इसलिए किया गया क्योंकि .o और .c पहले से ही उपयोग किए गए थे।
बिगटुनाकन

10
काश, ब्रैड ने वास्तव में सिर्फ समझाने के बजाय सवाल का जवाब दिया होता कि .o और .c का उपयोग क्यों नहीं किया गया। कम से कम यह जवाब के एक पहलू पर प्रकाश का एक छोटा सा शेड करता है ...
still_dreaming_1

1
@INTPnerd उन्होंने इसका जवाब दिया, कमोबेश। मुझे ऐसा लगता है कि "मीटर" "ओ" या "ग" और दूसरा, क्योंकि यह किसी भी मतलब करने के लिए ले जाया जा सकता / के सभी के अलावा अन्य किसी चीज़ की आवश्यकता के पहले बाहर चुना गया था मीटर ethods, मीटर essages, मैं हूँ plementation।
स्लिप डी। थॉम्पसन

8

यह "तरीकों" के लिए खड़ा है। से comp.lang.objective-सी पूछे जाने वाले प्रश्न :

ऑब्जेक्टिव-सी स्रोत का संगठन आम तौर पर सी या सी ++ स्रोत कोड के समान होता है, जिसमें .h एक्सटेंशन के साथ नामित हेडर फाइलों में डिक्लेरेशन और ऑब्जेक्ट इंटरफेस होते हैं , और .m (शॉर्ट) नाम वाली फाइलों में जाने वाली परिभाषाओं और ऑब्जेक्ट कार्यान्वयन। के लिए तरीकों ) विस्तार।



-3

जंगली अनुमान: 1983 पहला Macintosh कंप्यूटर के साथ ObjectC को पेश किया गया था ...। तो यह मैकिंटोश में मीटर के रूप में हो सकता है या एम में विधियों में या यहां तक ​​कि दोनों में हो सकता है।


4
ऑब्जेक्टिव-सी का मूल रूप से मैकिंटोश से कोई लेना-देना नहीं था। इसके अलावा, सही उत्तर वर्षों पहले ही पोस्ट किया जा चुका है।
जोहान हैलिन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.