معرفی Xcode ( کاربرد و امکانات )

زمان مطالعه : ۸ دقیقه
آخرین بروزرسانی : ۱۳ شهریور ۱۴۰۳

Xcode چیست؟

Xcode یک محیط توسعه یکپارچه (IDE) برای ساخت برنامه و بازی برای پلتفرم اپل شامل macOS، iOS، iPadOS، watchOS، tvOS است. از ایجاد برنامه تا تست و دیباگ و ارسال به اپ استور در Xcode انجام میشود.

تاریخچه Xcode

Xcode در اواخر سال 2003 منتشر شد. هدف از انتشار Xcode محیطی برای توسعه نرم‌افزار برای macOS بود.چون در آن زمان هنوز آیفون و iOS معرفی نشده بودند. (اولین نسخه آیفون سال 2007 در ماه June معرفی شد.)

در حال حاضر نسخه 15 Xcode منتشر شده و کاربران میتوانند از طریق اپ استور و سایت اپل این برنامه را دانلود کنند.

صفحه دانلود Xcode در اپ استور اپل

نسخه های معرفی شده از Xcode

از آن جایی که Xcode ابزار اصلی اپل برای برنامه نویسی محصولات خود است، تقریبا هر سال نسخه جدیدی از آن منتشر میشود که به برنامه نویسان این امکان را میدهد از api های جدید اپل استفاده کنند.

نسخه سال عرضه خلاصه ای از بهبود ها
Xcode 1.x 2003

اولین نسخه Xcode که به عنوان یک محیط توسعه یکپارچه برای macOS عرضه شد.

شامل ابزارهایی مانند Project Builder و Interface Builder بود. توسعه‌دهندگان با این نسخه میتوانستند اپ های خود را برای سیستم عامل مک توسعه دهند.

Xcode 2.x 2005

اضافه شدن امکانات جدید برای دیباگ کردن و همچنین بهینه شدن کد ها

Xcode 3.x 2007

بهبود رابط کاربری، اضافه شدن Xray، بهبود نویگیشن، اضافه شدن SDK های مربوط به آیفون و پشتیبانی کامل از iOS، اضافه شدن LLVM Compiler

Xcode 4.x 2011

رابط کاربری کاملا جدید و یکپارچه

اضافه شدن Editor Assistant، LLVM Compiler 2.0، اضافه شدن Fix-it

Xcode 5.x 2013

رفع باگ ها و بهبود عملکرد

معرفی XCTest

Xcode 6.x 2014

پشتیبانی کامل و معرفی زبان برنامه Swift

Xcode 7.x 2015

اضافه شدن قابلیت های جدید برای برنامه نویسا iOS و macOS

اضافه شدن Playground

Xcode 8.x 2016

اضافه شدن Swift 3 و بهبود دیباگ کردن

اضافه شدن Live Rendering که امکان مشاهده تغییرات رو بصورت زنده میدهد

Xcode 9.x 2017

اضافه شدن Swift 4

افزایش سرعت و عملکرد

Xcode 10.x 2018

اضافه شدن حالت دارک مود

ابزار های CI/CD

Xcode 11.x 2019

معرفی فریمورک SwiftUI

تحولی بزرگ در طراحی رابط کاربری

Xcode 12.x 2020

بهبود در فریمورک SwiftUI

Xcode 13.x 2021

معرفی قابلیت Live Collaboration

معرفی ابزار بهتر برای Package Management

امکان همکاری چند برنامه نویس همزمان در Playground

Xcode 14.x 2022

بهبود بیشتر در Swift و SwiftUI

معرفی ابزار بهتر برای Package Management

امکان همکاری چند برنامه نویس همزمان در Playground

Xcode 15.x 2023

بهبود در ابزار های دیباگ

هماهنگی و یکپارچگی در محیط توسعه


Xcode برای چه کاری استفاده میشود؟

Xcode یکی از محبوب ترین pro اپ های دنیاست که کاربرد ها مختلفی دارد که در ادامه به آن ها اشاره میکنیم.

1- برنامه نویسی برای iOS

iOS یکی از بزرگ ترین سیستم عامل های موبایل در جهان است که نزدیک به 1.5 میلیارد کاربر دارد.

2- برنامه نویسی برای macOS

دومین سیستم عامل بزرگ دسکتاپ یعنی macOS میلیون ها کاربر در سراسر جهان دارد که شما با استفاده از Xcode میتوانید برایش برنامه نویس کنید

3- برنامه نویسی برای ipadOS

همانطور که احتمالا میدانید پر فروش ترین ساعت های دنیا متعلق به اپل هستند که با سیستم عامل watchOS عرضه میشوند. شما با استفاده از Xcode میتوانید برای این ساعت ها برنامه نویسی کنید.

4- برنامه نویسی برای watchOS

همانطور که احتمالا میدانید پر فروش ترین ساعت های دنیا متعلق به اپل هستند که با سیستم عامل watchOS عرضه میشوند. شما با استفاده از Xcode میتوانید برای این ساعت ها برنامه نویسی کنید.

5- برنامه نویسی برای tvOS

Apple TV یک دستگاه استریم هست که با اتصال به تلویزیون شما امکان اضافه کردن امکانات جدیدی را به تلویزیون شما دارد. شما با استفاده از Xcode میتوانید برای این دستگاه هم برنامه نویسی کنید.

6- برنامه نویسی بک اند و فرانت اند

شما با استفاده از Xcode میتوانید برنامه نویسی بک اند و فرانت اند هم انجام دهید. برای مثال فریمورک Vapor برای این منظور به زبان سوئیفت نوشته شده است.

اما xcode مخصوص برنامه نویسی وب طراحی نشده است و اگر صرفا هدفتون برنامه نویسی وب هستش، گزینه های بهتری از xcode وجود دارد.

7- ساخت برنامه های cross platform

تا حالا برنامه هایی را دیدید که روی چند پلتفرم مختلف اپل همزمان وجود دارند؟

برخی از این برنامه ها بصورت کراس پلتفرم طراحی شده اند. یعنی یک برنامه طراحی شده که روی چند سیستم عامل ( مثلا iOS و macOS ) اجرا میشوند. اینطوری نیازی به طراحی جدا برای دو سیستم عامل نیست.

8- توسعه بازی

Xcode از فریمورک های مختلفی در زمینه بازی سازی مثل SpireKit، SceneKit استفاده کنید

همچنین امکان استفاده از موتور های بازی سازی Unity و Unreal Engine در Xcode وجود دارد.

9- سرویس های کنترل پروژه

در برنامه نویسی یکی از ابزار های بسیار کاربردی سیستم های کنترل نسخه مثل گیت و شرکت های خدمات دهنده آن مثل گیت هاب، گیت لب و بیت باکت هستند که Xcode قابلیت پشتیبانی از آن ها را دارد.

10- انتشار اپلیکیشن و بازی

انتشار بازی و برنامه در پلتفرم اپل نسبت به سایر پلتفرم کمی سخت تر است. اما تمامی مراحل توسعه و انتشار و خروجی گرفتن از برنامه خود را میتوانید در Xcode انجام دهید.

11- دیباگ و تست برنامه

در مراحل اولیه توسعه اپلیکیشن شاید ابزار های دیباگینگ خیلی اهمیت خود را نشان ندهند.

اما با بزرگ شدن اپ و پیچیده شدن کد ها این ابزار ها خیلی به کمک برنامه نویس می آیند که Xcode چندین ابزار دیباگینگ برای توسعه دهنده ایجاد کرده است.


ویژگی ها و امکانات Xcode

1- ویرایشگر کد پیشرفته

یک ویرایشگر کد پیشرفته که توسعه اپلیکیشن ها را برای برنامه نویسان راحت تر میکند.

برای مثال تکمیل خودکار کد ها، هایلایت کردن سینتکس کد ها و ...

2- Interface Builder

اگر با برنامه نویسی آشنا باشید میدانید که اجزای مختلف یک برنامه از کد تشکیل شده اند. حالا Xcode این امکان را در اختیار شما قرار میدهد که با استفاده از ابزار گرافیکی رابط کاربری را طراحی کنید!

یعنی فرض کنید مثل فوتوشاپ بخشی از برنامه خود را صرفا با کلیک کردن و درگ اند دراپ درست میکنید!

3- رابط گرافیکی جذاب

وقتی قرار باشد که روزانه چندین ساعت از وقت خود را در یک برنامه ای بگذرانید، وجود UI مناسب در برنامه بسیار مهم است که Xcode از این نظر نمره قابل قبولی میگیرد.

4- پشتیبانی از UIKit و SwiftUI

طراحی رابط کاربری با استفاده از دو فریمورک مهم بنام های SwiftUI و UIKit انجام میشود.

5- Swift Playground

لوگو Swift Playground

همچنین قابلیتی بنام Playground در Xcode وجود دارد که به کاربران اجازه میدهد در یک محیط ساده براحتی کد سوئیفت بزنند.

همچنین امکان دانلود برنامه ای بنام Swift Playground بصورت جدا از اپ استور وجود دارد که امکانات خوبی در اختیار مربیان و برنامه نویسان برای یادگیری زبان سوئیفت قرار میدهد.

Swift Playground ابتدا در سال 2016 برای ipadOS معرفی شد و سپس در سال 2020 نسخه macOS آن نیز منتشر شد.

6- بروزرسانی دائم توسط اپل

این برنامه بصورت دائم توسط اپل در حال بروزرسانی و بهبود است. که نکته مهمی برای توسعه دهنگان است.

7- شبیه ساز های متنوع

فرض کنید یک برنامه نوشتید و میخواهید آن را روی چند دستگاه متفاوت تست کنید از آیفون X تا آیفون 16. چطوری این کار میکنید؟

Xcode راه حل شماست! شما با استفاده از Xcode میتوانید برنامه هایی که نوشتید را روی هر دستگاهی که دوست دارید نصب و بررسی کنید.


Xcode چه زبان هایی را پشتیبانی میکند؟

Xcode یک محیط توسعه بسیار قدرتمند و با امکانات بالا هست و شما امکان این رو دارید که در Xcode به زبان های مختلفی کد بزنید.

  1. Swift: که مهم ترین زبان برنامه نویسی در پلتفرم اپل هست.
  2. Objective-c: که از دیرباز برای برنامه نویسی محصولات اپل استفاده میشد.
  3. C, C++: که از پایه های دو زبان ابجکتیو سی و سوئیفت هستند.
  4. JavaScript که در برنامه نویسی فرانت اند و بک اند و ... مورد استفاده قرار میگیرد.
  5. Python, Ruby: از این دو زبان هم بصورت محدود میتوان در Xcode استفاد کرد.

که درصد بالایی از کاربر های Xcode از آن برای برنامه نویسی Swift و Objective-c استفاده میکنند.


Xcode Cloud چیست؟

ایکس کد کلاود چیست؟

یک سرویس ابری جدید از اپل است که به توسعه‌دهندگان اجازه می‌دهد تا به صورت خودکار روند توسعه، تست، و انتشار اپلیکیشن‌های خود را در فضای ابری مدیریت کنند.

این سرویس به بهبود همکاری تیمی و کاهش زمان انتشار اپلیکیشن کمک می‌کند.

تاریخچه Xcode Cloud

Xcode Cloud برای اولین بار در کنفرانس WWDC 2021 معرفی شد. این سرویس بخشی از اکوسیستم توسعه اپل است.

ویژگی های Xcode Cloud

  1. یکپارچگی با Xcode
  2. تست خودکار
  3. مدیریت نسخه ها
  4. اشتراک گذاری و کار تیمی
  5. اتوماتیک شدن بیلد ها

مزایا Xcode

حالا بریم برخی از مزایای استفاده از Xcode را بررسی کنیم.

  1. رابط کاربری جذاب: یک رابط کاربری جذاب میتواند اثر خیلی مثبتی روی یادگیری شما بذارد. که از این نظر Xcode با وجود یک UI قوی و جذاب تا حد زیادی موفق بوده است.
  2. پشتیبانی قوی برای تکمیل کد: اگر قبلا برنامه نویسی کرده باشید میدانید که ابزار های تکمیل کد تا چه حد میتوانند در سرعت کدنویسی موثر باشند. xcode از این نظر بسیار خوب عمل کرده و تا حد زیادی نیاز های شما را برطرف میکند.
  3. شبیه ساز برای تمام دستگاه های اپلی: فرض کنید اپ را بصورت کامل طراحی کردید و میخواهید این اپ را روی دستگاه های مختلف تست کنید. چه میکنید؟ شما احتمالا نهایت یک آیفون یا مک برای تست دارید. اما با شبیه ساز های xcode میتونید برنامه خود را روی هر دستگاهی تست و بررسی کنید.
  4. ابزار های قوی گرافیکی برای کار با گیت: توسعه یک پروژه بزرگ بدون یک سرویس کنترل ورژن بسیار سخت است! و شما در طول پروژه هاتون حتما از سرویس های کنترل ورژن مثل گیت استفاده خواهید کرد. حالا xcode یک رابط گرافیکی بسیار راحت و مناسب برای کار با گیت برای شما فراهم کرده است.
  5. ابزار های پیشرفته دیباگ: دیباگ کردن و حل مشکلات بخش جدایی ناپذیر از برنامه نویسی است. اما وجود ابزار های مناسبت میتواند کار شما را راحت تر کند. که xcode از این نظر عملکرد مناسبی دارد.
  6. پشتیبانی اپل: پشتیبانی اپل از xcode نکته بسیار مهمی است! چون هر ویژگی جدیدی که برای سیستم عامل های مختلف مثل iOS و macOS می آید اول از همه امکان برنامه نویسی برای آن در xcode فراهم میشود.

معایب Xcode

در این که Xcode برنامه ای بسیار کاربردی است شکی نیست. اما به این معنا نیست که بی عیب و نقص است. در ادامه به چند تا از معایب Xcode میپردازیم.

  1. انحصار گرایی: شما امکان نصب مستقیم Xcode را فقط بر روی سیستم عامل macOS دارید و امکان نصب مستقیم آن روی ویندوز وجود ندارد. ( روش نصب غیر مستقیم دارد که اشاره کردیم. )
  2. حجم بالا و نیاز به منابع قوی: هم فایل نصبی Xcode حجم بالایی دارد و هم بروزرسانی های آن و از طرفی دیگر بخاطر وجود امکانات بسیار زیاد و شبیه ساز های فراوان نیاز به منابع زیادی هم دارد.
  3. وابستگی بروزرسانی ها به macOS: بیشتر نسخه های جدید Xcode نیاز دارند که macOS خود را هم آپدیت کنید. یعنی معمولا آخرین نسخه از Xcode روی یکی از آخرین نسخه های macOS نصب میشود.
  4. رابط کاربری پیچیده: برای کسایی که تازه با Xcode آشنا میشوند، معمولا در یادگیری و فهم آن دچار مشکل میشوند که تا حدی این مورد طبیعی است و با مرور زمان حل میشود.
  5. باگ ها: اشتباه برداشت نکنید! Xcode برنامه پر باگی نیست و مشکلات زیادی ندارد. اما بروز برخی باگ ها و کرش کردن ها در هنگام استفاده میتواند از معایب Xcode باشد.

نصب Xcode در مک

اگر شما مک داشته باشید نصب ایکس کد بسیار آسان است. کافیه از یکی از دو روش زیر Xcode را دانلود کنید و سپس اقدام به نصب کنید

  1. از سایت اپل ( نیاز به اپل آیدی و فیلتر شکن)
  2. از اپ استور

نصب Xcode در ویندوز

برای نصب Xcode روی ویندوز نیاز به یک ماشین مجازی مثل Vmware داریم.

دقت بفرمایید که حتما نسخه ای که دانلود میکنید امکان نصب روی سیستم عاملتون رو داشته باشه!

اگر تو نصب Xcode مشکل دارید میتونید آموزش نصب Xcode بر روی ویندوز را مشاهده کنید.

فایل نصبی Xcode بستگی به نسخه حجمی بین 7 گیگ الی 14 گیگ دارد، اما بعد از نصب آن نیاز به فضایی بین 40 گیگ (روی مک) و تا 60 گیگ (روی ویندوز) دارد.


ساخت یک پروژه جدید در Xcode

برای این منظور بعد از نصب xcode که بالاتر به آن اشاره کردیم مراحل زیر را دنبال کنید.

1- انتخاب نحوه ساخت پروژه

بعد از باز کردن xcode با صفحه ای مشابه عکس زیر روبرو میشوید. روی گزینه "Create a new Xcode project" کلیک کنید. با استفاده از این گزینه میتونید یک پروژه جدید بسازید.

صفحه اولیه xcode بعد از نصب

2- انتخاب قالب پروژه

بعد باید نوع پروژه مد نظر را انتخاب کنید. مثلا این پروژه برای iOS است یا macOS و یا ...

از آن جایی که ما میخواهیم یک اپ برای iOS بسازیم بنابراین گزینه iOS و App را انتخاب میکنیم.

صفحه انتخاب قالب پروژه در xcode

3- وارد کردن اطلاعات پروژه

حالا باید اطلاعات پایه ای پروژه را در xcode وارد کنیم.

همانطور ک در تصویر میبینید به ترتیب باید موارد زیر را وارد کنیم.

  1. نام پروژه
  2. تیم توسعه دهنده پروژه ( میتوانید خالی بگذارید )
  3. شناسه سازمان که معمولا بصورت برعکس دامنه نوشته میشود. مثلا برای سایت سوئیفت آکادمی باید ir.swiftacademy را بنویسیم.
  4. interface یا نحوه طراحی رابط کاربری برنامه که ما از storyboard استفاده میکنیم.
  5. و زبان برنامه نویسی را هم روی Swift میذاریم.
وارد کردن اطلاعات پروژه در Xcode

4- اجرا کردن پروژه

با این که ما هنوز هیچ کدی درون xcode نزدیم اما میتوانیم پروژه خالی را روی یکی از آیفون ها اجرا کنیم.

که در تصویر زیر میتوانید نحوه اجرا و برنامه اجرا شده را ببینید.

اجرای پروژه در Xcode

xcode برنامه بسیار بزرگ و حجیمی است و یادگیری آن ملزم وقت زیاد و صبر فراوان است. اگر علاقه دارید که با xcode آشنا شوید میتوانید از طریق لینک زیر اقدام کنید.


سوالات متداول در مورد Xcode

سوالات متداول در مورد Xcode

1- xcode روی ویندوز نصب میشود؟

امکان نصب بصورت مستقیم روی ویندوز وجود ندارد. اما همانطور که بالا تر اشاره کردیم با استفاده از vmware میتوانیم روی ویندوز xcode را نصب کنیم.

بنده چند سال اولی که با xcode کار میکردم از vmware و ویندوز استفاده میکردم.

2- Xcode رایگان است؟

بله! شما بصورت رایگان میتوانید از اپ استور xcode را دانلود کنید.

3- چرا باید از Xcode جای IDE های دیگر استفاده کنم؟

چون این محیط مخصوص برنامه نویس پلتفرم اپل ساخته شده و توسط خود اپل پشتیبانی و پیشنهاد میشود.

4- یادگیری کار با Xcode آسان است؟

ایکس کد برنامه بسیار بزرگ و با امکانات زیادی هست. طبیعتا مثل هر برنامه بزرگ دیگری کار با xcode هم آسان نیست و نیاز به وقت و صبر کافی دارد.

5- xcode برای برنامه نویسی وب مناسب است؟

xcode مخصوص وب طراحی نشده است. اما امکان اجرای فایل های html, css , javascript را دارد.

جمع بندی

xcode بزرگ ترین ابزار اپل برای توسعه دهنگان و یکی از بزرگ ترین IDE های دنیا است. که امکانات بسیار زیادی را در اختیار توسعه دهنگان قرار میدهد.

در کنار مزایا فوق العاده ای که دارد وجود برخی معایب و انحصار طلبی ها کار با آن را سخت میکند.

اما در نهایت میتوان یک جمله را به عنوان جمع بندی گفت:

برای کسی که بخواهد برنامه نویس پلتفرم اپل بشود، xcode اولین و بهترین راه ممکن است.
میلاد خط شب
میلاد خط شب
معتقدم هر آدمی میتواند در یک زمینه ای مفید و تاثیر گذار باشد و اصولا آدم "غیر مفید" نداریم. فقط کافی است به موقع و صحیح راهنمایی شود.

مجتبی قنبری

04 آذر 1403

سلام میشه با ایکس کد ورژن ایپد او اس رو هم دستکاری کرد یعنی ورژن ۱۶ رو ۱۸ نشون بده ؟

میلاد خط شب

سلام و درود دقیقا متوجه منظورتون نشدم یعنی چی یعنی میخواهید موقع ساخت اپ مینیمم ورژن ipadOS رو عوض کنید؟ اگر منظورتون این هست بله میشه میشه در غیر اینصورت توضیح بیشتر بدید که بتونم بصورت کامل راهنماییتون کنم 😀

زهرا

04 مهر 1403

برای برنامه نویسی ios و سوئیفت ایکس کد رو پیشنهاد میکنید؟

میلاد خط شب

بله قطعا! بهترین انتخاب ممکنه

محمدرضا

27 آذر 1402

کارتون خوبه اگه چشم نزنم اولین سایتی هستید که بصورت تخصصی دارید کار میکنید

میلاد خط شب

تشکر از شما

پاسخ دهید