कुछ पाठ पढ़कर, खासकर आईओएस दस्तावेज़ प्रतिनिधि के बारे में, सभी प्रोटोकॉल विधि को हुक कहा जाता है कि कस्टम प्रतिनिधि वस्तु को लागू करने की आवश्यकता है। लेकिन कुछ अन्य किताबें, इन हुक को कॉलबैक के रूप में नाम दें, उनके बीच क्या अंतर है? क्या वे सिर्फ अलग नाम हैं लेकिन एक ही तंत्र? ओबीजे-सी के अलावा, सी जैसी कुछ अन्य प्रोग्रामिंग भाषाओं को भी हुक मिला, ओबीजे-सी के साथ एक ही स्थिति?हुक और कॉलबैक के बीच क्या अंतर है?
उत्तर
यहां शब्दावली थोड़ी अस्पष्ट है। आम तौर पर समान परिणामों को प्राप्त करने के दो प्रयास।
सामान्य तौर पर, एक कॉलबैक एक समारोह (या प्रतिनिधि) आप एपीआई के साथ रजिस्टर प्रसंस्करण के प्रवाह में उचित समय पर कहा जा रहा है (उदाहरण के लिए आपको सूचित किया जाता है कि प्रसंस्करण उस चरण में है)
ए हुक परंपरागत रूप से कुछ और सामान्य है जो एपीआई को कॉल संशोधित करने के उद्देश्य से कार्य करता है (उदाहरण के लिए पास पैरामीटर संशोधित करें, बुलाए गए कार्यों की निगरानी करें)। इस अर्थ में जावा की उच्च-स्तरीय भाषाओं द्वारा हासिल की जा सकने वाली तुलना में यह आमतौर पर बहुत कम स्तर होता है।
आईओएस के संदर्भ में, शब्द हुक का मतलब
दो अवधि ऊपर कॉलबैक के रूप में सटीक एक ही बात बहुत समान हैं और कभी-कभी दूसरे शब्दों में किया जाता है। लाइब्रेरी में एक हुक एक विकल्प था, उपयोगकर्ता कोड लाइब्रेरी के व्यवहार को बदलने के लिए एक फ़ंक्शन को लिंक कर सकता है। लाइब्रेरी फ़ंक्शन को उपयोगकर्ता कोड के साथ समवर्ती चलाने की आवश्यकता नहीं है; एक विनाशक के रूप में।
एक कॉलबैक एक विशिष्ट प्रकार का हुक है जहां उपयोगकर्ता कोड लाइब्रेरी कॉल शुरू करने जा रहा है, आमतौर पर एक आई/ओ कॉल या जीयूआई कॉल, जो कर्नेल या जीयूआई सबसिस्टम पर contol देता है। नियंत्रण प्रक्रिया तब उपयोगकर्ता कोड को एक इंटरप्ट या सिग्नल पर 'वापस कॉल' करती है ताकि उपयोगकर्ता कोड हैंडलर की आपूर्ति कर सके।
ऐतिहासिक रूप से, मैंने इंटरप्ट हैंडलर और जीयूआई इवेंट हैंडलर के लिए इस्तेमाल किए गए कॉलबैक के लिए इस्तेमाल किया हुआ हुक देखा है। मैं नियमित रूप से जुड़ा हुआ है और डायनामिक कोड में इस्तेमाल कॉलबैक होने पर भी हुक का उपयोग किया जाता है।