من عرض Appleقامت Apple بتحديث وثائق المطور. قسم
"ما الجديد؟" مكرسة للتغييرات الرئيسية في macOS 10.14: نظام الألوان الداكنة الوضع المظلم ، تقنية Create ML الجديدة لإنشاء وتدريب الشبكات العصبية على Mac ، متجر Mac App Store المحدث مع واجهات برمجة جديدة للتقييمات والمراجعات (لنظام macOS 10.14 SDK) ، إطار الشبكة الجديد Network Framework ، الذي يوفر وصولاً مباشرًا إلى بروتوكولات شبكة TLS و TCP و UDP من التطبيقات ، وإطار اللغة الطبيعية لتحليل الكلام الطبيعي وعزل البيانات الوصفية الخاصة بلغة معينة منه (يمكن استخدام الإطار جنبًا إلى جنب مع Create ML لتدريب الشبكات العصبية).
ولكن الشيء الأكثر إثارة للاهتمام مخفي في الطابق السفلي ، أي في قسم الإيقاف وواجهات برمجة التطبيقات المُزالة. يذكر التخلي عن تقنيات OpenGL و OpenCL "المتقادمة". تُمنح هذه التقنيات "العلامة السوداء" ، أي أن Apple لا تشجع بشدة استخدام OpenGL و OpenCL في تطوير منتجات جديدة.
وقالت الوثائق: "تضيف Apple بشكل دوري وحدات ماكرو للإيقاف إلى واجهة برمجة التطبيقات للإشارة إلى أنه يجب عدم استخدام واجهات برمجة التطبيقات هذه في التطوير النشط". - عند حدوث التقادم ، لا يعني هذا نهاية الحياة البينية لواجهات البرامج هذه. يمثل هذا بداية فترة سماح للانتقال من واجهات برمجة التطبيقات هذه إلى بديل أحدث وأكثر حداثة يتم استبداله ".
تشير Apple إلى أن واجهات برمجة التطبيقات القديمة عادة ما تظل على النظام ويمكن استخدامها "لفترة زمنية معقولة" بعد الإصدار عندما يتم إيقافها. ومع ذلك ، يتوقف التطوير النشط عليها ، ولا يتلقى API سوى تحديثات أمان طفيفة أو أخطاء فادحة أخرى. يتم تحذير المطورين من أنه
قد تتم إزالة واجهات برمجة التطبيقات القديمة تمامًا من الإصدار المستقبلي من نظام التشغيل .
توصي Apple بالتخلص من واجهات برمجة التطبيقات القديمة في التعليمات البرمجية الخاصة بها في أقرب وقت ممكن. كحد أدنى ، يجب ألا يستخدم الكود الجديد OpenGL و OpenCL مطلقًا. وإذا كانت بعض الرموز القديمة تستخدم هذه الواجهات ، فيجب استبدالها في أسرع وقت ممكن.
البديل: معدن
ستستمر التطبيقات التي تم إنشاؤها باستخدام OpenGL و OpenCL في العمل على نظام macOS 10.14 ، لكن هذه تقنيات قديمة بالفعل. "يجب أن تستخدم تطبيقات الألعاب والرسومات التي تستخدم OpenGL الآن Metal. وبالمثل ، يجب أن تستخدم التطبيقات التي تستخدم OpenCL في المهام الحسابية الآن تظليل المعدن والأداء المعدني. "
المعدن - واجهات برامج جديدة تم تطويرها من الصفر دون توافق عكسي. ووفقًا لشركة Apple ، فإنها توفر وصولًا أفضل إلى معالجات الرسومات الحديثة على أجهزة iOS و macOS ، بالإضافة إلى أجهزة tvOS: "تتجنب Metal النفقات العامة المتأصلة في التقنيات القديمة وتمثل أحدث وظائف معالجة الرسومات. تتيح الرسومات الموحدة للحوسبة ودعم الحوسبة للتطبيقات الاستفادة من أحدث تقنيات التصور. للحصول على معلومات حول تطوير التطبيقات والألعاب باستخدام Metal ، راجع وثائق المطورين لـ
Metal و
Metal Performance Shaders و
MetalKit . "
للحصول على معلومات حول ترحيل كود OpenGL إلى Metal ، راجع
Mixing Metal و OpenGL Rendering in a View .
يشكك المطورون في Hacker News في شركة Apple. بشكل عام ، الإجماع هو: إما أن هذه الشركة تكره ألعاب الكمبيوتر حقًا ، أو أنها تعاني بشدة من
متلازمة رفض تطوير شخص آخر (متلازمة NIH). هذا موقف في الثقافات الاجتماعية أو المؤسسية أو الثقافية يتجنب استخدام تطورات الطرف الثالث لأسباب مختلفة: الخوف من التعدي على براءات الاختراع ، وسوء فهم عمل شخص آخر ، وعدم الرغبة في الاعتراف بعمل الآخرين أو تقديره ، أو الغيرة أو كجزء من "حرب من أجل إقليم" أوسع. يزعم ، تؤكد تكنولوجيا المعادن وجود متلازمة NIH.
يتذكر المعلقون أيضًا أنه نظرًا للدعم اللامبالي لـ OpenGL ، فقد تم
إغلاق مشروع Elite Dangerous لنظام Mac مؤخرًا.
من ناحية أخرى ، يتم إنشاء معظم الألعاب اليوم على Unity3D و Unreal Engine والمحركات الأخرى التي تدعم Metal. حسنًا ، كل من استثمر الوقت والمال في التطوير لـ OpenGL / OpenCL هو المسؤول.