Hacker News

نظرة متعمقة على تنسيق ملف .car الخاص بشركة Apple

نظرة متعمقة على تنسيق ملف .car الخاص بشركة Apple يتعمق هذا الاستكشاف في العمق، ويفحص أهميته وتأثيره المحتمل. - نظام تشغيل Mewayz Business.

1 دقيقة قراءة

Mewayz Team

Editorial Team

Hacker News

نظرة عميقة على تنسيق ملفات .car الخاص بشركة Apple

تنسيق ملف .car الخاص بشركة Apple - وهو اختصار لـ Compiled Asset Catalog Resource - هو الحاوية الثنائية التي تستخدمها Apple لحزم أصول التطبيق وتحسينها وتسليمها عبر نظامها البيئي بأكمله من الأنظمة الأساسية. إن فهم هذا التنسيق مهم لأي مطور iOS أو macOS أو tvOS أو watchOS يرغب في تقديم تطبيقات أصغر حجمًا وأسرع وأفضل تحسينًا.

ما هو بالضبط ملف .car ولماذا تستخدمه Apple؟

عند إنشاء مشروع Xcode، يتم تجميع كتالوج Assets.xcassets بواسطة مترجم كتالوج الأصول (actool) في ملف .car ثنائي يتم شحنه داخل حزمة التطبيق الخاصة بك. بدلاً من تسليم ملفات PNG أو PDF أو HEIC فضفاضة في وقت التشغيل، تقوم Apple بتجميع كل شيء في هذا الملف الثنائي المنظم.

الدوافع وراء هذا التصميم متعمدة ومتعددة الطبقات. يقوم المترجم بإجراء العديد من التحسينات في وقت الإنشاء والتي قد تكون مستحيلة مع ملفات الصور الأولية:

ضغط النسيج المحسّن لوحدة معالجة الرسومات - يتم تحويل الصور مسبقًا إلى تنسيقات مثل ASTC أو PVR التي يمكن أن تستهلكها وحدة معالجة الرسومات مباشرة دون الحاجة إلى فك تشفير وحدة المعالجة المركزية.

تقطيع عامل القياس - يتم تخزين متغيرات @1x و@2x و@3x وتقديمها بناءً على كثافة شاشة الجهاز المستهدف.

تكامل تبسيط التطبيقات - يقوم متجر التطبيقات بإزالة متغيرات الأصول غير ذات الصلة بجهاز التنزيل، مما يقلل حجم التثبيت بشكل كبير.

إدارة مساحة اللون - يتم وضع علامة على الأصول وتحويلها إلى Display P3 أو sRGB أو مساحات الألوان الموسعة حسب الاقتضاء.

دعم اللون والرمز المحدد - يتم حل رموز SF ورموز الألوان الدلالية ودمجها جنبًا إلى جنب مع البيانات النقطية.

💡 هل تعلم؟

Mewayz تحل محل 8+ أدوات أعمال في منصة واحدة

CRM · الفواتير · الموارد البشرية · المشاريع · الحجوزات · التجارة الإلكترونية · نقطة البيع · التحليلات. خطة مجانية للأبد متاحة.

ابدأ مجانًا →

البصيرة الأساسية: تنسيق .car ليس مجرد حاوية - بل هو مسار تحسين نشط. يحدث الرفع الثقيل في وقت الترجمة بحيث يصبح تحميل الأصول في وقت التشغيل شبه فوري، وهو السبب الأساسي الذي يجعل تطبيقات Apple الأصلية تبدو أكثر سرعة من البدائل المستندة إلى الويب التي تشغل أصولًا مماثلة.

كيف يتم تنظيم الهيكل الداخلي لملف .car؟

لم تنشر شركة Apple مطلقًا مواصفات رسمية للتنسيق الثنائي ‎.car، لكن جهود الهندسة العكسية التي بذلها المجتمع - وأبرزها مشاريع مثل Asset Catalog Tinkerer وThemeEngine - قد رسمت تخطيطها بتفاصيل كبيرة.

في المستوى الأعلى، يتم إنشاء ملف ‎.car على نظام ملفات BOM (قائمة المواد) - وهو نفس التنسيق الذي تستخدمه Apple لحزم التثبيت. داخل شجرة BOM هذه، ستجد عدة تدفقات مسماة:

يعد تدفق RENDITIONS هو الأكبر والأكثر أهمية، حيث يحتوي على حمولات الصور والبيانات الفعلية المفهرسة بواسطة مفتاح عرض فريد. يحدد تدفق KEYFORMAT مخطط تلك المفاتيح، وترميز السمات مثل المصطلح (iPhone وiPad وMac) والمقياس ونطاق العرض والمظهر (فاتح وداكن). تحتوي تدفقات FACETKEYSDB وFEATUREFLAGS على بيانات تعريف حول الأصول المُسماة وعلامات القدرة على التوالي. يدعم الدفق EXTENDED_METADATA، الذي تمت إضافته في إصدارات SDK الأحدث، أشياء مثل أسماء الرموز المترجمة والرموز ذات العرض المتغير.

كل حمولة تسليم منظمة بحد ذاتها - فهي تحمل رأسًا يصف أبعاد البكسل، ومساحة اللون، ونوع الضغط، ثم البيانات المضغوطة الأولية. بالنسبة للصور النقطية، قد يكون هذا بكسلات أولية مضغوطة باستخدام LZFSE؛ بالنسبة لمتجهات PDF، فهي بايتات PDF الأصلية؛ بالنسبة لأصول البيانات، فهي أي نقطة ثنائية قمت بتخزينها.

ما الأدوات التي يمكن للمطورين استخدامها لفحص واستخراج محتويات .car؟

نظرًا لأن ملفات .car عبارة عن ثنائيات مجمعة، فلا يمكنك ببساطة فتحها في Preview أو Finder. توفر شركة Apple بعض المساحة السطحية الرسمية من خلال أطر عمل خاصة، ولكن بالنسبة للفحص العملي، فإنك عادةً ما تصل إلى أدوات الطرف الثالث.

يعد Asset Catalog Tinkerer (بواسطة Guilherme Rambo) أكثر أدوات واجهة المستخدم الرسومية استخدامًا - فهو يتيح لك تصفح الأصول الفردية ومعاينتها وتصديرها من أي ملف ‎.car. acextract عبارة عن أداة مساعدة لسطر أوامر مجتمعية تعمل على إعادة بناء بنية المجلدات السائبة من كتالوج مجمع. يمكن لأمر astutil الخاص بشركة Apple، والذي يتم شحنه مع سلسلة أدوات Xcode، الاستعلام عن البيانات الوصفية وتصفية الكتالوجات لأجهزة معينة. للثنائي العميق في

Streamline Your Business with Mewayz

Mewayz brings 207 business modules into one platform — CRM, invoicing, project management, and more. Join 138,000+ users who simplified their workflow.

Start Free Today →

جرب Mewayz مجانًا

منصة شاملة لإدارة العلاقات والعملاء، والفواتير، والمشاريع، والموارد البشرية، والمزيد. لا حاجة لبطاقة ائتمان.

ابدأ في إدارة عملك بشكل أكثر ذكاءً اليوم.

انضم إلى 30,000+ شركة. خطة مجانية للأبد · لا حاجة لبطاقة ائتمان.

وجدت هذا مفيدا؟ أنشرها.

هل أنت مستعد لوضع هذا موضع التنفيذ؟

انضم إلى 30,000+ شركة تستخدم ميويز. خطة مجانية دائمًا — لا حاجة لبطاقة ائتمان.

ابدأ التجربة المجانية →

هل أنت مستعد لاتخاذ إجراء؟

ابدأ تجربة Mewayz المجانية اليوم

منصة أعمال شاملة. لا حاجة لبطاقة ائتمان.

ابدأ مجانًا →

تجربة مجانية 14 يومًا · لا توجد بطاقة ائتمان · إلغاء في أي وقت