Փակել գովազդը

2011 թվականին WWDC-ում իր վերջին ելույթի ժամանակ Սթիվ Ջոբսը ներկայացրեց մի ծառայություն, որը դեռ սարսափեցնում է շատ մշակողների: Դա ոչ այլ ոք է, քան iCloud-ը՝ անհանգիստ MobileMe-ի բարեհաջող ժառանգորդը: Այնուամենայնիվ, նույնիսկ iCloud-ը առանց սխալների չէ: Իսկ մշակողները խռովություն են անում…

Սթիվ Ջոբսն առաջին անգամ ցուցադրեց iCloud-ը 2011 թվականի հունիսին, ծառայությունը գործարկվեց չորս ամիս անց և այժմ գործում է մոտ մեկուկես տարի: Արտաքուստ՝ համեմատաբար սահուն ծառայություն, որը, լեգենդար հեռատեսի խոսքերով, «ուղղակի աշխատում է» (կամ գոնե պետք է), բայց ներսում՝ չզսպված մեխանիզմ, որը հաճախ անում է այն, ինչ ուզում է, և մշակողները արդյունավետ զենք չունեն դրա դեմ։ այն.

«Ամեն ինչ տեղի է ունենում ավտոմատ կերպով, և շատ հեշտ է միացնել ձեր հավելվածները iCloud պահեստավորման համակարգին»: Ջոբսն այն ժամանակ ասաց. Երբ մշակողները հիմա հիշում են նրա խոսքերը, նրանք, հավանաբար, պետք է խզվեն: «iCloud-ը մեզ մոտ պարզապես չաշխատեց: Մենք իսկապես շատ ժամանակ ծախսեցինք դրա վրա, բայց iCloud-ի և Core Data-ի համաժամացման հետ կապված խնդիրներ կային, որոնք մենք չկարողացանք լուծել»: նա խոստովանել է Black Pixel ստուդիայի ղեկավարը, որը պատասխանատու է, օրինակ, հայտնի RSS ընթերցողի NetNewsWire-ի համար։ Նրա համար iCloud-ը պետք է լիներ համաժամացման իդեալական լուծում, հատկապես այն ժամանակ, երբ Google-ը պատրաստվում է փակել իր Google Reader-ը, սակայն Apple ծառայության վրա խաղադրույքը չստացվեց:

Ոչինչ չի ստացվում

Զարմանալի է, որ ծառայությունը, որն ունի ավելի քան 250 միլիոն օգտատեր և, հետևաբար, իր տեսակի մեջ ամենամեծերից մեկն է աշխարհում, նման խնդիրներ ունի: Խնդրին հպանցիկ հայացք նետելով՝ կարելի է մատնացույց անել ծրագրավորողների վրա, բայց նրանք այս պահին անմեղ են այս հարցում: iCloud-ը փորձում է դրանցից շատերը կիրառել իր հավելվածներում, սակայն նրանց փորձերը հաճախ անհաջողությամբ են ավարտվում։ Քանի որ iCloud-ը լուրջ խնդիրներ ունի համաժամացման հետ:

[do action=”quote”]Ես նույնիսկ չեմ կարող հաշվել բոլոր այն ծրագրավորողներին, ովքեր խնդիրներ են ունեցել և ի վերջո հանձնվել են։[/do]

«Ես մի քանի անգամ վերագրեցի իմ iCloud կոդը՝ հուսալով գտնել աշխատանքային լուծում»: նա գրել է մշակող Մայքլ Գոբել. Այնուամենայնիվ, նա լուծում չի գտել, և, հետևաբար, դեռ չի կարող շուկայավարել իր հավելվածները, ավելի ճիշտ՝ App Store-ը։ «Ես նույնիսկ չեմ կարող հաշվել բոլոր ծրագրավորողներին և ընկերություններին, որոնք բախվեցին նույն խնդիրների հետ, որոնք ես հանդիպեցի և ի վերջո հրաժարվեցին: Հարյուր հազարավոր օգտատերերի տվյալներ կորցնելուց հետո նրանք պարզապես ընդհանրապես լքեցին iCloud-ը»:

Apple-ի ամենամեծ խնդիրը iCloud-ի հետ կապված տվյալների բազայի համաժամացումն է (Core Data): Տվյալների մյուս երկու տեսակները, որոնք կարող են համաժամացվել Apple-ի ամպի միջոցով՝ կարգավորումները և ֆայլերը, աշխատում են առանց որևէ խնդիրների սահմաններում: Այնուամենայնիվ, Core Data-ն իրեն լիովին անկանխատեսելի է պահում: Դա բարձր մակարդակի շրջանակ է, որը թույլ է տալիս համաժամեցնել բազմաթիվ տվյալների բազաներ սարքերում: «iCloud-ը խոստացել է լուծել տվյալների բազայի համաժամացման բոլոր խնդիրները Core Data աջակցությամբ, բայց դա պարզապես չի աշխատում»: ասել է հայտնի ծրագրավորողներից մեկը, ով չի ցանկացել հրապարակել իր անունը՝ Apple-ի հետ լավ հարաբերություններ պահպանելու համար։

Ընդ որում, Apple-ը լիովին անտեսում է այս խնդիրները, iCloud-ը շարունակում է գովազդել որպես պարզ լուծում, իսկ օգտատերերը դա պահանջում են մշակողներից։ Բայց չնայած մշակողի ջանքերին՝ օգտատերերի տվյալները անվերահսկելիորեն անհետանում են, և սարքերը դադարում են համաժամանակացնել: «Այս խնդիրների լուծումը հաճախ պահանջում է ժամեր, և ոմանք կարող են ընդմիշտ կոտրել ձեր հաշիվները»: մեկ այլ առաջատար ծրագրավորող հենվում է Apple-ին և ավելացնում. «Բացի այդ, AppleCare-ը չի կարողանում լուծել այս խնդիրները հաճախորդների հետ»:

«Մենք մշտապես պայքարում ենք Core Data-ի և iCloud-ի համադրության հետ: Այս ամբողջ համակարգը անկանխատեսելի է, և մշակողը հաճախ սահմանափակ հնարավորություններ ունի՝ ազդելու դրա գործունեության վրա»: նկարագրում է չեխական զարգացման ստուդիան Հպեք Art, որը մեզ հաստատեց, որ մշտական ​​խնդիրների պատճառով նա հրաժարվում է այս լուծումից և աշխատում է ինքնուրույն, որում որպես այդպիսին տվյալների բազայի համաժամացման փոխարեն կօգտագործի ֆայլերի համաժամացումը։ Այնուհետև նա կկարողանա օգտագործել iCloud-ը դրա համար, քանի որ ֆայլերի համաժամացումը տեղի է ունենում դրա միջոցով առանց որևէ խնդիրների: Ի վերջո, դա հաստատում են նաև Jumsoft-ի մշակողները. «iCloud-ը, անկասկած, հիանալի գործիք է ուղղակի ֆայլերի պահպանման համար»: Այնուամենայնիվ, Jumsoft-ին, ցավոք, Core Data-ն անհրաժեշտ է իր հայտնի Money հավելվածի համար, և սա գայթակղություն է:

[do action="quote"]iCloud-ը և Core Data-ը յուրաքանչյուր մշակողի ամենավատ մղձավանջն են:[/do]

Շատ խնդիրներ առաջանում են նաև անսպասելի իրավիճակներից, որոնք կարող են հեշտությամբ առաջանալ, օրինակ, երբ օգտատերը դուրս է գալիս Apple ID-ից իր սարքում և մուտք է գործում մյուսի միջոցով: Apple-ը նրանց վրա բացարձակապես հույս չի դնում։ «Ինչպե՞ս լուծել խնդիրը, երբ օգտատերը, ով մուտք չի գործել iCloud, միացնում է հավելվածը, հետո միանում է iCloud-ին և նորից սկսում հավելվածը։ Նա հարցրեց մեկ մշակողի հետ Apple-ի ֆորումներում:

iCloud-ի հետ կապված բոլոր խնդիրներն ավարտվում են հավելվածների օգտատերերի դժգոհությամբ, որոնք կորցնում են տվյալները, մինչդեռ մշակողները հաճախ պարզապես անօգնական են դիտում: «Օգտատերերը բողոքում են ինձնից և հավելվածները գնահատում են մեկ աստղով», նա դժգոհեց Apple-ի ֆորումներում ծրագրավորող Բրայան Առնոլդը, ով դեռևս չի ստացել Apple-ից բացատրություն այն մասին, թե ինչ անել նմանատիպ խնդիրների հետ կամ ինչու են դրանք ընդհանրապես տեղի ունենում: Իսկ ֆորումները լի են iCloud-ի համաժամացման վերաբերյալ նման բողոքներով։

Որոշ մշակողներ արդեն կորցնում են համբերությունը iCloud-ի հետ կապված, և զարմանալի չէ: «iCloud-ը և Core Data-ը յուրաքանչյուր ծրագրավորողի ամենավատ մղձավանջն են»: համար հայտարարված Եզրին անանուն մշակող: «Դա հիասթափեցնող է, երբեմն խելագարեցնող և արժե անվերջ ժամեր լուծել խնդիրները»:

Apple-ը լռում է. Նա ինքն է շրջանցում խնդիրները

Թերևս զարմանալի չէ, որ Apple-ի խնդիրները iCloud-ի հետ անցնում են այնպես, կարծես ոչինչ չի եղել: Apple-ը գործնականում չի օգտագործում խնդրահարույց Core Data-ն իր հավելվածներում։ Իրականում կա երկու iCloud՝ մեկը, որն ապահովում է Apple-ի ծառայությունները, և մեկը, որն առաջարկվում է մշակողներին: Հավելվածներն ու ծառայությունները, ինչպիսիք են iMessage-ը, Mail-ը, iCloud-ի կրկնօրինակումը, iTunes-ը, Photo Stream-ը և այլն, կառուցված են բոլորովին այլ տեխնոլոգիայի վրա, քան այն, ինչ հասանելի է երրորդ կողմի մշակողների համար: Այսինքն՝ այն, որի հետ անընդհատ անախորժություններ են լինում։ iWork փաթեթի հավելվածները (Keynote, Pages, Numbers) օգտագործում են նույն API-ն, ինչ երրորդ կողմի հավելվածները, բայց միայն փաստաթղթերի շատ ավելի պարզ համաժամացման համար, ինչը Apple-ը մեծ ուշադրություն է դարձնում գործելու համար: Երբ նրանք թույլ են տալիս iCloud-ին և Core Data-ին մտնել իրենց հավելվածը Կուպերտինոյում, նրանք հուսալիության առումով ավելի լավը չեն, քան երրորդ կողմի մշակողները: Trailers հավելվածը, որն օգտագործում է Core Data-ը համաժամացման համար, ինքնին խոսում է, և օգտատերերը պարբերաբար կորցնում են որոշ գրառումներ։

Այնուամենայնիվ, Trailers-ի հետ, որոնք գրեթե այնքան էլ հայտնի չեն, այս խնդիրները համեմատաբար հեշտ է կորցնել: Բայց հետո ի՞նչ պետք է ասեն ամենահայտնի հավելվածների մշակողները իրենց օգտատերերին, ովքեր պարզապես պետք է ապավինեն iCloud-ի խնդրահարույց Core տվյալների վրա, բայց հաճախ չեն կարող երաշխավորել այն գործառույթը, որը Apple-ն անընդհատ գովազդում է իր գովազդներում: Apple-ը, իհարկե, չի օգնի նրանց: «Կարո՞ղ է որևէ մեկը Apple-ից մեկնաբանել այս իրավիճակը»: Նա հարցրեց անհաջող ֆորումում, ծրագրավորող Ջասթին Դրիսկոլը, ով ստիպված էր փակել իր առաջիկա հավելվածը անվստահելի iCloud-ի պատճառով:

Տարվա ընթացքում Apple-ը չի օգնում մշակողներին, ուստի բոլորը հույս ունեին, որ ինչ-որ բան կլուծվի գոնե անցյալ տարվա WWDC-ում, այսինքն՝ ծրագրավորողների համար նախատեսված կոնֆերանսում, բայց նույնիսկ այստեղ Apple-ը մեծ օգնություն չբերեց մշակողների հսկայական ճնշման տակ: Օրինակ, նա տրամադրեց օրինակելի կոդը, որը կարող է օգտագործվել Core տվյալների համաժամացման համար, բայց դա հեռու էր ամբողջական լինելուց: Կրկին, ոչ մի էական օգնություն: Ավելին, Apple-ի ինժեներները հորդորել են ծրագրավորողներին սպասել iOS 6-ին: «IOS 5-ից iOS 6-ին անցնելը XNUMX%-ով ավելի լավ դարձրեց իրերը»: հաստատված անանուն մշակողի կողմից, «բայց դա դեռ հեռու է իդեալական լինելուց»: Ըստ այլ աղբյուրների, Apple-ն անցյալ տարի ուներ Core Data-ի մասին հոգ տանող ընդամենը չորս աշխատակից, ինչը հստակ ցույց կտա, որ Apple-ը հետաքրքրված չէ այս ոլորտում: Սակայն ընկերությունից հրաժարվել են մեկնաբանել այս տեղեկությունը։

Ցտեսություն և շարֆ

Նշված բոլոր շրջադարձներից հետո զարմանալի չէ, որ շատ ծրագրավորողներ «ոչ» ասացին iCloud-ին, թեև հավանաբար ծանր սրտով: Դա iCloud-ն էր, որը պետք է վերջապես բերեր մի բան, որին տենչում էին մշակողները՝ պարզ լուծում, որն ապահովում է տվյալների նույնական բազաները և դրանց մշտական ​​համաժամացումը երկու կամ ավելի սարքերում: Ցավոք սրտի, իրականությունն այլ է։ «Երբ մենք դիտարկեցինք iCloud-ը և Core Data-ը որպես մեր հավելվածի լուծում, հասկացանք, որ չենք կարող օգտագործել այն, քանի որ ոչինչ չի աշխատի»: ասել է iPhone-ի և Mac-ի ամենավաճառվող հավելվածների մշակողը:

Մեկ այլ պատճառ, թե ինչու iCloud-ը հեշտությամբ չի լքվում, այն է, որ Apple-ը նկատում է այն հավելվածները, որոնք օգտագործում են իր ծառայությունները (iCloud, Game Center) և ամբողջովին անտեսում է նրանց, ովքեր Apple-ի որևէ բան չունեն App Store-ում: iCloud-ը լավ լուծում է նաև մարքեթինգային տեսանկյունից:

Dropbox-ը, օրինակ, առաջարկվում է որպես հնարավոր այլընտրանք, բայց այն այլևս այնքան էլ հարմար չէ օգտագործողի համար: Մի կողմից, օգտատերը պետք է ստեղծի մեկ այլ հաշիվ (iCloud-ը հասանելի է ավտոմատ կերպով նոր սարքի գնման դեպքում), իսկ մյուս կողմից՝ թույլտվություն է պահանջվում՝ նախքան հավելվածի գործարկումը, ինչը նույնպես ձախողվում է iCloud-ի դեպքում: Եվ վերջապես, Dropbox-ն առաջարկում է փաստաթղթերի համաժամացում, ինչը պարզապես այն չէ, ինչ փնտրում են մշակողները: Նրանք ցանկանում են համաժամեցնել տվյալների բազաները: «Dropbox-ը, որն այս պահին ամենաշատ օգտագործվողն է, ինքն իրեն ապացուցել է տվյալների համաժամացման համար։ Բայց երբ խոսքը վերաբերում է տվյալների բազայի համաժամացմանը, մենք կախված ենք iCloud-ից»: ընդունում է Roman Maštalíř-ը Touch Art-ից:

[do action="quote"]Ես ուզում եմ Apple-ին ասել, որ նրանք ամեն ինչ շտկել են iOS 7-ում, բայց ես իսկապես չեմ հավատում դրան:[/do]

Այնուամենայնիվ, 2Do հավելվածի մշակողները համբերություն չունեցան, iCloud-ի հետ կապված բազմաթիվ բացասական փորձի պատճառով նրանք ընդհանրապես չփորձեցին Apple ծառայությունը և անմիջապես եկան իրենց լուծումը: «Մենք չենք օգտագործում iCloud-ը բոլոր խնդիրների պատճառով: Դա շատ փակ համակարգ է, որի վրա մենք չենք կարողանա վերահսկել այնքան, որքան կցանկանայինք»: ծրագրավորող Ֆահադ Գիլանին մեզ ասաց. «Մենք ընտրել ենք Dropbox-ը համաժամացման համար։ Այնուամենայնիվ, մենք չենք օգտագործում դրա փաստաթղթերի համաժամացումը, մենք դրա համար գրել ենք մեր սեփական համաժամացման լուծումը»:

Չեխական մեկ այլ ստուդիա՝ Madfinger Games-ն իր խաղերում նույնպես չունի iCloud։ Այնուամենայնիվ, Dead Trigger և Shadowgun հայտնի վերնագրերի ստեղծողը Apple-ի ծառայությունից չի օգտվում մի փոքր այլ պատճառներով։ «Մենք ունենք ամպի վրա հիմնված մեր սեփական համակարգը՝ խաղի մեջ դիրքերը պահպանելու համար, քանի որ ցանկանում էինք, որ կարողանանք խաղի առաջընթացը փոխանցել հարթակների միջև»: David Kolečkář-ը մեզ բացահայտեց, որ iOS-ի և Android-ի համար խաղերի մշակման շնորհիվ Madfinger Games-ի համար, iCloud-ը երբեք լուծում չէր:

Կլինի՞ լուծում։

Ժամանակի ընթացքում շատ ծրագրավորողներ կամաց-կամաց կորցնում են հույսը, որ Apple-ը լուծում կգտնի: Օրինակ՝ գալիս է հաջորդ WWDC-ն, բայց քանի որ Apple-ը գործնականում նույնիսկ հիմա չի շփվում ծրագրավորողների հետ, չի սպասվում, որ նա պետք է WWDC գա խորհուրդներով ու պատասխաններով լի գրկաբաց։ «Այն ամենը, ինչ մենք կարող ենք անել, այն է, որ շարունակենք Apple-ին վրիպակների մասին հաշվետվություններ ուղարկել և հուսալ, որ նրանք կուղղեն դրանք»: ողբում է iOS-ի անանուն ծրագրավորողներից մեկը, մյուսն արձագանքում է իր զգացմունքներին. «Ես կցանկանայի Apple-ին ասել, որ նրանք շտկել են ամեն ինչ iOS 7-ում և iCloud-ը վերջապես կարող է օգտագործվել առանց խնդիրների երկու տարի անց, բայց ես իրականում չեմ հավատում դրան»: Բայց դա կլինի iOS 7-ը, որը պետք է լինի այս տարվա WWDC-ի կենտրոնական թեման, այնպես որ մշակողները կարող են գոնե հուսալ:

Եթե ​​Apple-ը իր օպերացիոն համակարգի նոր տարբերակում լուծում չառաջարկի iCloud-ի խնդիրների համար, դա կարող է վիրտուալ մեխ լինել որոշ նախագծերի համար: Ծրագրավորողներից մեկը, ով մինչ այժմ եղել է iCloud-ի մեծ ջատագովը, ասում է. «Եթե Apple-ը չլուծի դա iOS 7-ում, մենք ստիպված կլինենք հրաժարվել նավից»:

Աղբյուրը ` TheVerge.com- ը, TheNextWeb.com
.