مقدمة في Swift: لغة تطبيقات Apple
كل تطبيق تستخدمه على iPhone أو iPad، من الألعاب إلى تطبيقات البنوك، كُتب غالباً بلغة Swift. في هذا الدرس ستتعرف على هذه اللغة التي صممتها Apple خصيصاً لأجهزتها، وستفهم لماذا يحبها المطورون، وستكتب أول برنامج لك.
ما هي Swift؟
Section titled “ما هي Swift؟”Swift (تعني «سريع») لغة برمجة حديثة أطلقتها شركة Apple عام 2014، لتكون اللغة الأساسية لبناء التطبيقات على كل أجهزتها:
- iOS: لهواتف iPhone.
- iPadOS: لأجهزة iPad.
- macOS: لأجهزة Mac.
- watchOS و tvOS: للساعة الذكية والتلفاز.
قبل Swift كانت Apple تعتمد على لغة قديمة اسمها Objective-C، كتابتها معقدة ومليئة بالرموز. فصممت Swift لتكون أسهل وأكثر أماناً وأسرع. وفي 2015 جعلتها Apple مفتوحة المصدر، فأصبح أي شخص يستطيع المساهمة في تطويرها، بل وتعمل أيضاً على لينكس.
لماذا يحبها المطورون؟
Section titled “لماذا يحبها المطورون؟”- كتابة نظيفة وسهلة القراءة: قريبة من الإنجليزية، وبلا تعقيدات غير ضرورية.
- الأمان: صُممت لتمنع أخطاء شائعة كثيرة قبل تشغيل البرنامج، مثل استخدام قيمة فارغة دون انتباه.
- السرعة: كما يوحي اسمها، أداؤها عالٍ جداً.
- SwiftUI: أداة حديثة من Apple لبناء واجهات التطبيقات بكود قليل وواضح.
تخيّل أن Apple صنعت مفتاحاً خاصاً لكل أبواب بيتها. يمكنك أن تحاول فتح الأبواب بأدوات أخرى، لكن المفتاح الأصلي (Swift) هو الأسهل والأضمن.
أول برنامج في Swift
Section titled “أول برنامج في Swift”print("Hello, Swift!")Hello, Swift!سطر واحد فقط! في Swift لا تحتاج دالة main لبرنامج بسيط مثل هذا، فالكود في ملف main.swift يُنفَّذ من الأعلى للأسفل مباشرة. ولا تحتاج فاصلة منقوطة في نهاية السطر.
لمحة عن المتغيرات
Section titled “لمحة عن المتغيرات”let name = "سارة" // ثابتvar age = 14 // متغيرage += 1print("اسمي \(name) وعمري \(age) سنة")اسمي سارة وعمري 15 سنةletلقيمة ثابتة لا تتغير.varلمتغير يمكن تغيير قيمته.\(name)داخل النص تضع قيمة المتغير في الجملة. لاحظ الشرطة المائلة العكسية قبل القوسين.
Swift تستنتج نوع المتغير تلقائياً: name نص (String)، و age عدد صحيح (Int). ويمكنك أن تكتب النوع صراحة إذا أردت:
let price: Double = 9.99ماذا تحتاج لتبدأ؟
Section titled “ماذا تحتاج لتبدأ؟”Xcode: الأداة الرسمية
Section titled “Xcode: الأداة الرسمية”Xcode هو البرنامج الرسمي المجاني من Apple لكتابة تطبيقات Swift. فيه محرر الكود، ومحاكي لأجهزة iPhone و iPad لتجربة تطبيقاتك، وكل ما تحتاجه لنشر التطبيق على App Store.
البدء بدون Mac
Section titled “البدء بدون Mac”- مواقع التجربة على الإنترنت: توجد مواقع تشغّل كود Swift في المتصفح، فتتعلم أساسيات اللغة من أي جهاز.
- Swift Playgrounds: تطبيق مجاني من Apple على iPad و Mac، يعلّمك Swift بطريقة ممتعة تشبه الألعاب.
- لينكس وويندوز: يمكن تثبيت Swift عليهما لكتابة برامج الطرفية، لكن ليس لبناء تطبيقات iPhone.
لمحة عن SwiftUI
Section titled “لمحة عن SwiftUI”هذا مثال صغير لشكل واجهة تطبيق بـ SwiftUI، فقط لتأخذ فكرة:
import SwiftUI
struct ContentView: View { var body: some View { Text("مرحباً بك في Swift!") .font(.title) }}هذا الكود يعرض نصاً بخط كبير على الشاشة. لاحظ كم هو قصير وواضح! سنصل إلى هذا المستوى بعد أن نتقن أساسيات اللغة.
جرّب بنفسك
Section titled “جرّب بنفسك”في أي موقع لتجربة Swift (أو في Xcode إن كان لديك Mac)، اكتب برنامجاً فيه:
- ثابت
letلاسم تطبيقك المفضل. - متغير
varلعدد ساعات استخدامك له يومياً، ثم أنقصه بواحد بـ-= 1. - اطبع جملة تجمعهما باستخدام
\( ). مثال:
أستخدم تطبيق الخرائط ساعتين يومياًأخطاء شائعة
Section titled “أخطاء شائعة”- محاولة تغيير let: تظهر رسالة خطأ مثل
Cannot assign to value: 'name' is a 'let' constant. استخدمvarإذا احتجت التغيير. - نسيان الشرطة العكسية:
"اسمي (name)"ستطبع الكلمة كما هي. الصحيح\(name). - توقع تشغيل Xcode على ويندوز: Xcode لأجهزة Mac فقط.
اختبر نفسك
Section titled “اختبر نفسك”سؤال
ما الكلمة التي تعرّف ثابتاً في Swift؟
في Swift نستخدم let للثوابت و var للمتغيرات.
سؤال
كيف تضع قيمة المتغير age داخل نص في Swift؟
Swift تستخدم الشرطة العكسية مع القوسين \(age) لإدخال القيم في النصوص.
الخلاصة
Section titled “الخلاصة”- Swift لغة حديثة من Apple عام 2014 لبناء تطبيقات iPhone و iPad و Mac.
- أسهل وأكثر أماناً من Objective-C، ومفتوحة المصدر.
printللطباعة، وletللثوابت، وvarللمتغيرات، و\( )لإدخال القيم في النصوص.- Xcode هو الأداة الرسمية ويعمل على Mac فقط.
- يمكنك تعلّم أساسيات اللغة من أي جهاز عبر مواقع التجربة.