Zaujímalo vás niekedy, prečo je aplikácia Facebook pre iOS taká pomalá? Vysvetlili sme si to všetko predtým, ale ide o to, že aplikácia je obalom Objective C okolo komponentu UIWebView, ktorý načítava surové údaje HTML Facebooku.
Prečo je to také pomalé? UIWebview nie je príliš rýchly a má strašné ukladanie do vyrovnávacej pamäte, čo vyžaduje, aby aplikácia Facebook znova stiahla celú vašu stenu vždy, keď potrebuje vykonať aktualizáciu, a nie kúsky, ktoré potrebuje.
Podľa The New York Times, to sa však čoskoro môže zmeniť a Facebook by mohol raz a navždy zbaviť priepasti UIWebview.
Nick Bilton uvádza:
Jeden z inžinierov Facebooku uviedol, že nová aplikácia bola vytvorená predovšetkým pomocou programovacieho jazyka Objective-C, ktorý sa používa na vytváranie aplikácií pre iOS. Mnoho komponentov aktuálnej verzie aplikácie Facebook je vytvorených pomocou HTML5, webového programovacieho jazyka.
Aktuálna verzia aplikácie je v podstate shell Objective-C s webovým prehliadačom vo vnútri. Čo sa týka rýchlosti, je to ako vložiť motor inteligentného auta do karosérie Ferrari.
Aplikácie, ktoré sú prevažne vo formáte HTML5, vykresľujú väčšinu komponentov aplikácie ako webovú stránku a sťahujú obrázky a obsah z webu priamo do aplikácie. Objective-C má opačný prístup, pričom naplno využíva hardvér v iPhone a potom zabudovanie väčšiny funkcií priamo do aplikácie, takže od nej musí zhromažďovať menej informácií sieť.
Mal som možnosť vidieť zatiaľ nevydanú aplikáciu pre iPhone a jej rýchlosť. Rýchlo horiace. Dvaja vývojári, s ktorými som hovoril, uviedli, že novú aplikáciu v súčasnej dobe testujú vývojári Facebooku a očakáva sa, že bude aktualizovaná toto leto.
Inými slovami, namiesto toho, aby aplikácia Objective C vystrekla výsledky v HTML5, nová aplikácia Facebooku by videla z Facebooku odoslané priamo do iPhonu vo formáte kompatibilnom s Objective C bez toho, aby ste na zobrazenie museli používať prehliadač iPhone v aplikácii UIWebview HTML.
To znie ako zdravý prístup. Neviem sa dočkať
Zdroj: New York Times