Swift: مقدمة إلى Swift: دليل المبتدئين للبدء

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

1. ما ستتعلمه


2. قصة حقيقية: تغيير المسار الوظيفي من الصفر

(1) نقطة الألم: تريد بناء تطبيقات ولكن لا تعرف من أين تبدأ

كانت Alice محللة أسواق بخبرة خمس سنوات. أرادت الانتقال إلى تطوير iOS. بعد ثلاثة أيام من البحث عبر الإنترنت، وجدت الكثير من المصادر ولكن لا توجد نقطة بداية واضحة:

"قال البعض تعلم Objective-C، وقال آخرون Swift، وقال غيرهم ابدأ بـ C. قمت بتنزيل Xcode - 4.7GB - ولكن عندما فتحته لم أعرف أين أنقر. كانت الواجهة معقدة للغاية."

��عضلة Alice نموذجية: زخم المعلومات يؤدي إلى شلل القرار.

(2) حل Playgrounds

اقترح صديق أن تتخطى مشاريع Xcode تمامًا وتبدأ بـ Swift Playgrounds بدلاً من ذلك - بيئة برمجة Swift تفاعلية وخفيفة الوزن.

SWIFT
// Your first line of code in Swift Playgrounds
print("Hello, world!")

لا يتطلب Playgrounds إعداد مشروع، ولا توقيع كود، ولا معرفة بـ Storyboard. اكتب سطرًا من الكود وشاهد النتيجة فورًا. كتبت Alice أول برنامج لها في غضون 15 دقيقة.

(3) النتيجة: من صفر إلى واحد في 15 دقيقة

البُعد قبل بعد
الحاجز النفسي "لا أستطيع تعلم البرمجة" "كتابة الكود بسيطة فعلاً"
وقت الإعداد 3 أيام من التردد 10 دقائق لتنزيل Playgrounds
أول برنامج لم تكتب أي برنامج Hello World في 15 دقيقة
مستوى الثقة 0/10 7/10

3. ما هي Swift

Swift هي لغة برمجة حديثة قدمتها Apple في WWDC 2014 لبناء تطبيق��ت iOS وmacOS وwatchOS وtvOS. تستمد مفاهيم تصميم ممتازة من لغات متعددة.

100%
graph LR
    A[Swift] --> B[آمنة]
    A --> C[سريعة]
    A --> D[حديثة]
    A --> E[مفتوحة المصدر]
    B --> B1[الاختياريات تمنع أعطال القيم الفارغة]
    B --> B2[أمان النوع يمنع أخطاء النوع]
    C --> C1[تحسين تجميع LLVM]
    C --> C2[أداء يضاهي C/Obj-C]
    D --> D1[الإغلاقات/الأنواع العامة/مطابقة الأنماط]
    D --> D2[صياغة موجزة، عالية القابلية للقراءة]
    E --> E1[مفتوحة المصدر على GitHub]
    E --> E2[تعمل على Linux أيضًا]

(1) الميزات الرئيسية لـ Swift

الميزة الوصف مقابل Objective-C
أمان النوع يتحقق من أخطاء النوع في وقت التجميع يمكن لـ Obj-C تمرير id بشكل عشوائي
الاختياريات استخدام ? و ! لتحديد القيم الفارغة بشكل صريح يمكن لـ nil في Obj-C إرسال رسائل إلى أي كائن
إدارة الذاكرة التلقائية ARC تدير عدد المراجع تلقائيًا يتطلب Obj-C retain/release يدوي
الإغلاقات الدوال مواطن من الدرجة الأولى مع تعابير الإغلاق صياغة block في Obj-C معقدة
الأنواع العامة تحديد نوع الوسيط لكتابة كود عام لا يدعم Obj-C الأنواع العامة
امتدادات البروتوكول يمكن للبروتوكولات أن تحتوي على تطبيقات افتراضية بروتوكولات Obj-C يمكنها التصريح فقط
مفتوحة المصدر عبر المنصات مع دعم Linux Obj-C ليست مفتوحة المصدر

(2) ما يمكن استخدام Swift فيه

المجال إطار العمل/الأداة الوصف
تطبيقات iOS UIKit / SwiftUI تطوير تطبيقات iPhone وiPad
تطبيقات macOS AppKit / SwiftUI تطوير تطبيقات سطح المكتب Mac
watchOS WatchKit تطبيقات Apple Watch
tvOS tvOS SDK تطبيقات Apple TV
جانب الخادم Vapor / Kitura بناء واجهات خلفية بـ Swift
البرمجة النصية Swift Script استبدال Shell/Python للأدوات اليومية

▶ مثال: تجربة Swift مع Playgrounds

SWIFT
// ============================================
// Experience Swift interactively in Playgrounds
// No Xcode project needed — just open and code
// ============================================

let greeting = "Hello, Swift!"
print(greeting)

// Display calculation results directly
let result = 42 + 10
print("42 + 10 = \(result)")

المخرجات:

TEXT 📖 للعرض فقط
Hello, Swift!
42 + 10 = 52

4. إعداد بيئة التطوير

(1) اختيار الإعداد المناسب

الخيار الأنسب لـ التثبيت الحجم
Xcode تطوير iOS/macOS احترافي التنزيل من Mac App Store ~7GB
Playgrounds المبتدئين في تعلم صياغة Swift Mac App Store / iPad App Store ~150MB
Swift على Linux تطوير جانب الخادم / عبر المنصات apt install swift ~500MB
Playground عبر الإنترنت اختبار سريع، بدون تثبيت عبر المتصفح 0

(2) تثبيت Playgrounds (موصى به للمبتدئين)

إذا كان لديك Mac أو iPad، فإن أسرع طريقة للبدء هي تثبيت Swift Playgrounds:

  1. افتح Mac App Store (أو iPad App Store)
  2. ابحث عن "Swift Playgrounds"
  3. انقر على "Get" للتثبيت

بعد التثبيت، فقط افتحه وابدأ البرمجة. لا حاجة لحساب Apple Developer، ولا توقيع شهادة مطلوب.

(3) تثبيت Xcode (للتطوير المتقدم)

Xcode هو بيئة التطوير المتكاملة الرسمية من Apple، وتتضمن مجموعة أدوات تطوير iOS الكاملة:

BASH
# طريقتان لتثبيت Xcode
# 1. ابحث عن "Xcode" في Mac App Store وقم بالتنزيل (موصى به)
# 2. قم بتنزي�� حزمة .xip من موقع Apple Developer
⚠️ ملاحظة: حجم Xcode حوالي 7GB ويستغرق التثبيت 15-30 دقيقة (حسب سرعة الإنترنت). إذا كنت تريد فقط تعلم صياغة Swift، ابدأ بـ Playgrounds أولاً.

▶ مثال: إنشاء Playground في Xcode

SWIFT
// ============================================
// Create a Playground file in Xcode
// File → New → Playground → Blank
// ============================================

import UIKit

var number = 42
number += 10

// The Playground sidebar shows variable values in real time
print(number)

المخرجات:

TEXT 📖 للعرض فقط
52

5. بنية أول برنامج Swift

يبدأ كل برنامج Swift التنفيذ من الملف المدخل. في Playgrounds، يتم تنفيذ الكود سطرًا بسطر من الأعلى إلى الأسفل.

(1) البنية الأساسية

100%
graph TB
    A[ملف مصدر Swift .swift] --> B[استيراد أطر العمل]
    A --> C[تصريحات المتغيرات/الثوابت]
    A --> D[تعريفات الدوال]
    A --> E[التعابير والجمل]
    B --> F["import Foundation"]
    B --> G["import UIKit"]
    C --> H["let name = \"Alice\""]
    C --> I["var age = 28"]
    D --> J["func sayHello() { ... }"]
    E --> K["print(\"مرحبًا\")"]

(2) فهم دالة print

print هي دالة الإخراج الأكثر استخدامًا في Swift لعرض المحتوى في وحدة التحكم.

SWIFT
// ============================================
// Basic usage of the print function
// ============================================

// 1. Output a string
print("Hello, Swift!")

// 2. Output multiple values (auto space-separated)
print("Hello", "Swift", "World")

// 3. String interpolation
let name = "Alice"
print("My name is \(name)")

// 4. Specify separator and terminator
print("One", "Two", "Three", separator: ", ", terminator: ".\n")

المخرجات:

TEXT 📖 للعرض فقط
Hello, Swift!
Hello Swift World
My name is Alice
One, Two, Three.

▶ مثال: بنية برنامج Swift كامل

SWIFT
// ============================================
// Complete Swift program: Personal Info Card
// Demonstrates import, constants, variables, print
// ============================================

import Foundation

// Constants (immutable)
let appName = "Swift Starter"
let author = "Alice"

// Variables (mutable)
var year = 2026
var version = 1.0

// Output
print("Welcome to \(appName)")
print("Author: \(author), Year: \(year)")
print("Version: v\(version)")

// Update version number
version = 1.1
year = 2026

print("Updated: v\(version) (\(year))")

المخرجات:

TEXT 📖 للعرض فقط
Welcome to Swift Starter
Author: Alice, Year: 2026
Version: v1.0
Updated: v1.1 (2026)

6. مثال كامل: بناء آلة حاسبة بسيطة في Playgrounds

SWIFT
// ============================================
// Full example: Playground Calculator
// Demonstrates basic arithmetic operations
// ============================================

import Foundation

// 1. Define inputs
let a = 25
let b = 7

// 2. Calculate
let sum = a + b
let difference = a - b
let product = a * b
let quotient = a / b
let remainder = a % b

// 3. Format and output results
print("a = \(a), b = \(b)")
print("=== Results ===")
print("Addition: \(a) + \(b) = \(sum)")
print("Subtraction: \(a) - \(b) = \(difference)")
print("Multiplication: \(a) × \(b) = \(product)")
print("Division: \(a) ÷ \(b) = \(quotient) remainder \(remainder)")

المخرجات:

TEXT 📖 للعرض فقط
a = 25, b = 7
=== Results ===
Addition: 25 + 7 = 32
Subtraction: 25 - 7 = 18
Multiplication: 25 × 7 = 175
Division: 25 ÷ 7 = 3 remainder 4

❓ أسئلة شائعة

س هل أحتاج لتعلم لغة أخرى قبل Swift؟
ج لا. Swift مصممة للمبتدئين، والبدء من الصفر ممكن تمامًا. يفترض هذا البرنامج التعليمي عدم وجود خبرة سابقة في البرمجة.
س هل يمكنني تعلم Swift بدون Mac؟
ج نعم. يمكنك استخدام Swift Playgrounds عبر الويب، أو المحررات عبر الإنترنت مثل SwiftFiddle، أو تثبيت مجموعة أدوات Swift على Linux. ومع ذلك، نشر التطبيقات على App Store يتطلب Mac في النهاية.
س ما العلاقة بين Swift وSwiftUI؟
ج Swift هي لغة البرمجة؛ SwiftUI هو إطار عمل واجهة مستخدم مبني على Swift. تعلم أساسيات Swift أولاً (هذا البرنامج التعليمي)، ثم انتقل إلى SwiftUI لبناء الواجهات. الأمر مثل تعلم القواعد قبل الكتابة.
س هل يمكن تشغيل Swift على Windows؟
ج Windows غير مدعوم رسميًا. ومع ذلك، يمكنك استخدام المحررات عبر الإنترنت مثل SwiftFiddle أو تثبيت WSL لتشغيل Swift على Ubuntu.

📖 ملخص


📝 تمارين

  1. مبتدئ: قم بتثبيت Swift Playgrounds (أو افتح Xcode وأنشئ Playground)، ثم استخدم أمر print لإخراج اسمك والسنة الحالية.

  2. متوسط: عدل مثال الآلة الحاسبة الكامل من القسم 6 بإضافة عروض تفصيلية للضرب (3 مجموعات مختلفة من الأرقام على الأقل) واستخدم وسيط separator لتجميل تنسيق الإخراج.

  3. متقدم: باتباع أسلوب الكود من القسم 6، أنشئ برنامج "محول وحدات" يحول بين الدرجة المئوية والفهرنهايت (الصيغة: °F = °C × 9/5 + 32). اعرض النتائج بكلا الوحدتين.

Web-Tutorial.com

فريق Web-Tutorial التقني

منصة دروس برمجية يديرها عدة مطورين. كل درس يتم كتابته ومراجعته بواسطة مطورين متخصصين في المجال. نعمل على ضمان دقة وموثوقية المحتوى — إذا لاحظت أي مشكلة، فيرجى إخبارنا.

100%