لماذا لا تجعل Apple واجهات برمجة التطبيقات الخاصة لا يمكن الوصول إليها؟

StackOverflow https://stackoverflow.com/questions/2664649

سؤال

إذا كانت Apple لا تريد المطورين الذين يستخدمون واجهات برمجة التطبيقات الخاصة في iPhone SDK ، فلماذا لا يفعلون شيئًا مثل وضع علامة على الفئات و/أو الأساليب مع كل ما يعادل الهدف من الكلمة الرئيسية "الداخلية" لـ C#؟ إذا تم نشر واجهات برمجة التطبيقات بين الثنائيات المتعددة ، يمكن لـ Apple إعادة تشكيلها في ثنائيات خاصة مخصصة فقط لتسهيلها.

هل كانت مفيدة؟

المحلول

لا يحتوي Objective-C على مكافئ للكلمات الرئيسية "الداخلية" أو Java "النهائي". أعتقد أن الأمر يتعلق بالطبيعة الديناميكية للغة ، وأن تكون أي وظيفة من هذا القبيل سهلة العمل على أي حال.

أيضًا فيما يتعلق بـ iPhone SDK ، تحتاج جميع المكتبات إلى تجميعها بشكل ثابت في التسلل ، ولا يوجد ارتباط ديناميكي مسموح به. لذا فإن وضع وظيفة "داخلية" لن يحدث فرقًا في الرؤية حتى لو كان ذلك ممكنًا.

نصائح أخرى

إجابة قصيرة ، لا يميزونهم على أنهم خاصون لأنهم لا يصفونهم على الإطلاق.

الرسائل التي لا يفترض أن ترسلها لا تظهر في ملفات .H المقابلة في SDKs.

عادةً ما يتم العثور على واجهات برمجة التطبيقات الخاصة من قبل أشخاص يستخدمون أدوات مثل تفريغ الفصل ضد الأطر الثنائية ، وليس عن طريق قراءة الرؤوس.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top