Pet načina za ubrzanje vaših iOS aplikacija [AltWWDC]

SAN FRANCISCO, CA Collin Donnell želi da programeri aplikacija uče iz njegovih grešaka.

Donnell, stalni programer iOS-a od 2008. godine čiji krediti za aplikacije uključuju Pinbook za Pinboard, podijelio je nekoliko savjeta prepunoj sobi na adresi AltWWDC, koje imamo biosvinad poput zategnute futrole za iPad. Podijelio ih je na praktične i filozofske, ali oni se nekako spajaju.

Evo nekih njegovih glavnih smjernica:

  • Usporite na početku.

Razmislite još puno prije nego što počnete i prvo osmislite kôd.
"Kao koderi, želimo pritisnuti gumbe od početka, ali to nije uvijek najbolji pristup."
On preporučuje da odete na ploču za crtanje OmniGraffle ili aplikaciju za mapiranje uma kao što je Čvor uma kako biste skinuli svoje ideje prije nego počnete tipkati. „Dizajniranje koda daje putokaz, na taj način možete vidjeti gdje su uska grla unaprijed. Često radite iste greške i gledajući to prije nego što počnete, to ponekad može spriječiti. "

  • Ako želite brzo, provjerite vozite li se Ferrarijem, a ne Fiatom.

Donnell priznaje da je bio "prilično naivan" pri testiranju preuzimanja i raščlanjivanja podataka za Pinbook, pin board čiji API djeluje pomalo kao Delicious. Činilo se da je dovoljno brz kad je to isprobao na vlastitim 300 -tinjak oznaka, ali pokazalo se da su teški korisnici imali više od 30.000 ili 40.000 oznaka. Aplikacija definitivno ne bi bila korisna ako je potrebno 10 minuta za sinkronizaciju.

  • Ako vam trebaju visoke performanse, nemojte se bojati krenuti u drugom smjeru, pokušajte nešto malo teže ili naučite nešto.

Trebao je to vrijeme kašnjenja smanjiti sa lagodnih sedam minuta na nekoliko brzih sekundi, i način na koji su završili zahtijevali su promjenu u LibXML streaming SAX parseru, koji se može preuzeti kao takav raščlanjuje. Drugi pojačivač brzine bio je pronaći način za dohvaćanje objekata koji su ažurirani bez zahtjeva za dohvaćanje tijekom raščlanjivanja. Pouka je bila: koliko god predmemoriranja morali napraviti unaprijed, uvijek će biti brže od hrpe zahtjeva za dohvaćanje. Dobivanje potpisa promjene pokazalo bi je li se nešto promijenilo i to bi učinio jedan zahtjev za dohvat s osnovnim podacima.

“Nisam znao što će raditi i nije bilo puno dokumentacije. To je bilo teško za mene da se sudarim ”, rekao je. "Ali ako vam se to ne sviđa jer su teške stvari zabavne, možda to nije za vas."

  • Google je možda vaš najbolji prijatelj

Donnell se kune u ovu metodu zbog problema s performansama, osobito kad mu je uručena aplikacija koju je netko drugi razvio.
Prvo učitajte aplikaciju u instrumente, a zatim prilagodite postavke tako da vam prikazuje obrnuto stablo poziva. U tom trenutku imate ideju što uzrokuje problem. Zatim Donnell kaže da to lijepi u Google, dodajući riječ "sporo" iza. „Iznenadili biste se koliko je puta netko napisao zaista detaljan blog post s objašnjenjem zašto je to brže pretvorite ga u NSData i tamo dohvatite raspon usporedbe ”i voila’, vaša tromija aplikacija sada se ponovno uključuje staza.

"Svi volimo pisati postove na blogu o svim zabavnim stvarima koje otkrijemo", rekao je, pa to iskoristi. S druge strane: pomozite onima koji dolaze nakon vas podijelivši kul stvar koju ste saznali.

  • Šest stupnjeva Kevina Bacona zabavno je na zabavi, ali ne za vaš kôd

Kad god možete, dajte prednost izravnijoj vezi u odnosu na manje izravnu, tako da možete slijediti put koda od komponente do komponente. I neka te komponente budu što manje, tako da ih možete razdvojiti kako biste ubrzali stvari. “Ako je pisanje delegata više tipkanje, ali znam da je to bolje učiniti, to ću i učiniti... Kad učinim nešto manje izravno, to na kraju stvara probleme. Ne možete shvatiti zašto postoje šest stupnjeva Kevina Bacona slanje obavijesti ”i zaglavili ste.

“Nisam dovoljno pametan da napišem tako loš kod. Za mene je loš kôd koji ne radi dobro obično kompliciran kôd, pa ga obično držim jednostavnim. Da sam pametniji ili da imam diplomu računarstva, vjerojatno bih bio bolji u pisanju stvari koje su imale lošiji učinak. ”

Najnoviji post na blogu

Zaposlenici Applea obećavaju da će iPad 3 imati "zaista nevjerojatan" zaslon
September 10, 2021

Zaposlenici Applea obećavaju da će iPad 3 imati "zaista nevjerojatan" zaslonNakon jučerašnje procurile slike a Oštri zaslon visoke rezolucije navod...

| Kult Maca
September 10, 2021

Microsoft je započeo testiranje podrške za novu dodirnu traku MacBook Pro u sustavu Office. Testeri za pretpregled mogu uživati ​​u programu Word, ...

Otkrijte sve što volimo o iTunes -u 11 na našem najnovijem CultCast -u
September 10, 2021

Otkrijte sve što volimo o iTunes -u 11 na našem najnovijem CultCast -uiTunes 11 mogao bi biti najbolja verzija do sada, s prekrasnim novim korisnič...