اجلاس اپل 2016؛ بهبود عملکرد برنامهها در iOS 10
به گزارش واحد فناوری اطلاعات سایبربان؛ شرکت اپل در زمان برگزاری اجلاس توسعهدهندگان 2016 (WWDC 2016)، سیستمعامل iOS 10 رابه همراه ویژگیهای جدید آن مانند آی. مسیج (iMessage) معرفی و اعلام کرد برنامهها در این سیستمعامل بسیار سریعتر و روانتر اجرا خواهند شد.
در زمان برگزاری نشست اپل در این اجلاس از نحوهی عملکرد برنامهها و سریعتر شدن آنها توضیح داده شد. اپل توضیح داد بهجای بارگذاری دادهها، در زمانی که برای مشاهده محتویات یک برنامه، صفحه را به سمت بالا و پایین حرکت داده میشود، رابطهای برنامهنویسی نرمافزاری (API) اپل میتواند این کار را کمی زودتر انجام دهد. بهعنوان مثال زمانی که کاربر در حال بررسی یک وبگاه با محتویات و سلولهای اطلاعاتی زیادی است، صفحه را به سمت پایین حرکت میدهد؛ اما اگر این کار را سریع انجام دهد اصطلاحاً «کاهش فریم» (dropping frame) رخ داده و محتویات به طور کامل بارگذاری نشده یا به درستی مشاهده نمیشوند. ممکن است این موضوع باعث شود کاربر اطلاعات مهمی را از دست داده و مشاهده نکند.
اپل علت مشکل به وجود آمده در بالا را بارگذاری محتویات صفحه درست چند میلیثانیه قبل از رسیدن کاربر به آن میداند. اپل برای رفع این مشکل از روشی استفاده میکند که زمان و سرعت پیمایش صفحه توسط کاربر را تشخیص میدهد و دیگر زمان بارگذاری و سرعت پیمایش کاربر مهم نخواهد بود. اپل معتقد است به این شیوه میتواند پیمایش 60 تصویر در ثانیه را برای کاربر فراهم کند و آن را «واکشی اولیه دادهها» (prefetching data) نامیده است.
دادهها
شرکت اپل روش دسترسی کاربران به دادهها را نیز تغییر داده است. رابطهای برنامهنویسی جدید مانند گذشته امکان دسترسی به دادههای ناهمگام را فراهم میکنند؛ اما این عمل سریعتر خواهد بود. با وجود این که اپل آنها را برای کار با کر دیتا1 (Core Data) طراحی کرده است؛ اما با توجه به شیوهی استفاده توسعهدهندگان، عملکرد خود را به نمایش میگذارد.
پایگاه دادهای مانند رییلم2 (Realm)، بسیار سریعتر و بهتر از کر دیتا و اِس. کیو. اِل لایت (SQLite) عمل میکنند. رابطهای جدید دادهها را در پسزمینه بارگذاری خواهند کرد؛ بنابراین رشتههای پردازشی اصلی اشغال نخواهند شد. آنها همچنین بر اساس عملکرد پیمایش کاربر هماهنگ شده و میتوانند خود را برای بارگذاری سلولهای مختلف آماده کنند.
اطلاعات بیشتر، مشکلات کمتر
بعضی از برنامهها دارای چندین ستون مختلف از دادهها هستند. شرکت اپل در حال ایجاد تغییراتی مهمی است تا بتواند این سلولها را نیز بهخوبی بارگذاری کند.
در حال حاضر، برنامهها تمام سطرهای از داده را به یکباره بارگذاری میکند. این موضوع درست مانند برنامههای تکستونی بارگذاری سلولها را در زمان پیمایش سریع با مشکل مواجه میکند .برنامههایی که دارای چندین ستون از دادهها هستند، آنها را با شروع از بالا و از چپ به راست، شروع به بارگذاری میکنند. این موضوع باعث میشود بدون دخالت توسعهدهندگان، برنامههایی با ساختار پیچیده مانند برنامههای ساده عمل کنند. اگر کاربر برنامهای دارد که محتوا را در صفحه یا جدول نمایش میدهد، باز هم مشکلی وجود ندارد. رابطهای مرتبسازی جدید برنامهنویسی اپل این نوع از برنامهها را نیز پشتیبانی کرده و زمانی که کاربر شروع به پیمایش میکند سرعت بارگذاری دادهها کاهش پیدا نمیکند.
همهی تغییرات و رابطهای ذکر شده در بالا که فعالیتها در پسزمینه کنترل میکنند، کار توسعهدهندگان را سادهتر کرده و اجرای برنامهها را در iOS 10 سادهتر و سریعتر کرده است. همچنین این موضوع باعث رضایت خاطر کاربران خواهد شد؛ زیرا سرعت اجرای برنامهها و کار با آنها افزایش پیدا خواهد کرد.
_____________________
1- کر دیتا یک نمودار اشیا (Object graph) و چارچوب تداوم (Persistence framework) (میانافزاری است که امکان ذخیرهسازی خودکار دادههای یک برنامه را در پایگاه داده، بخصوص پایگاه دادهی رابطهای فراهم میکند. ) است که توسط اپل برای macOS و iOS ایجاد شد. دادهها در آن میتوانند توسط اشیا سطح بالا استفاده شده و روابط بین آنها نمایش داده شود.
2- رییلم اولین پایگاه دادهای است که از ابتدا برای استفاده توسط تلفنهای همراه طراحی شد و سریع و ساده است.