ميكروسيرفيسات Swift: من أين يبدأ المبتدئ في 2024

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

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

ابدأ الدورة

لماذا Swift ليست فقط لتطوير التطبيقات المحمولة؟



عندما تسمع "Swift"، أول ما يتبادر إلى الذهن هو تطبيقات iOS. لكن في السنوات الأخيرة، خطت Swift بثبات نحو جانب الخادم. وهذا ليس مجرد ضجة: شركة Apple تعمل بنشاط على تطوير النظام البيئي، والمجتمع يبني أطر عمل قوية. إذا كنت تكتب بالفعل بلغة Swift لتطبيقات iOS وترغب في توسيع آفاقك — فإن ميكروسيرفيسات Swift ستكون خطوتك المنطقية التالية.



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



ما الذي تحتاج معرفته قبل البدء؟



للقراءة المريحة، ستحتاج إلى:

  • معرفة أساسية بلغة Swift (المتغيرات، الدوال، الهياكل)
  • فهم HTTP و REST (على الأقل بمستوى "هناك طلب — هناك رد")
  • تثبيت brew (لنظام macOS) أو Docker (لنظام Linux)

إذا كان هناك شيء ناقص — لا تقلق، سنتعلمه أثناء العمل.



اختيار الأداة: Vapor — ملك Swift للخادم



في سوق أطر العمل الخادمية لـ Swift، هناك لاعبان رئيسيان: Vapor و Kitura (من IBM). لكن Kitura، للأسف، شبه متوقفة. بينما Vapor يتطور بنشاط، وله مجتمع ضخم ووثائق ممتازة. لذلك، اختيارنا هو Vapor.



Vapor يوفر كل شيء جاهزًا: التوجيه، الوسائط، العمل مع قواعد البيانات، WebSocket، والمعالجة غير المتزامنة عبر async/await. مثالي لبناء بنية ميكروسيرفيسات بلغة Swift.



تثبيت Vapor Toolbox

افتح الطرفية ونفذ:

brew install vapor

بعد التثبيت، تحقق:

vapor --help

إذا رأيت قائمة الأوامر — كل شيء على ما يرام، يمكنك إنشاء أول مشروع.



إنشاء أول ميكروسيرفيس: Hello, World!



سيكون أول ميكروسيرفيس لدينا بسيطًا: سيستقبل طلب GET ويعيد JSON. لكننا سنفعل ذلك بشكل صحيح — ببنية جاهزة للتوسع.



الخطوة 1. إنشاء المشروع

vapor new HelloMicroservice --template=authcd HelloMicroservice

العلامة --template=auth ستضيف بنية أساسية مع المصادقة. بالنسبة للميكروسيرفيس، هذه ممارسة جيدة — تضمين الأمان منذ البداية.



الخطوة 2. بنية المشروع

بعد الإنشاء، سترى البنية التالية:

HelloMicroservice/├── Sources/│   ├── App/│   │   ├── Controllers/│   │   ├── Models/│   │   └── configure.swift│   └── Run/│       └── main.swift├── Tests/├── Dockerfile└── Package.swift

لاحظ ملف Dockerfile — هذا قالب جاهز للحاويات. الميكروسيرفيسات بدون Docker مثل البيتزا بدون جبن.



الخطوة 3. كتابة أول نقطة نهاية

لنفتح Sources/App/Controllers/UserController.swift (إذا لم يكن موجودًا، سننشئه). سنضيف دالة بسيطة:

import Vapor

struct HealthController: RouteCollection { func boot(routes: RoutesBuilder) throws { let health = routes.grouped("api", "health") health.get(use: checkHealth) } @Sendable func checkHealth(req: Request) async throws -> HTTPStatus { return .ok }}

هذا هو فحص الصحة الكلاسيكي — أساس أي ميكروسيرفيس. الآن، لنقم بتسجيله في configure.swift:

// في نهاية الدالة configuretry app.register(collection: HealthController())


الخطوة 4. التشغيل والاختبار

vapor run

افتح المتصفح أو الطرفية:

curl http://localhost:8080/api/health# الرد: 200 OK

تهانينا! لقد قمت بإنشاء أول ميكروسيرفيس بلغة Swift!

المدونات

توصيات الكتب