در آخرین سخنرانی خود در WWDC در سال 2011، استیو جابز سرویسی را معرفی کرد که هنوز هم بسیاری از توسعه دهندگان را به وحشت می اندازد. این کسی نیست جز iCloud، جانشین موفق MobileMe مشکلدار. با این حال، حتی iCloud نیز بدون خطا نیست. و توسعه دهندگان در حال شورش هستند…
استیو جابز برای اولین بار iCloud را در ژوئن 2011 دموی کرد، این سرویس چهار ماه بعد راه اندازی شد و اکنون حدود یک سال و نیم است که کار می کند. در ظاهر، یک سرویس نسبتاً روان که به قول افسانهای افسانهای، «فقط کار میکند» (یا حداقل باید باشد)، اما در درون، مکانیزمی رامنشده است که اغلب آنچه را که میخواهد انجام میدهد و توسعهدهندگان هیچ سلاح مؤثری در برابر آن ندارند. آی تی.
"همه چیز به طور خودکار اتفاق می افتد و اتصال برنامه های خود به سیستم ذخیره سازی iCloud بسیار آسان است." جابز در آن زمان گفت. وقتی توسعهدهندگان اکنون سخنان او را به خاطر میآورند، احتمالاً مجبورند برس کنند. iCloud فقط برای ما کار نکرد. ما واقعاً زمان زیادی را صرف آن کردیم، اما همگامسازی iCloud و Core Data این مشکلات را داشت که نتوانستیم آنها را حل کنیم. او اعتراف کرد رئیس استودیوی بلک پیکسل، که برای مثال، مسئول RSS خوان معروف NetNewsWire است. برای او، iCloud باید راهحل ایدهآلی برای همگامسازی میبود، مخصوصاً در زمانی که گوگل در شرف بستن Google Reader است، اما شرطبندی روی سرویس اپل جواب نداد.
هیچ چیز کار نمی کند
جای تعجب است که سرویسی که بیش از 250 میلیون کاربر دارد و در نتیجه یکی از بزرگترین در نوع خود در جهان است، چنین مشکلاتی دارد. با نگاهی گذرا به موضوع، می توان انگشت خود را به سمت توسعه دهندگان گرفت، اما آنها در حال حاضر در این مورد بی گناه هستند. iCloud سعی می کند بسیاری از آنها را در برنامه های خود پیاده سازی کند، اما تلاش آنها اغلب با شکست ختم می شود. زیرا iCloud با همگام سازی مشکلات جدی دارد.
[do action=”quote”]من حتی نمی توانم تمام توسعه دهندگانی را که به مشکل برخوردند و در نهایت منصرف شدند، بشمارم.[/do]
"من چندین بار کد iCloud خود را به امید یافتن راه حلی بازنویسی کردم." او نوشت توسعه دهنده مایکل گوبل با این حال، او راه حلی پیدا نکرده است، و بنابراین او هنوز نمی تواند برنامه های خود، یا بهتر است بگوییم فروشگاه App را به بازار عرضه کند. من حتی نمیتوانم همه توسعهدهندگان و شرکتهایی را بشمارم که با مشکلات مشابه من مواجه شدند و در نهایت منصرف شدند. پس از از دست دادن صدها هزار داده کاربر، آنها به سادگی iCloud را به کلی رها کردند.
بزرگترین مشکل اپل با iCloud همگام سازی پایگاه داده (Core Data) است. دو نوع دیگر از داده هایی که می توانند از طریق ابر اپل همگام شوند - تنظیمات و فایل ها - بدون هیچ مشکلی در محدوده کار می کنند. با این حال، Core Data کاملاً غیرقابل پیش بینی رفتار می کند. این یک چارچوب سطح بالا است که به شما امکان می دهد چندین پایگاه داده را در بین دستگاه ها همگام سازی کنید. "iCloud قول داده است که تمام مشکلات همگام سازی پایگاه داده را با پشتیبانی از Core Data حل کند، اما کار نمی کند." یکی از توسعه دهندگان برجسته، که برای حفظ روابط خوب با اپل، مایل به ذکر نام نیست، گفت.
در عین حال، اپل به طور کامل این مشکلات را نادیده می گیرد، iCloud به تبلیغات خود به عنوان یک راه حل ساده ادامه می دهد و کاربران آن را از توسعه دهندگان مطالبه می کنند. اما علیرغم تلاشهای سازنده، دادههای کاربران بهطور غیرقابل کنترلی ناپدید میشوند و دستگاهها همگامسازی را متوقف میکنند. حل این مشکلات اغلب ساعتها طول میکشد و برخی میتوانند برای همیشه حسابهای شما را خراب کنند. یکی دیگر از توسعه دهندگان برجسته به اپل متمایل شده و اضافه می کند: علاوه بر این، AppleCare قادر به حل این مشکلات با مشتریان نیست.
ما همیشه با ترکیب Core Data و iCloud مبارزه می کنیم. کل این سیستم غیرقابل پیش بینی است و توسعه دهنده اغلب گزینه های محدودی برای تأثیرگذاری بر عملکرد آن دارد." استودیوی توسعه چک را توصیف می کند هنر را لمس کنید، که به ما تأیید کرد که به دلیل مشکلات مداوم، این راه حل را رها کرده و به تنهایی کار می کند، که در آن به جای همگام سازی پایگاه داده، از همگام سازی فایل ها استفاده می کند. سپس او می تواند از iCloud برای این کار استفاده کند، زیرا همگام سازی فایل ها از طریق آن بدون هیچ مشکلی انجام می شود. پس از همه، این نیز توسط توسعه دهندگان از Jumsoft تایید شده است: iCloud بدون شک یک ابزار عالی برای ذخیره سازی مستقیم فایل است. با این حال، متأسفانه Jumsoft برای برنامه معروف Money خود به Core Data نیاز دارد و این یک مانع است.
[do action="quote"]iCloud و Core Data بدترین کابوس هر توسعه دهنده هستند.[/do]
بسیاری از مشکلات همچنین از موقعیتهای غیرمنتظرهای ناشی میشوند که میتوانند به راحتی رخ دهند، مانند زمانی که کاربر از یک Apple ID در دستگاه خود خارج میشود و از طریق دیگری وارد میشود. اپل اصلا روی آنها حساب نمی کند. وقتی کاربری که به iCloud وارد نشده است، برنامه را روشن می کند، سپس به iCloud متصل می شود و دوباره برنامه را راه اندازی می کند، چگونه می توان مشکل را حل کرد؟ او درخواست کرد با یک توسعه دهنده در انجمن های اپل.
تمام مشکلات مربوط به iCloud به نارضایتی کاربران برنامه که دادههای خود را از دست میدهند به اوج میرسد، در حالی که توسعهدهندگان اغلب با درماندگی تماشا میکنند. "کاربران از من شکایت می کنند و برنامه ها را با یک ستاره ارزیابی می کنند." شکایت کرد در انجمنهای اپل، توسعهدهنده برایان آرنولد، که هنوز توضیحی از اپل در مورد اینکه با مشکلات مشابه چه باید کرد یا اصلاً چرا اتفاق میافتند، دریافت نکرده است. و انجمن ها پر از چنین شکایت هایی در مورد همگام سازی iCloud هستند.
برخی از توسعه دهندگان در حال حاضر صبر خود را با iCloud از دست داده اند و جای تعجب نیست. "iCloud و Core Data بدترین کابوس هر توسعه دهنده هستند." گفت: در آستانه توسعه دهنده بی نام "این ناامید کننده است، گاهی اوقات دیوانه کننده است و ارزش ساعت های بی پایان عیب یابی را دارد."
اپل ساکت است. خودش مشکلات را دور می زند
شاید تعجبی نداشته باشد که مشکلات اپل با iCloud به گونه ای است که گویی هیچ اتفاقی نیفتاده است. اپل عملا از Core Data مشکل ساز در برنامه های خود استفاده نمی کند. در واقع دو iCloud وجود دارد - یکی که خدمات اپل را تقویت می کند و دیگری که به توسعه دهندگان ارائه می شود. برنامهها و خدماتی مانند iMessage، Mail، پشتیبانگیری iCloud، iTunes، Photo Stream و موارد دیگر بر اساس فناوری کاملاً متفاوتی نسبت به آنچه در دسترس توسعهدهندگان شخص ثالث است ساخته شدهاند. یعنی همانی که دائماً با آن دردسر است. برنامههای بسته iWork (Keynote، Pages، Numbers) از همان API برنامههای شخص ثالث استفاده میکنند، اما فقط برای همگامسازی اسناد بسیار سادهتر، که اپل برای انجام آن بسیار دقت میکند. وقتی آنها iCloud و Core Data را به برنامه خود در کوپرتینو اجازه می دهند، از نظر قابلیت اطمینان بهتر از توسعه دهندگان شخص ثالث نیستند. اپلیکیشن Trailers که از Core Data برای همگامسازی استفاده میکند، خودش صحبت میکند و کاربران مرتباً برخی از رکوردها را از دست میدهند.
با این حال، با تریلرها، که تقریباً به همان اندازه محبوب نیستند، از دست دادن این مشکلات نسبتاً آسان است. اما پس از آن، توسعهدهندگان محبوبترین برنامهها به کاربران خود، که به سادگی باید به Core Data مشکلساز در iCloud تکیه کنند، اما اغلب نمیتوانند نوع عملکردی را که اپل دائماً در تبلیغات خود تبلیغ میکند، تضمین کنند، چه باید بگویند؟ اپل مطمئنا به آنها کمک نخواهد کرد. "آیا کسی از اپل می تواند در مورد این وضعیت اظهار نظر کند؟" او درخواست کرد در انجمن ناموفق، توسعه دهنده جاستین دریسکول، که مجبور شد برنامه آینده خود را به دلیل iCloud نامعتبر خاموش کند.
در طول سال، اپل به توسعه دهندگان کمک نمی کند، بنابراین همه امیدوار بودند که حداقل در WWDC سال گذشته، یعنی کنفرانسی که برای توسعه دهندگان در نظر گرفته شده بود، چیزی حل شود، اما حتی در اینجا نیز اپل تحت فشار بسیار زیاد توسعه دهندگان کمک زیادی نکرد. به عنوان مثال، او کد نمونه ای را ارائه کرد که می توان از آن برای همگام سازی Core Data استفاده کرد، اما هنوز کامل نشده بود. باز هم، هیچ کمک قابل توجهی. علاوه بر این، مهندسان اپل از توسعه دهندگان خواستند تا منتظر iOS 6 باشند. انتقال از iOS 5 به iOS 6 همه چیز را XNUMX% بهتر کرد. توسط یک توسعه دهنده ناشناس تایید شده است، "اما هنوز با ایده آل فاصله زیادی دارد." طبق منابع دیگر، اپل در سال گذشته تنها چهار کارمند داشت که از Core Data مراقبت می کردند، که به وضوح نشان می دهد که اپل به این حوزه علاقه ای ندارد. با این حال، این شرکت از اظهار نظر در مورد این اطلاعات خودداری کرد.
خداحافظ و روسری
پس از تمام فراز و نشیب های ذکر شده، جای تعجب نیست که بسیاری از توسعه دهندگان به iCloud نه گفتند، هرچند احتمالاً با دلی سنگین. این iCloud بود که قرار بود سرانجام چیزی را که توسعه دهندگان آرزوی آن را داشتند به ارمغان بیاورد - راه حلی ساده که پایگاه داده های یکسان و همگام سازی مداوم آنها را در دو یا چند دستگاه تضمین می کند. متاسفانه واقعیت چیز دیگری است. وقتی به iCloud و Core Data به عنوان راه حلی برای برنامه خود نگاه کردیم، متوجه شدیم که نمیتوانیم از آن استفاده کنیم زیرا هیچ چیز کار نمیکند. توسعه دهنده برخی از پرفروش ترین اپلیکیشن های آیفون و مک گفت.
دلیل دیگری که چرا iCloud به راحتی رها نمی شود این واقعیت است که اپل به برنامه هایی که از خدمات آن استفاده می کنند (iCloud، Game Center) توجه می کند و به طور کامل برنامه هایی را که هیچ چیزی اپل در اپ استور ندارند نادیده می گیرد. iCloud از نقطه نظر بازاریابی نیز راه حل خوبی است.
به عنوان مثال، Dropbox به عنوان یک جایگزین ممکن ارائه شده است، اما دیگر آنقدرها کاربر پسند نیست. از یک طرف، کاربر باید یک حساب کاربری دیگر راه اندازی کند (iCloud با خرید یک دستگاه جدید به طور خودکار در دسترس است) و از طرف دیگر، قبل از اینکه برنامه بتواند کار کند، مجوز لازم است که در iCloud نیز از کار می افتد. و در نهایت - Dropbox همگام سازی اسناد را ارائه می دهد، که به سادگی آن چیزی نیست که توسعه دهندگان به دنبال آن هستند. آنها می خواهند پایگاه های داده را همگام سازی کنند. "Dropbox که در حال حاضر بیشترین استفاده را دارد، خود را برای همگام سازی داده ها ثابت کرده است. اما وقتی نوبت به همگام سازی پایگاه داده می رسد، ما به iCloud وابسته هستیم." رومن Maštalíř از Touch Art را می پذیرد.
[do action="quote"]میخواهم به اپل بگویم که همه چیز را در iOS 7 حل کرده است، اما من واقعاً این را باور ندارم.[/do]
با این حال، توسعه دهندگان برنامه 2Do حوصله نداشتند، به دلیل تجربیات منفی متعدد با iCloud، آنها به هیچ وجه سرویس اپل را امتحان نکردند و بلافاصله راه حل خود را ارائه کردند. ما به دلیل تمام مشکلات از iCloud استفاده نمی کنیم. این یک سیستم بسیار بسته است که ما نمیتوانیم آنقدر که میخواهیم روی آن کنترل داشته باشیم." توسعه دهنده فهد گیلانی به ما گفت. "ما Dropbox را برای همگام سازی انتخاب کردیم. با این حال، ما از همگام سازی اسناد آن استفاده نمی کنیم، ما راه حل همگام سازی خودمان را برای آن نوشتیم."
یکی دیگر از استودیوهای چک به نام Madfinger Games نیز iCloud را در بازی های خود ندارد. با این حال، سازنده عناوین محبوب Dead Trigger و Shadowgun به دلایل کمی متفاوت از سرویس اپل استفاده نمی کند. ما سیستم مبتنی بر ابر خودمان را برای ذخیره موقعیتهای درون بازی داریم، زیرا میخواستیم بتوانیم پیشرفت بازی را بین پلتفرمها انتقال دهیم.» David Kolečkář به ما فاش کرد که به دلیل توسعه بازی برای iOS و Android برای Madfinger Games، iCloud هرگز راه حلی نبود.
آیا راه حلی وجود خواهد داشت؟
با گذشت زمان، بسیاری از توسعه دهندگان کم کم امید خود را نسبت به ارائه راه حل اپل از دست می دهند. به عنوان مثال، WWDC بعدی در راه است، اما از آنجایی که اپل حتی در حال حاضر عملاً با توسعه دهندگان ارتباط برقرار نمی کند، انتظار نمی رود که او با آغوش باز و پر از مشاوره و پاسخ به WWDC بیاید. تنها کاری که میتوانیم انجام دهیم این است که به ارسال گزارشهای باگ به اپل ادامه دهیم و امیدواریم که آنها آنها را برطرف کنند. یک توسعهدهنده iOS که نامش فاش نشده، ابراز تاسف کرد و دیگری نیز احساسات او را تکرار کرد: من خیلی دوست دارم به اپل بگویم که آنها همه چیز را در iOS 7 اصلاح کردند و iCloud بالاخره بعد از دو سال بدون مشکل قابل استفاده است، اما من واقعاً این را باور ندارم. اما این iOS 7 خواهد بود که باید موضوع اصلی WWDC امسال باشد، بنابراین توسعه دهندگان می توانند حداقل امیدوار باشند.
اگر اپل در نسخه جدید سیستم عامل خود راه حلی برای مشکلات iCloud ارائه نکند، می تواند برای برخی پروژه ها میخ خیالی باشد. یکی از توسعه دهندگانی که تاکنون از iCloud حمایت کرده است می گوید: اگر اپل این مشکل را در iOS 7 برطرف نکند، ما مجبور خواهیم شد که کشتی را رها کنیم.
من کل مقاله را خواندم و متوجه نشدم از کجا آمده است. در مورد برنامه های iCloud و apple و ادغام کلی iCloud با iPhone و Mac، برای من 100٪ کار می کند و تقریباً از هر برنامه ای از اپل استفاده می کنم که از آن پشتیبانی می کند. علاوه بر این، من همچنین برنامه Trailers را از اپل دانلود کرده ام (حتی اگر در SVK iTunes نیست، بنابراین باید دلیلی برای آن وجود داشته باشد)، اما نمی دانم iCloud در کجا یکپارچه شده است - باید آن را نگاه کنم. بالا علاوه بر این، من هرگز با iCloud در برنامه های دیگر مشکلی نداشته ام. من از Appig's ToDo استفاده میکنم و همگامسازی iCloud 100% کار میکند و بیش از 100 کار در برنامههای iPhone و Mac دارم که نزدیک به کار من مرتبط هستند، بنابراین من به 100% همگامسازی نیاز دارم، بنابراین نمیدانم 2Do با چه مشکلی مواجه است. من هم مستقیم با Appigo ارتباط برقرار کردم و ایکلاد (البته علاوه بر سرویس همگام سازی پولی خود) را برای همگام سازی توصیه کردند چون دراپ باکس را هم امتحان کردم و راضی نبودم (هر روز از دراپ باکس برای همگام سازی فایل ها استفاده می کنم). من همچنین هر روز از برنامه پول iBear استفاده می کنم و هرگز با همگام سازی iCloud مشکلی نداشته ام! شما همچنین می نویسید که Dropbox راه حل بهتری برای همگام سازی فایل است، اما قبل از آن نوشته شده است که iCloud برای همگام سازی فایل ها عالی است - من این را کمی متوجه نمی شوم. علاوه بر این، استودیوهای بازی که شما نام بردید از iCloud استفاده نمی کنند، اما به دلیل همگام سازی با دستگاه های ANDROID در جایی که iCloud وجود ندارد، از سرویس آنها استفاده می کنند، بنابراین فکر می کنم اینجا مشکلی وجود ندارد. اخیراً Real Racing 3 اینگونه عمل می کند و همچنین فقط هنگام همگام سازی با دستگاه هایی غیر از اپل. بازیهای دیگری که از iCloud استفاده میکنند نیز به همین شکل کار میکنند (طبق تجربه من). و در پایان، شما می نویسید که iCloud یک سیستم بسیار بسته است و این یک مشکل است - آیا این همیشه فلسفه اپل نبوده است؟ اگر iCloud کاملاً باز بود، اصلاً کار نمی کرد. همچنین، کل iOS بسته است و کسی همیشه شکایت می کند که نمی تواند این کار را انجام دهد، اما از نظر من، این فقط خوب است، درست است؟ مسلماً من شکایات انجمن ها و شکایات توسعه دهندگان را نخوانده ام، اما 100٪ از iCloud راضی هستم، بنابراین این مقاله من را شگفت زده کرد.
بله همانطور که در مقاله نوشته شده است. برنامه های بومی کار می کنند و کاربر متوجه چیزی نمی شود
یک نفس بکشید، این در واقع یک مقاله ترجمه شده از TheVerge است، بنابراین ما نظر الیس همبرگر را می خوانیم، نه خیلی نظر Ondrej Holzman (هیچ چیزی علیه من نیست، من فقط تمام تلاشم را می کنم).
در واقعیت، هیچ کس اهمیت نمی دهد که اپل چه کاری را به خوبی انجام می دهد. همه می خواهند بشنوند که چه اشتباهی انجام می دهند، زیرا تبلیغات در چنین سایت هایی دو برابر درآمد دارد. زیرا در غیر این صورت نمیتوانم توضیح دهم که چرا کل مقاله درباره این است که چگونه iCloud اصلاً کار نمیکند، حتی اگر این فقط مشکلاتی با همگامسازی Core Data است که تقریباً 1/10 iCloud است. اما همانطور که گفتم، هیچ کس اهمیت نمی دهد که چه چیزی تقریباً عالی کار می کند:
– iTunes Match
– iTunes در فضای ابری
– iMessage
- زمان رویارویی
- جریان عکس
– پشتیبان گیری از iCloud
- مخاطب
- یادآوری ها
- تقویم ها
- پادکست ها
- مرکز بازی
از این گذشته، حتی اگر یک بخش کوچک به خوبی کار نکند، مقاله ها درباره این هستند که چگونه "هیچ چیز کار نمی کند"، زیرا این یک شوخی است. با این حال، افرادی که واقعیت ها را می دانند می دانند که این ربطی به گزارش عینی ندارد.
امروز باید از همه چیز انتقاد کرد (مخصوصاً بدون اینکه شخص قبلاً چیزی در مورد آن خوانده باشد)، بنابراین یا به هیئت مدیره بپیوندید یا توده های اینترنتی شما را سنگسار خواهند کرد.
اگر مقاله به این معنی نیست که فقط Core Data مورد انتقاد قرار می گیرد، پس باید اینطور می شد. و بله، مقاله تا حد زیادی از TheVerge گرفته شده است، زیرا ما به سادگی نمی توانیم به این نوع اطلاعات دسترسی پیدا کنیم، دسترسی نداریم. من سعی کردم حداقل از برخی توسعه دهندگان دیگر در مورد مشکلات iCloud بپرسم تا بدانم چیست و چرا و آنها کم و بیش این شکایات را تأیید کردند.
شما می نویسید که همه می خواهند بشنوند چه چیزی اشتباه است و این درست است. آیا فکر می کنید ارزش آن را دارد که هر هفته در مورد اینکه iCloud واقعا عالی است، همه چیز به جز یک چیز و اینکه داده ها به زیبایی همگام شده اند، کار می کند، بنویسید؟ نمی دونم به نظرم موضوع خیلی جالبی بود که الان به خصوص در خارج از کشور پرطرفدار شده و در موردش نوشتم.
در این صورت صدق نمی کند که باید منبعی که مقاله از آن است را ذکر کنید؟ یا بیشتر ترجمه مقاله است؟ پس این ساخته شما نیست بلکه مال شخص دیگری است؟ علاوه بر این، مقالاتی مانند این بیهوده باعث ایجاد شک و تردید می شوند، همانطور که دقیقاً در کامنت زیر توسط Marek Odehnal وجود دارد !!!
منبع مقاله از ابتدا در زیر جمله آخر ذکر شده است، درست مانند سایر مقالات در Jablíčkář.
اوه ببخشید متوجه نشدم
خوب، خیلی خوب از آب در نمی آید - یک آزمایش کوچک انجام دهید: فقط عنوان و سپس همه زیرنویس ها را بخوانید - از اینجا احساس می کنم که iCloud بدتر از سرطان است (و اینکه چیزی Core Data در جایی وجود دارد، اما بالاتر. تنها چیزی که باید به خاطر داشته باشم که iCloud کاملاً کار نمی کند، همانطور که در یک زیرنویس می نویسید - حداقل آن زیرنویس خارج از علامت است. تعداد کمی از مردم می دانند که Core Data در iCloud چگونه شکل می گیرد، و این مقاله قطعاً به هیچ وجه زحمت توضیح آن را نداشته است. این که در چند پاراگراف به آن اشاره کرده اید واقعا کافی نیست. و من در هیچ کجا کثرت نمی بینم - لازم نیست یک مقاله کامل در مورد این واقعیت بنویسید که همه چیز کار می کند. اما در مقاله هزار کلمهای، یک بار هم به این موضوع اشاره نشده است که تمام بخشهای دیگر iCloud به آرامی اجرا میشوند که من فکر میکنم... خوب، فقط یک حالت معمولی است - از اپل انتقاد کنید، تبلیغات نتیجه میدهد. و لازم به ذکر است که هیچ شرکت رقابتی راه حل مشابهی را ارائه نمی دهد ... جایی برای آن باقی نمی ماند، درست است؟
نمیخواهم کسی را نصیحت کنم، اما از یک قانون پیروی میکنم: اگر چیزی را متوجه نشدم، در مورد آن چیزی نمینویسم.
اگر با چهره ای آرام به من بگویید که فکر می کنید مقاله عینی است یا بیش از یک دیدگاه را بیان می کند، متأسفانه باید بخندم.
بله، من زیرنویس را کمی تهاجمی تر انتخاب کردم، گاهی اوقات فراتر از لبه، این را قبول دارم. در آنجا به دیگر ویژگیهای iCloud اشاره شده است. درباره این واقعیت که iCloud چیزی را ارائه می دهد که سایر خدمات ارائه نمی دهند، نیز اشاره شده است. اینجا نیست که iCloud آن را به عنوان تنها ارائه می دهد. Dropbox فوقالذکر وجود دارد که رایجترین جایگزین است، اما مطمئناً آنچه را که iCloud انجام میدهد، یعنی همگامسازی پایگاه داده، ارائه نمیدهد.
این مقاله دیدگاه های بیشتری را در مورد این موضوع بیان می کند به گونه ای که چندین توسعه دهنده در مورد یک موضوع صحبت می کنند. چیزی که من شخصاً این فرصت را داشتم که از چندین استودیو توسعه دهنده بپرسم، همه آنها به من تأیید کردند که به سادگی مشکلی در Core Data وجود دارد.
این عجیب است، زیرا وقتی اخبار هکرها، انجمنهای پشتیبانی یا بحثها را در Verge میخوانم، تقریباً نیمی از توسعهدهندگان میگویند که با آن مشکلی نداشتهاند (حتی در این بحث ما افرادی را داریم که خودشان همین را میگویند). اما شما فقط با توسعه دهندگان صحبت کردید و آنها 100٪ به شما گفتند که کار نمی کند. جالب است، به نظر می رسد بسیار محتمل است - من قطعاً نمی توانم بگویم که نظر افرادی که برای آنها کار کرده است، آنها ... اوم ... از بین رفته است.
اگر سیب ها را با سیب (hehe) مقایسه کنیم، Dropbox و iCloud Document Sync هر دو کاملاً کار می کنند. بنابراین وقتی در مورد همگام سازی Core Data صحبت می کنیم دلیلی نمی بینم که اصلاً Dropbox را ذکر کنم.
به طور خلاصه، چیزی که من به سادگی نمی فهمم این است که شما کل مقاله را بر این واقعیت استوار کردید که iCloud کار نمی کند - نقطه. شما اشاره کردید که فقط در مورد Core Data sync در خط سیزدهم است. اما اکثریت مطلق مقاله در مورد این است که چگونه iCloud به عنوان چنین کار نمی کند. Coz به سادگی نادرست است. این که بیشتر یک احساس است، احتمالا درست است. اما اگر می خواهید به طور واقعی درست بنویسید، پس باید به این توجه کنید. زیرا وقتی به پایین نگاه میکنید، افرادی هستند که دقیقاً آن را همانطور که نوشتهاید فهمیدهاند - که iCloud کار نمیکند - و به همین دلیل است که شروع به پرسیدن کردند که آیا پشتیبانگیری iCloud حداقل کار میکند یا خیر. من فکر میکنم این بهترین شواهدی است که نشان میدهد برای اکثر مردم چگونه به نظر میرسید.
من همان چیزی را که برای نویسنده در The Verge نوشتم برای شما می نویسم: این یک وبلاگ شخصی نیست که در آن اشاعه دروغ اشکالی ندارد. این در واقع توسط میلیون ها (و در مورد جابلیکر هزاران) نفر خوانده می شود که شما را باور می کنند و آنچه را که می نویسید به عنوان واقعیت می دانند. بنابراین بهانه ای نیست که قبل از نوشتن مقاله متوجه موضوع نشده اید. حتی اگر بتوانم آن را درک کنم. به نظر من بدتر از این است که شما به طور انتخابی فایل را بدون تطابق با واقعیت ها بیرون می اندازید، به طوری که نتیجه یک مقاله ساده شده است که به دنبال یک احساس است.
اما میدانم که اگر عنوان مقاله «چرا به نحوی کار نمیکند، همگامسازی دادههای هسته؟» بود، احتمالاً بسیار کمتر خوانده میشد. و اینجا خط جدایی بین ایجاد کیفیت و کمیت است.
من خودم از پنج توسعه دهنده چک پرسیدم (چهار نفر پاسخ دادند)، یکی خارجی، و آنها به طور کلی تأیید کردند که مشکلی با Core Data وجود دارد/وجود دارد. من نمی گویم این برای همه صدق می کند، اما خلاصه آنهایی که پرسیدم، مطالبی را که در جای دیگر خوانده بودم تایید کردند. متاسفانه پاسخ مثبتی دریافت نکردم که در غیر این صورت در مقاله به آن اشاره می کردم. میتوانستم توسعهدهندگان بیشتری را توصیف کنم، اما به همه توسعهدهندگان چک که به ذهنم رسید، نامه نوشتم، و همچنین تعدادی خارجی را که با آنها تماس داریم، اضافه کردیم، اما همه آنها ارتباط برقرار نمیکنند.
شرم آور است که من به نسخه اصلی مقاله "دو چهره iCloud" پایبند نبودم زیرا اعتراف می کنم که بسیار مناسب تر بود و فقط یک عنوان متفاوت به مقاله احساس کاملاً متفاوتی می داد. ولی الان نمیتونم پس بگیرمش
بله، احتمالاً بسیار متفاوت به نظر می رسد. من با این توسعه دهندگان شما را باور دارم، من نظرات صدها نفر را در انجمن های مختلف خواندم و آنجا دیدم که آنقدر pol در pol است. از آنجا که بسیاری از مردم واقعاً از همگام سازی داده های هسته ای بدون مشکل استفاده می کنند - اگر از ساختارهای ساده استفاده می کنند و ادغام به درستی انجام می شود، پس نباید مشکلی وجود داشته باشد. CDS (همگام سازی داده های هسته) به اندازه اصل خطا در پیاده سازی ندارد - به عنوان مثال، وقتی دو پایگاه داده با یک اجداد مشترک دارید، چه کاری باید انجام دهید، در هر کدام تغییراتی ایجاد کرده اید و سپس سعی می کنید آن تغییرات را منتقل کنید. و آن تغییرات در تضاد هستند؟ این یک مشکل نسبتاً بزرگ و نسبتاً پیچیده با پایگاه داده است (O(mn^2)) و هنوز کسی آن را به طور رضایت بخشی حل نکرده است، اپل سپس به عنوان یکی از معدود آنها تلاش خواهد کرد.
تقریباً برای افرادی که چیز زیادی در مورد آن نمی دانند متاسفم، به اینجا بیایند، مقاله ای بخوانند و با این احساس که iCloud یک تکه چرند است، آنجا را ترک کنند. در عین حال، همانطور که قبلاً نوشتم، ده ها عملکردی که بدون هیچ مشکلی کار می کنند واقعاً عالی هستند و چندین بار داده های زیادی را برای من ذخیره کرده اند. بنابراین به دلیل مشکل بسیار دشوار CSD که کل iCloud را محکوم می کند، این فایل را ناعادلانه یافتم - متأسفانه، برخی از مردم واقعاً آن را به این شکل درک کردند.
در مورد مقاله در مورد مشکلات Core Data Sync - خوشحال می شوم آن را بخوانم و از هرگونه اطلاعات بیشتر در مورد آن سپاسگزارم. فقط شرم آور است که CDS تمام iCloud را گرفت (و نه تنها در ارسال شما، بلکه کمی در ارسال E. Hamburger، اگرچه او سعی کرد به نحوی آن را جدا کند - و سپس ده ها سرور که کنترل شدند - ساده شده - به سبک منتشر شدند. از "iCloud مفید است").
فکر نمیکنم اپل سزاوار آن باشد - مخصوصاً به این دلیل که هیچ کس دیگری حتی در تلاش برای حل این مشکل نیست.
این مقاله عملاً فقط تفسیر توسعه دهندگان ناراضی و مشکلات آنها در یک مکان است. من تجربه شخصی با توسعه و iCloud ندارم، فقط از اطلاعات موجود استفاده کردم.
برای اضافه کردن حقایق، حقیقت این است که همگامسازی پایگاههای داده به سبک Slave-Slave یک مشکل O(mn^2) است که نه گوگل و نه اوراکل حتی آن را امتحان نمیکنند (در حالی که اپل قبلاً آن را برای ساختارهای نسبتاً پیچیده حل کرده است). اپل تنها شرکتی است که سعی در حل این مشکل دارد، اما فقط به خاطر آن مورد انتقاد قرار می گیرد. از سوی دیگر، گوگل با همگام سازی master-slave خود (آنلاین) O(1) و گاهی اوقات O(n) آفلاین از پشت می خندد، که چگونه کل وبلاگ سپهر تکنولوژیکی مطلقاً نمی فهمد در مورد چه چیزی می نویسد. زیرا تنها در این صورت کسانی که از نظر فناوری عقب هستند مورد تمجید و پیشگامان قرار می گیرند. لعنت به جهل انسانی در انتقال اولیه.
من در حال تغییر از Android هستم، بنابراین یک سوال ساده دارم: از مقاله متوجه شدم که مشکل هنگام همگام سازی در چندین دستگاه است (به عنوان مثال موقعیت بازی ذخیره شده در iPhone و iPad). من فقط یک آیفون خواهم داشت، بنابراین سوال اینجاست که آیا این مشکل برای پشتیبان گیری فقط و فقط یک دستگاه در iCloud نیز صدق می کند؟ من فقط آیفون خود را می فروشم، یک گوشی جدید می خرم و یک نسخه پشتیبان کامل از iCloud آپلود می کنم، زمانی که تمام تنظیمات و تنظیمات برنامه را در تلفن جدید داشته باشم (گذرواژه برای شبکه های اجتماعی، موقعیت های ذخیره شده بازی ...) مانند آخرین بار در قدیم، اینطور کار می کند؟ یکی از دلایل اصلی مهاجرت است، یعنی. از اندروید بدون روت نمی توان به طور کامل بک آپ گرفت و وقتی به گوشی دیگری سوئیچ کردم همه برنامه ها را دانلود کردیم اما مجبور شدم دوباره تمام تنظیمات را در آنها به صورت دستی انجام دهم و با ده ها برنامه این ساعت ها وقت اضافی است. بنابراین آیا iCloud این مشکل را برای یک دستگاه در iTunes حل می کند؟ سپاس گذارم برای اطلاعات.
لازم نیست بترسی! iCloud در دستگاه های اپل 100٪ در همه جا کار می کند. حدود 2 ماه پیش یک iP5 خریدم و در یک کافی شاپ روی وای فای نشستم، پسورد اکانت اپل را وارد کردم و در عرض 10 دقیقه یک تصویر دقیق از آیفون قدیمی ام داشتم، حتی آخرین برنامه های باز شده به نظرم می رسد!!! تمام دادههای موجود در آیفون در حدود 10 دقیقه در آیپی جدید دانلود میشوند (من یک آیفون کامل 32 گیگابایتی با دادههای آیفون اول چندین سال پیش تا آن زمان داشتم، بنابراین ممکن است حتی کمتر طول بکشد) در آیپی جدید، حتی با ترتیب برنامه هایی که باید (البته) هنوز دانلود شوند، اما همه آنها حاوی داده هایی هستند که در آیفون قبلی موجود بودند. تنها کاری که باید به صورت دستی انجام دهید این است که وارد برنامه هایی شوید که به آن نیاز دارند.)
لازم نیست بترسی! iCloud در دستگاه های اپل 100٪ در همه جا کار می کند. حدود 2 ماه پیش یک iP5 خریدم و در یک کافی شاپ روی وای فای نشستم، پسورد اکانت اپل را وارد کردم و در عرض 10 دقیقه یک تصویر دقیق از آیفون قدیمی ام داشتم، حتی آخرین برنامه های باز شده به نظرم می رسد!!! تمام دادههای موجود در آیفون در حدود 10 دقیقه در آیپی جدید دانلود میشوند (من یک آیفون کامل 32 گیگابایتی با دادههای آیفون اول چندین سال پیش تا آن زمان داشتم، بنابراین ممکن است حتی کمتر طول بکشد) در آیپی جدید، حتی با ترتیب برنامه هایی که باید (البته) هنوز دانلود شوند، اما همه آنها حاوی داده هایی هستند که در آیفون قبلی موجود بودند. تنها کاری که باید به صورت دستی انجام دهید این است که وارد برنامه هایی شوید که به آن نیاز دارند.)
من هم باید اینجا مشارکت کنم.. به عنوان یک توسعه دهنده مبتدی، سعی می کنم iCloud را در برنامه خود نیز پیاده سازی کنم.. هنوز هیچ اطلاعاتی از دست نداده ام.. همه چیز همانطور که باید کار می کند.. حدس می زنم که هستم خوش شانس.. تنها چیزی که ممکن است دوست نداشته باشم همگام سازی سرعت است.. بارگیری تقریباً 1 مگابایت داده قطعاً بیشتر از دانلود یک داده کلاسیک 1 مگابایتی از اینترنت طول می کشد. اما از آنجایی که همه گزارش ها دانلود می شوند قابل قبول است. .. بله، باگ کردن IP یا iPad خود بسیار آسان است به طوری که نیاز به حذف تمام داده ها از iCloud و سپس بازیابی کل گوشی دارد.. (داده ها در آنجا باقی می مانند اما در صورت اشتباه بودن تنظیمات خطا ایجاد می شود.. ) اما همه چیز در 10 دقیقه بازیابی می شود و این مشکل فقط مربوط به توسعه دهندگان است.. برای یک فانی معمولی این اتفاق نمی افتد.. در iOS6 قطعاً مشکل عمده ای با iCloud در قالب داده های Core ندارم و تا حدودی مخالفم با مقاله
اوه خوب، اولین جمله "استیو جابز سرویسی را معرفی کرد که هنوز هم بسیاری از توسعه دهندگان را امروز می ترساند. چیزی جز iCloud نیست. و این واقعیت که در واقع فقط یک مشکل با همگام سازی داده های هسته است، ما در مورد 12 خط پایین خواهیم فهمید.
جهنم، به خاطر احساسات گرایی، حقایق باید خم شوند تا آنها را حتی بیشتر احساس کند.