Жарнаманы жабу

Жылдың басында Apple өкілдері олар мәлім етті, жаңа iOS 12 негізінен оңтайландыруға назар аударады және келесі жылға дейін іргелі жаңалықтарды күтуіміз керек. Бұл туралы дүйсенбі күнгі негізгі баяндамада iOS 12 туралы бөлімде айтылды. Иә, кейбір жаңалықтар шынымен iOS-тың алдағы итерациясында пайда болады, бірақ басты рөлді оңтайландыру ойнайды, бұл әсіресе ескі машиналар иелерін қуантады ( iOS 12 менің өміріме қалай жан бергені туралы Сіз осы демалыс күндері iPad Air 1-буын оқи аласыз). Кеше WWDC бағдарламасы аясында дәріс өтті, онда Apple жаңа жүйенің айтарлықтай жылдам жұмыс істеуі үшін не істегені егжей-тегжейлі түсіндірілді.

Егер сіз шынымен осы тақырыпқа қызығушылық танытсаңыз және iOS жүйесінің кейбір элементтері іс жүзінде қалай жұмыс істейтінін білгіңіз келсе, мен дәрістің жазбасын қарауды ұсынамын. Ол шамамен 40 минутты құрайды және Apple компаниясының ресми веб-сайтында атауымен қол жетімді 202-сессия: Cocoa Touch қолданбасындағы жаңалықтар. Конференцияның жазбасын көруге сағаттың төрттен үш бөлігін босқа кетіргіңіз келмесе, қысқарақ стенограмманы оқи аласыз. осындадегенмен, біршама техникалық. Қалғандарыңыз үшін төменде жеңілдетілген түйіндемені қолданып көремін.

iOS 12 тұсаукесерінен суреттерді қараңыз:

iOS 12 көмегімен Apple оңтайландыруға назар аударуды шешті, өйткені көптеген пайдаланушылар жөндеуге шағымданды (әсіресе iOS 11-ге байланысты). Теріс реакциялардың басым көпшілігі жүйенің және оның анимацияларының қандай да бір «баяулығы», «жабысу» және «біркелкі еместігімен» байланысты. Сондықтан Apple-дің бағдарламашылары ең негіздерін зерттеп, iOS ішіндегі бүкіл анимация жүйесін жеңді. Бұл талпыныс негізінен iOS 12-ні жұмыс істеуге мүмкіндік беретін үш негізгі түзетуден тұрды. Бағдарламашылар iOS 7 жүйесінен бері iOS жүйесінде болған кемшіліктерді аша алды.

1. Мәліметтерді дайындау

Бірінші өзгеріс - Cell Pre-Fetch API деп аталатын оңтайландыру, ол жүйеге қажет болғанға дейін деректерді дайындаудың бір түрімен айналысты. Кескіндер, анимациялар немесе басқа деректер болсын, жүйе осы API көмегімен жадтағы қажетті файлдарды олар пайдаланылған кезде қол жетімді болуы үшін алдын ала ойнатуы керек болды, осылайша процессор жүктемесінде секірулер болмайды, бұл жоғарыда аталған өтімділік мәселелері. Бұл алгоритмді мұқият тексеру кезінде белгілі болғандай, ол дұрыс жұмыс істемеді.

Кейбір жағдайларда ол деректерді алдын ала дайындаса, басқаларында ол дайын емес. Басқа жағдайларда, жүйе деректерді осы API кэшінде әлдеқашан дайындалғанына қарамастан жүктейді және кейде «қос жүктеу» түрі орын алды. Мұның бәрі анимациялар, кесу және жүйе жұмысындағы басқа сәйкессіздіктер кезінде FPS төмендеуіне әкелді.

2. Лезде өнімділік

Екінші өзгеріс - бұл процессор немесе графикалық процессор болсын, құрылғыдағы есептеу бірліктерінің қуатын басқаруды өзгерту. Жүйенің бұрынғы нұсқаларында процессорға белсенділік талаптарының жоғарылауын байқап, оның жұмыс жиілігін арттыру айтарлықтай ұзағырақ болды. Сонымен қатар, процессордың бұл жеделдету/баяулауы бірте-бірте орын алды, сондықтан көптеген жағдайларда жүйеге қандай да бір тапсырма үшін қуат қажет болды, бірақ ол бірден қол жетімді болмады және FPS анимацияларында қайтадан құлдырау болды және т.б. iOS 12, өйткені дәл осы жерде процессорлардың өнімділік қисығы айтарлықтай агрессивті түрде реттелді және жиіліктердің біртіндеп артуы/төмендеуі бірден байқалады. Осылайша, өнімділік қажет болған сәтте қол жетімді болуы керек.

3. Автоматты орналасуды жақсарту

Үшінші өзгеріс Apple iOS 8 жүйесінде енгізген интерфейске қатысты. Бұл Apple өзінің iPhone дисплейлерінің өлшемін ұлғайта бастаған кезде iOS жүйесіне енгізілген Автоматты орналасу құрылымы деп аталады. Жүйе деректер көрсетілген дисплейдің түрі мен өлшеміне қарамастан пайдаланушы интерфейсінің сыртқы түрі дұрыс екеніне көз жеткізді. Бұл әзірлеушілерге қолданбаларын оңтайландыруға көмектесетін балдақтың бір түрі (бірақ олар ғана емес, бұл құрылым iOS жүйесінің ажырамас бөлігі болып табылады және пайдаланушы интерфейсінің барлық бөліктерінің дұрыс көрсетілуін қамтамасыз етеді) бірнеше дисплей өлшемдері үшін. Сонымен қатар, бұл бүкіл жүйе негізінен автоматтандырылған. Егжей-тегжейлі тексеруден кейін оның жұмысы жүйелік ресурстарды талап ететіні белгілі болды және өнімділікке ең үлкен әсер iOS 11-де пайда болды. iOS 12-де жоғарыда аталған құрал айтарлықтай қайта дизайн мен оңтайландыруға ие болды, ал қазіргі түрінде оның жүйенің жұмысына әсері айтарлықтай аз, бұл басқа қолданбалар мен құралдардың қажеттіліктері үшін CPU/GPU-дағы ресурстарды айтарлықтай босатады.

Көріп отырғаныңыздай, Apple шынымен де оңтайландыру процестерін шыңынан қабылдады және бұл шын мәнінде соңғы өнімде көрінеді. Егер сізде өткен жылғы iPhone немесе iPad болса, тым көп өзгерістер күтпеңіз. Бірақ егер сізде екі, үш, төрт жастағы құрылғы болса, өзгеріс сөзсіз байқалады. Қазіргі уақытта iOS 12 бастапқы кезеңдерінде болса да, ол менің 1-ші буын iPad Air құрылғымдағы iOS 11 нұсқасының кез келген нұсқасынан әлдеқайда жақсы жұмыс істейді.

.