1. مهمان گرامی، جهت ارسال پست، دانلود و سایر امکانات ویژه کاربران عضو، ثبت نام کنید.
    بستن اطلاعیه

بررسي iOS و مهارت های برنامه نویسی لازم برای آن : بخش اول

شروع موضوع توسط Mohammad ‏14/11/10 در انجمن اخبار موبایل

  1. Founder

    تاریخ عضویت:
    ‏11/11/10
    ارسال ها:
    13,002
    تشکر شده:
    13,539
    امتیاز دستاورد:
    113
    جنسیت:
    مرد
    [​IMG]


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

    - آنچه در ادامه خواهید خواند:


    چون مطلب بلند است نگاهی کلی به آن می اندازیم و در آخر هم یک نتیجه گیری کلی خواهیم کرد.
    اجازه دهید، در همین ابتدا بگویم که سطح این مطلب از مقدماتی به بالا خواهد بود تا هر قشری از برنامه نویسان و یا کاربران عادی که خواستار کسب اطلاعات در این مورد هستند، بتوانند از آن استفاده کنند. در این مقاله قرار نیست زبان برنامه نویسی آی او اس را توضیح دهیم؛ بلکه به توضیح توانایی های برنامه نویسی برای آن می پردازیم.
    در بخش اول نگاهی می اندازیم به یک سری از آمار و ارقام در مورد آی او اس تا بیشتر با آن آشنا شوید. مروری هم بر تاریخچه این سیستم عامل خواهیم داشت و به بخش های اصلی آن و سبک کار در آی او اس هم خواهیم پرداخت و خواهیم دید که مولتی تسکینگ آی او اس به چه صورت خواهد بود . ضمن اینکه می توانید در آینده منتظر مقالات مشابه برای پلتفرم های دیگر هم باشید.

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


    عنوان توضيح کمپاني توسعه دهنده: اپل کامپیوتر برنامه نویسی شده در: C,C++,Objective-C
    از خانواده: سيستم عامل Mac OS X و شبه يونيکس ها! وضعيت: در حال استفاده تاريخ اولین انتشار: 29 ژوئن 2007
    آخرين نسخه پايدار منتشر شده: نسخه 4.1 برای آيفون و آيپاد تاچ در 8 سپتامبر 2010 منتشر شد. آخرين نسخه بتا منتشر شده تا تاریخ 26/10/2010: 4.2 Beta 3
    براي آیفون، آيپاد تاچ و آیپد در تاریخ 12 اکتبر 2010 منتشر شد. زبان مناسب براي برنامه نويسي: پشتيباني از چندين زبان پلتفرم های پشتيباني شده: دستگاه های iPhone , iPod Touch و iPad (پلتفرم ARM) نوع هسته: هسته هایبرید ( مبتني بر سيستم عامل داروين ) وب سایت رسمي: iOS Dev Center
    iOS چیست؟ چرا باید انتخابش کنم؟
    آی او اس، سیستم عامل شرکت اپل است که در اصل برای تلفن هوشمند، آیفون نوشته شده است که بعد از آن، برای آی پد – آیپاد تاچ و Apple TV نیز استفاده شد. مثل همیشه؛ اپل در این مورد هم اجازه نداده که سیستم عاملش برروی سخت افزار های شرکت های دیگر اجرا شود. پس شما iOS را فقط در وسایل یاد شده خواهید دید. توجه داشته باشید که تا تاریخ اول سپتامبر 2010، AppStore شامل بیش از 250000 اپلیکیشن بود که برای این سیستم عامل نوشته شده بودند و دانلود های کلی از فروشگاه نرم افزار هم به شش و نیم میلیارد رسید! با این حساب، اگر چه iOS فقط برای دستگاه های اپل، قابل اجرا است. اما شما به هیچ عنوان با یک سیستم عامل منزوی و حاشیه ای رو به رو نیستید بلکه iOS بسیار مطرح، پر طرفدار و قدرتمند است.

    مروری بر تاریخچه iOS


    شاید تا به این جا، مطلب شبیه بررسی سیستم عامل iOS باشد اما باید بدانید که برای شما برنامه نویسان هم ضروری است که هر موردی که در اینجا توضیح داده شده را بدانید. همانطور که برنامه نویس ویندوز، تاریخچه آن را می داند!

    این سیستم عامل در 9 ژانویه سال 2007، همراه آیفون رونمایی شد و در 29ژوئن همان سال عرضه گردید. در ابتدا؛ بخش بازاریابی اپل برای این سیستم عامل نامی منحصر به فرد اتخاذ نکرده بود و اعلام کرد که آیفون از سیستم عامل X (OS X) استفاده می کند! هر چند دروغ هم نبود چون iOS از همان سیستم عامل مشتق شده است.


    [​IMG]



    این سیستم عامل در ابتدا نمی توانست از اپلیکیشن های شخص ثالث استفاده کند. استیوجابز ایده داده بود که نرم افزار های شخص ثالث می توانند در قالب یک نرم افزار تحت وب و مطابق با استاندارد های آیفون ساخته شوند تا آیفون آن ها را مانند یک نرم افزار اجرا نماید. اما در 17 اکتبر سال 2007، اپل اعلام کرد که در حال ساخت یک کیت توسعه نرم افزاری می باشد. یعنی همان SDK: Software Development Kit! به برنامه نویسان هم مژده داده شده بود که این کیت در ماه فوریه همان سال، در دستان آنها خواهد بود.

    اما نام گزاری این سیستم عامل از 6 مارس سال 2008، آغاز شد. بله، نسخه آزمایشی بعدی نام iPhone OS را به همراه داشت. البته باید اضافه کرد که آیفون در طول تعطیلات سال 2007 توانست بیش از یک میلیون دستگاه آیفون بفروشد. این سیستم عامل در همان زمان هم طرفداران زیادی پیدا کرده بود اما هنوز هم نبود بعضی امکانات، اکثر افراد را رنج می داد. البته عده ای را هم زجر می داد!

    فروش سریع آیفون سبب شد تا اپل به توسعه بیشتر SDK علاقه مند شود. اپل نسل های مختلفی از آیپاد تاچ را نیز عرضه کرد که از سیستم عامل iPhone OS بهره می بردند و به جز قابلیت تلفن زدن، تقریبا از تمام امکانات آیفون بهره مند بودند. این پیشرفت ها ادامه داشت تا در 27 ژانویه 2010، اپل اعلام کرد که محصول جدیدش یعنی iPad، دارای یک صفحه نمایش بزرگ تر از آیفون و آیپاد تاچ است و این تبلت برای وبگردی، مصارف چند رسانه ای و خواندن کتاب های الکترونیکی طراحی شده است. با این همه این که آی پد هم مانند آیفون ها و آیپاد تاچ های قبلی از نبود مولتی تسکینگ رنج می برد؛ صدای خیلی ها را درآورد.


    [​IMG]



    نسخه چهارم iOS در آپریل سال 2010 معرفی شد. استفاده از قابلیت چند وظیفه گی (مولتی تسکینگ)؛ ایمیل های گروهی و چندین امکانات تجاری-اداری دیگر؛ از ویژگی هایی بودند که به نسخه جدید iOS اضافه شده بودند. طولی نکشید که در ژوئن 2010، اپل اعلام کرد که iPhone OS تغییر نام یافته است. اپل از شرکت Cisco اجازه گرفت که از نام تجاری iOS استفاده کند.(IOS نام یک فناوری از شرکت Cisco است) جالب است که بدانید قبل از این هم اپل بر سر استفاده از نام iPhone با این کمپانی اختلافاتی داشت!

    در همان موقع به نظر می رسید که نقاط ضعفی که پاشنه آشیل آی او اس بودند، رفع شده اند. مولتی تسکینگ اضافه شده بود و امکانات بهتر و جدید تر دیگری هم در این نسخه وجود داشت... - باید گفت که در آی پد واقعا همین طور بود - اما در آیفون اوضاع فرق می کرد:

    چند روز پس از عرضه آیفون، جنجال های زیادی در رسانه ها به وجود آمد که این گوشی با لمس قسمت خاصی از بدنه اش، دچار افت شدید آنتن می شود. این جنجال ها ادامه داشت تا استیو جابز کنفرانس خبری ویژه ای را برای آیفون ترتیب داد. او عنوان کرد که آی او اس در اندازه گیری سطح آنتن دچار مشکل است و به همین دلیل، اپل نسخه 4.0.1 آن را منتشر ساخت.

    در 11 آگوست امسال، باز هم آپدیت آی او اس 4.0.2 برای آیفون و آیپاد تاچ و iOS 3.2.2 برای آیپد منتشر شد تا برخی اشکالات امنیتی برطرف شود.

    با این وجود باز هم کاربران، گزارش هایی از برخی اشکلات می دادند. اپل هم با عرضه iOS 4.1 در 8 سپتامبر، این اشکالات را رفع کرد. این نسخه عمر باتری را افزایش می دهد و قابلیت جدیدی به نام Game Center یا "مرکز بازی"، به آن اضافه شده است. مرکز بازی به گیمر ها اجازه ی بازی کردن چند نفره، آپلود امتیازات بالا و بازکردن Achievements ها را می دهد. (البته این قابلیت در آیفون 3G هم وجود داشت. اما به دلیل عملکرد کند و نامناسب، از آن حذف شد!)
    iOS 4 در 21 ژوئن به بازار عرضه شد. یعنی سه روز قبل از عرضه iPhone 4 به بازار. علت هم این بود که از شلوغ شدن بیش از حد سرور های اپل جلوگیری شود! اپل تا قبل از این نسخه، 9 دلار و 99 سنت برای آپگرید آیپاد تاچ دریافت می کرد اما iOS چهار؛ اولین نسخه ای از iOS بود که به طور رایگان روی آیپاد تاچ نصب می شد. iOS 4.0.1، که در 15 جولای امسال عرضه شده بود، مشکل آنتن دهی را رفع کرده بود. حالا نوبت آن رسید که اپل از عرضه نسخه 3.2.1 آی او اس برای آیپد خبر دهد. این نسخه بهبود هایی در اتصال به شبکه های بی سیم، پخش ویدئو و کپی پیست اتچمنت های PDF، به همراه داشت. البته به همراه چند آپدیت دیگر.


    [​IMG]



    امکان دیگری که در نسخه جدید وجود دارد، اضافه شدن امکان تصویر برداری HDR است. البته این امکان فقط در iPhone 4 فعال می باشد. همزمان، با معرفی آیتیونز 10، امکان جدیدی هم روی iOS قرار گرفت که اپل آن را پینگ نام نهاد! پینگ حالا یک شبکه اجتماعی است که در آن می توانید در دنیای موسیقی به گشت و گذار بپردازید. پینگ امکان چندین کار مختلف دیگر هم به شما میدهد. کار هایی که به پیدا کردن موسیقی های بهتر و شناخت سلیقه ی موسیقیایی دیگران کمک می کند.


    [​IMG]



    iOS 4.2، اولین ساپورت سری چهارم آی او اس را برای آیپد به ارمغان آورد. علاوه بر این، ویژگی AirPlay در این نسخه به کاربران امکان می داد که از طریق: آیفون – آی پد – آیپاد تاچ یا هر iOS دیگری، به کامپیوتر آهنگ استریم کنند و یا بالعکس! این نسخه تغییرات کوچکی در نرم افزار یوتیوب را هم به همراه داشت. در آیپد هم تغییرات کوچک دیگری رخ داد که چندان مهم نبودند. ورژن فعلی iOS، نسخه 4.2 Beta 3 است که در 13 اکتبر 2010 عرضه شده و شما هم حالا باید کاملا بدانید که آی او اس از کجا آمده ، آمدنش بهر چه بوده و به کجا می رود! حالا وقت آن است که از تاریخچه بیرون بیاییم و به موضوعات اصلی که در این سیستم عامل وجود دارند برسیم.
    - سبک کار در iOS:

    یکی از مهمترین ویژگی های هر سیستم عاملی، رابط کاربری آن است. در این مورد می توانیم آی او اس را اینگونه توصیف کنیم:

    تا به حال چیزی در مورد Direct Manipulation شنیده بودید؟ البته در لغت به معنی "دستکاری مستقیم" است. اما اگر برای شما مفهومی ندارد باید نگاهی به بند های زیر بیاندازید تا متوجه اصول ساده این سبک بشوید.

    مهمترین هدف این سبک از رابط کاربری، ایجاد تعامل بین انسان و کامپیوتر است. ویژگی های زیر معمولا در همه ی نرم افزار ها و سیستم عامل های این سبک رعایت می شود:

    در دسترس قرار دادن میان بر آیتم های پرطرفدار به صورت خودکار – سرعت بالا هنگام کار – برگشت پذیری– افزایش کارایی با عادت کاربر و فید بک به عملکرد کاربران! آی او اس تمام این کار ها را با عملکرد لمسی به کاربران عرضه می کند.

    احتمالا تا اين لحظه خودتان تا آخر موضوع را متوجه شده اید. پس بیش از این بر سر تعاریف جزئی؛ شما را معطل نخواهیم کرد. اما برای تبدیل شدن به یک برنامه نویس خوب باید با پایه و اساس این سیستم عامل آشنا شوید و سبک آن را بشناسید تا بتوانید برنامه ای بهتر برای کاربران خود تولید نمایید. واقعیت این است که کاربر به این که یک برنامه چند الگوریتم دارد و چقدر روی آن زحمت کشیده شده، توجهی ندارد. کاربر به فکر استفاده خود و راحتی کار است و البته زیبایی! این مساله ای است که برنامه نویس باید در نظر بگیرد تا موفق شوند.

    اصلی ترین کنترل هایی که در اینترفیس آی او اس استفاده شده اند شامل : نوار های لغزنده (Sliders) - سویچ ها (Switches) و دکمه ها (Buttons) می باشد. سعی شده که به عملکرد کاربران عکس العملی سریع داده شود. این امر، کار با اینترفیس را بسیار روان می کند. آی او اس در جنبه های تعاملی خود هم توجه زیادی به فناوری چند لمسی داشته است. تعامل با آی او اس از طریق امور زیر محیا می شود.


    [​IMG]

    حرکاتی مانند: کشیدن – فاصله دادن بین دو انگشت (برای Zoom) – کم کردن فاصله انگشتان (برای کوچک کردن) معمولا در آی او اس، استفاده بسیاری دارند. اما می دانیم که آیفون از یک شتاب سنج داخلی بهره می برد؛ بعضی برنامه ها هم از آن استفاده می کنند تا بتوانند حرکاتی مثل تکان دادن را تشخیص دهند. یکی از پر استفاده ترین کار های شتاب سنج، تکان دادن گوشی برای Undo کردن دستورات است یا چرخاندن صفحه نمایش، به عمودی و افقی، بسته به وضعیتی که گوشی در آن قرار دارد.

    - قابلیت ها:

    برای ادامه کار لازم است که قابلیت ها و بخش های iOS را بشناسیم تا با آن احساس بیگانگی نکنیم:

    - صفحه خانه (Home Screen)

    از همان ابتدا که آی او اس بالا بیاید، نرم افزار های مختلفی مسئول اداره بخش های آن می شوند. صفحه خانگی این سیستم عامل هم مستثنی نیست و نرم افزاری به نام SpringBoard آن را مدیریت می کند. این صفحه شامل آیکون نرم افزار هاست و البته مانند مک او اس، یک داک (Dock) هم در پایین این صفحه قرار دارد. داک به معنی لنگرگاه است و دراصل محلی است که می توانید، نرم افزار های پرکاربرد خود را در آنجا قرار دهید تا سریع تر به آنها دسترسی داشته باشید.

    این صفحه شامل یک نوار وضعیت (Status bar) در قسمت بالایی است که اطلاعاتی را از قبیل : ساعت، سطح باتری ، قوت سیگنال آنتن و ... را به کاربر نمایش می دهد.

    [​IMG]

    -فولدر ها:
    در iOS4، سیستم فولدر سازی ساده و راحتي به کار گرفته شد. مي توانید روی آيکون اپليکيشن ها کليک کنید تا به لرزه در بيايند و بعد از آن با Drag کردن آنها به روي یک ديگر؛ فولدر بسازيد. بعد از آن می توانيد هر مقدار اپلیکیشنی را که بخواهيد، با همين روش به فولدر ها اضافه کنيد. (البته هر فولدر حداکثر 12 اپلیکیشن را شامل خواهد شد). نام گذاري پوشه ها نیز به طور خودکار و با توجه به نوع اپليکيشن انجام خواهد شد. با این وجود ممکن است پوشه هاي زیادی با نام هاي یکسان داشته باشید.

    - اپلیکیشن هاي پیشفرض

    برای اين که بتوانيد صفحه خانگي را بهتر بشناسيد، ليستي از اپليکيشن های پيشفرض در آن را تهيه کرده و در جدول زیر قرار داديم. قسمت ورژن های شامل، نشان مي دهد که اپلیکیشن درچه نسخه هایی از iOS وجود دارد. جدول زیر، اپليکيشن های روي Status Bar را نشان مي دهد :

    نام: کاربرد: ورژن های شامل Phone
    تلفن زدن، تماس ويدئويي با استفاده از FaceTime ورژن 1+، (براي فیس تايم : 4+) Mail
    ايميل و اعمال مرتبط با آن! ورژن 1+ Safari
    مرورگر وب ورژن 1+ iPod
    مديا پلیر پورتابل ورژن 1+

    و اين هم ليست اپلیکیشن هايي است که آیکون آنها را به طور پيشفرض روی صفحه خانگی مشاهده خواهید کرد:

    نام: کاربرد: ورژن های شامل Messages
    پيام متن و MMS ورژن 1+ (MMS: ورژن 3+) Calendar
    تقويم ورژن 1+ Photos
    نمايش عکس و فیلم ورژن 1+ (نمايش ویدئو: ورژن 2+) Camera
    دوربين عکاسی و فیلم برداري ورژن 1+ (فيلم برداري و اتوفوکوس،03+ _ کیفيت اچ دی، 4+ _ تکنولوژي اچ دی آر، 4.1+) YouTube
    استريم ویدئو از یوتیوب ورژن 1+ Stocks
    اطلاعات مالی از: Yahoo! Finance ورژن 1+ Maps
    Google Maps
    ورژن 1+ (A-GPS: ورژن 2+ _ قطب نما ديجيتالي: ورژن 3+) Weather
    Yahoo!Weather
    ورژن 1+ Voice Memos
    ضبط صدا ورژن 3+ Notes
    برنامه ای ساده برای يادداشت برداري ورژن 1+ Clock
    ساعت جهاني، کرنومتر، آلارم، تايمر ورژن 1+ Calculator
    ماشين حساب (شامل ورژن پيشرفته) ورژن 1+ (ماشين حساب پيشرفته: 2+) Settings
    تنظيمات ورژن1+ iTunes
    دسترسي به امکانات مختلف iTunes ورژن 1.1+ App Store
    خريدن اپلیکیشن هاي iOS ورژن 2+ Compass
    قطب نما ورژن 3+ Contacts
    دفترچه تلفن و آدرس ورژن 1+ Nike + iPod
    اندازه گیری سرعت و مسافت طي شده و قابليت اتصال به سنسور مخصوص Nike + iPod ورژن 2.2.1+ (آيپاد های نسل دوم به بعد و آیفون 3gs به بعد) Game Center
    به کاربر اجازه بازي کردن چند نفره را با ديگر کاربران مي دهد و امکاناتي نظیر Achievements و رکورد ها هم در آن وجود دارد. ورژن 4.1+ (آيپاد تاچ هاي نسل دوم به بعد و آيفون 3gs به بعد)


    در نسخه چهارم iOS به بعد، تمام ابزار هایی نظير: ضبط صوت ، ساعت و ماشين حساب؛ درون پوشه اي به نام Utilities قرار دارند. بيشتر نرم افزار های ياد شده به طور اشتراکی با هم کار می کنند. این ويژگي بسيار به راحتي کار کاربر، کمک خواهد کرد. براي مثال مي توانید شماره تلفن فردي را از درون يک ایمیل انتخاب کرده و در همان جا، او را به عنوان مخاطب ذخیره کنيد یا با او تماس بگیرید. اگر با آی او اس کار کرده باشيد، حتما متوجه خواهيد شد که اشتراکی بودن کار نرم افزار هاي پیش فرض چقدر به راحتي کار شما کمک خواهد کرد.

    آيپاد تاچ هم همان اپلیکیشن هاي آیفون را ارائه مي دهد؛ البته اگر، Phone،Messages و Compass را استثنا بدانیم! همچنين در آيفون، اپلیکیشن آيپاد براي پخش موزيک است اما اين نرم افزار در آيپادتاچ به دو بخش موزيک ها و ویدئو ها تقسيم می شود! حالا اگر بخواهيم به پايين صفحه نمايش هم نگاه بیاندازیم، مي بینیم که داک هنوز هم وجود دارد و به طور پیشفرض براي کار هاي اصلی آيپاد، میانبر هایی را دربر دارد. موزیک ، ویدئو ، سافاري و AppStore، همان ميانبر هاي پیشفرض هستند. افرادي که از چند سال پیش تا کنون آیپاد تاچ را مي شناختند، حتما می دانند که اين محصول از دوربین بي بهره بود تا اين که در نسل چهارم خود، از دوربين بهره مند شد و همزمان قابلیت FaceTime را هم به دست آورد. همان موقع بود که ميانبر های داک (Dock) به Music , Mail , Safari, Video تغيير کردند.

    حالا می خواهيم الف را از پاد حذف کنیم! آی پد هم با همان اپليکيشن های آيپاد تاچ وارد بازار شد البته حالا که الف حذف شد، اپلیکیشن هاي Stocks, Weather , Clock , calculator و Nike + iPod نیز از لیست برنامه های پيشفرض حذف مي شوند! در آيپد اپليکيشن های جداگانه ای براي موسیقي و فيلم در نظر گرفته شد. اما باز هم به آن نام iPod را داده بودند! تقريبا تمام اپليکيشن های پيشفرض، برای آيپد بازنويسي شده بودند تا بتوانند از مزیت صفحه بزرگتر آن استفاده کنند.داک پيش فرض آیپد هم روی Safari , Mail, Photos و iPod تنظیم شده بود.

    - مولتي تسکینگ:

    قبل از iOS 4 مولتي تسکینگ تنها محدود به گزيده ای اپليکيشن هایی مي شد که اپل بر روي دستگاه هايش تعبيه کرده بود. دليل اپل؛ نگرانی از این بود که اجراي همزمان چند برنامه شخص ثالث، باتری را خیلی زود تخلیه نمايد. اما وقتي iOS 4 عرضه شد، مولتي تسکینگ برای اپليکيشن های شخص ثالث هم در دسترس قرار گرفت.

    نرم افزار هاي صوتی با کمک این API مي توانند پخش کردن موزیک را در بک گراند هم انجام دهند
    API قسمتي از سيستم عامل است که برنامه ها از آنها براي اجرای خود کمک مي گیرند. API ها ممکن است براي مقاصد مختلفي استفاده شوند از جمله : وب - بازي های کامپيوتري - گرافيک- صدا و چندین مورد دیگر. مولتی تسکينگ آي او اس از API هاي پس زمینه ي زیر پشتیبانی مي کند. پس برنامه هایی که از اي پی آي های زير براي اجرا استفاده می کنند قابليت استفاده از مولتي تسکینگ را هم دارا می باشند. 1- Background audio: ​
    [​IMG]



    2- Voice Over IP (VoIP) : با اين ای پي آی، تماس هاي اینترنتی هم به راحتي در پس زمينه انجام خواهند شد. پس شما مي توانید با انواع و اقسام نرم افزار ها، تماس اينترنتي بر قرار نماييد و از مولتی تسکينگ هم استفاده کنيد.


    این یکی هم برای اپليکيشن های اينترنتي بسیار عالي خواهد بود. این اپليکيشن ها می توانند در پس زمینه فعاليت کنند و کاربر را از وقایع جدید مثلا یک مطلب جدید در نارنجی مطلع کنند.
    3 - Push notifications: ​


    [​IMG]

    4- Background location: اپليکيشن ها و نرم افزار های ناوبري می توانند در پس زمینه اجرا شوند و در حالی که کاربر مثلا به موسيقي گوش مي دهد، به راهيابي او کمک کنند.


    [​IMG]



    5- Local Notifications: اين هم شبيه مورد سوم است. منتها برای نرم افزار هاي غیر اينترنتي... آلارم ها و يادداشت ها و سایر کار هایي که به سازمان دهی کاربر مربوط می شود؛ می توانند از اين امکان استفاده نمايند.


    [​IMG]



    6- Task finihsing: اگر يک برنامه در اواسط انجام یک عمليات بود و کاربر از آن خارج شد، اين ویژگي برنامه را در پس زمينه باز نگه می دارد تا عمليات به اتمام برسد.



    با اين ویژگي کاربر مي تواند اپليکيشن را ترک کند و از مولتی تسکينگ استفاده کرده و وقتی کارش تمام شد، مجددا به برنامه مورد نظر بازگردد و از همان نقطه ای که در آن قرار داشت، کارش را ادامه دهد.
    7- Fast app switching:

    [​IMG]


    مساله مولتی تسکينگ شاید به نظر بعضي خنده دار به نظر برسد اما بسيار مهم است. بعضی افراد مي گویند: سیستم عامل هایی هم چون سیمبيان که نمي توان آن را يک سیستم عامل سطح بالا برای تلفن های هوشمند دانست هم از مدت ها قبل قادر به انجام اين کار ها در مولتي تسکینگ بودند و اپل عملا در حوزه مولتي تسکینگ؛ در حال درجا زدن است و حرف تازه ای براي گفتن ندارد.

    اما بر خلاف حرف این عده، موافقان اپل می گويند: مولتی تسکينگ در آی او اس به نحو فوق العاده اي انجام مي گیرد به طوری که ما به هيچ عنوان شاهد کندی کار این دستگاه نيستيم و همه چیز به خوبی انجام می شود. علاوه بر اين مصرف باتري هم در طي مولتی تسکینگ چندان افزایش نمي یابد. از این رو می توان گفت iOS، تجربه معقولی را در مولتي تسکینگ به کاربران خود می دهد.

    به هر حال در اين جا قرار نیست خود من هم نظرم را اعلام کنم، چون در آن صورت، اين مطلب بي طرفی خود را از دست مي دهد. اما معتقدم که مولتي تسکینگ يکي از مهم ترین اجزا هر سيستم عاملی است و مخصوصا این موضوع در آي او اس، مساله ای است که جنجال های زيادي را بر پا کرده پس کمي علمی تر به آن نگاه مي کنیم و قضاوت را به خودتان می سپاريم.

    اولا استفاده از چند API جداگانه باعث شده که نرم افزار ها با اهداف مختلف، هر یک نوع خاصی از مولتي تسکینگ را تجربه کنند. پس عملا موضوع به نحوی است که در مثال زير توضیح داده شده:

    اگر در حال پخش موسيقي یا در حال استفاده از VoIP باشيد و همزمان کار ديگري انجام دهيد، بدیهی است که پردازش گر بايد هر دو را پردازش کند. در مورد GPS هم، همین اوضاع حاکم است. اما استفاده از API های ديگر، تا حدودي هوشمندانه است. مثلا Local Notification و Push Notification؛ پردازنده را در گير نمی کنند. مثلا اگر براي فیس بوک شما يک پیام جديد بیاید؛ نيازي نیست اپليکيشن فیس بوک دائما در حال کار باشد تا آن را مشاهده کنيد. بلکه فقط وقتی پيام جدید رسيد، در همان حال که برنامه بسته است، شما از آن آگاه خواهید شد.

    اگر تمام موارد بالا را با پردازنده 1 گیگاهرتزی و رم 2x256 مگابايتي iPhone 4 جمع ببنديد؛ متوجه مي شوید که مولتي تسکینگ از نظر علمي هم در آی او اس؛ روان خواهد بود و اگر از مواردي باشد که پردازش لحظه به لحظه را طلب نمي کنند، روي باتری هم اثر چندانی نمي گذارد.
    Taskfinishing هم کمک می کند که برنامه تا ابد باز نباشد و اگر هنگام انجام يک عملیات آن را ترک کرديد؛ عمليات را تا پایان به انجام برساند و بسته شود. Fast app switching نیز وضعيتي مشابه دارد. براي برنامه هايي که کار پردازشی نمي کنند، کاربرد این اي پی آي؛ بیشتر خواهد بود. اين API حالتي را پیاده می کند که برنامه عملا از پردازنده استفاده نمي کند و فقط در رم قرار دارد تا هنگام نياز لود شود. البته اگر حجم برنامه سنگین باشد، دیگر در رم هم نیست! بلکه وضعيت آن موقتا در قسمتي از حافظه اصلی ذخیره مي شود تا موقع برگشت؛ از همان جایی که در آن قرار داشته اید لود شود.

    - پایان بخش اول:

    همه ی آن چه را که بايد در باره بخش اول می خوانديد؛ خوانديد! پس بعد از اين نوبت به بخش دوم این مقاله می رسد که به زودي منتشر خواهد شد. تا اين جا تايخچه آی او اس را به طور کامل دانستید و با سبک کار با آی او اس آشنا شديد.حالا هم به عنوان یک کاربر بهتر با این پلتفرم آشنا شدید و هم به عنوان یک برنامه نويس مي دانید که چه بايد بکنید و آی او اس چه ویژگی هايي را براي موارد مهمی همچون مولتي تسکینگ در اختیار شما قرار خواهد داد.


    منبع: نارنجی