مدير حزم Swift (SPM): دليل شامل مع أمثلة عملية

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

مدير حزم Swift (SPM): الدليل الشامل لمطوري Swift

مدير حزم Swift (SPM) هو الأداة الرسمية لإدارة التبعيات وبناء وتوزيع كود Swift. مدمج مباشرة في نظام Swift البيئي، يوفر SPM طريقة موحدة وقياسية للعمل مع الحزم، مما يريح المطورين من الحاجة لاستخدام حلول خارجية مثل CocoaPods أو Carthage. يتكامل SPM بشكل وثيق مع مترجم Swift و Xcode، مما يجعله الخيار الأمثل للمشاريع الحديثة.

لماذا تحتاج إلى Swift Package Manager؟ أولاً، لإدارة التبعيات. أي مشروع غير بسيط يستخدم مكتبات خارجية: للتعامل مع الشبكة (Alamofire, URLSession)، لتحليل JSON (SwiftyJSON)، للتعامل مع قواعد البيانات (GRDB, SQLite.swift) وغيرها. يقوم SPM تلقائياً بتحميل وبناء وربط هذه المكتبات بمشروعك. ثانياً، يتيح لك SPM إنشاء ونشر الحزم الخاصة بك، مما يجعل كودك قابلاً لإعادة الاستخدام. ثالثاً، يوفر أداة قوية لبناء المشاريع، بما في ذلك دعم الاختبارات والموارد والإضافات.

على عكس CocoaPods، لا يتطلب SPM تثبيت Ruby gem منفصل أو إعداد Podfile معقد. وعلى عكس Carthage، لا يتطلب SPM ربط الأطر يدوياً. SPM هو مدير الحزم "الأصلي" الذي يفهم هيكل مشاريع Swift "خارج الصندوق". يستخدم ملف Package.swift لوصف المشروع وتبعياته، مما يجعل عملية التهيئة شفافة وقابلة للتوقع.

التثبيت

يأتي Swift Package Manager مع التوزيع الرسمي لـ Swift. لا حاجة لتثبيت منفصل. إذا كان لديك Swift مثبتاً (بدءاً من الإصدار 5.0)، فإن SPM متاح بالفعل في نظامك.

التحقق من التثبيت:

swift --version

إذا رأيت إصدار Swift، فإن SPM جاهز للعمل. يمكنك أيضاً التحقق من وجود الأداة نفسها:

swift package --version

تثبيت Swift (إذا لم يكن مثبتاً):

  • macOS: قم بتثبيت Xcode من Mac App Store. Swift و SPM جزء منه.
  • Linux (Ubuntu, CentOS, Amazon Linux): قم بتنزيل وتثبيت التوزيعة من الموقع الرسمي swift.org.
  • Windows: قم بتنزيل وتثبيت التوزيعة من swift.org.

بداية سريعة

لنقم بإنشاء مشروع تنفيذي جديد باستخدام SPM. هذا مثال عملي بسيط.

1. إنشاء المشروع:

mkdir MySwiftProject
cd MySwiftProject
swift package init --type executable

سينشئ هذا الأمر هيكل المشروع:

  • Package.swift — ملف البيان.
  • Sources/MySwiftProject/main.swift — نقطة الدخول.
  • Tests/ — مجلد للاختبارات.

2. محتوى Package.swift:

// swift-tools-version:5.9
import PackageDescription

let package = Package(
    name: "MySwiftProject",
    targets: [
        .executableTarget(
            name: "MySwiftProject"
        )
    ]
)

3. محتوى main.swift:

print("مرحباً، مدير حزم Swift!")

4. البناء والتشغيل:

swift build
swift run

يجب أن ترى في وحدة التحكم: مرحباً، مدير حزم Swift!

الأوامر والوظائف والفئات الأساسية

دعنا نستعرض العناصر الرئيسية لـ SPM التي ستتعامل معها يومياً. هذه بشكل أساسي واجهة برمجة التطبيقات (API) التي يوفرها وحدة PackageDescription.

1. Package

التوقيع:

توصيات