Android vs iOS: kas platforma ir labākais izstrādātājiem
Makradar Tehnoloģijas / / December 19, 2019
Android vs iOS. Eternal tēma tiešsaistes cīņas, kas jau ir pieklājīgi visi podnadoest. Nelietojiet skriešanās, lai iziet tekstu raksta, un uzreiz pāriet uz izplūdums viņa vienīgo pareizo viedokli komentāros,. Šodien mēs runājam atkal par to, kura sistēma ir labāka, bet citādā veidā.
Izstrādātāji - tie, kas rada galveno daļu no jebkuras platformas, ti, lietojumprogrammu. Tas ir no izstrādes rīku kvalitāti, tas nodrošina platformu atkarīgs gala rezultātu. Tātad, ar kādiem sistēma ir labāk rakstīt? Atbildēt uz šo jautājumu pieredzējis pieteikumu attīstītājs, kas bija apgaismota App Store un Google Play.
Izvēle platforma - būtiska problēma jebkuram jaunam projektam. Android vai iOS? Ņemot vērā jaunākās ziņas, ka Android ir veiksmīgi iekarojis 80% no tirgus, izvēle kļūst vēl sarežģītāka. Tas nav svarīgi, ko vadītājiem un citiem ne pārāk zinoši ar tehniskajiem aspektiem, kam jāpievērš uzmanība, cilvēki domā par to. Vēl viena lieta - izstrādātājiem.
Kāda ir viņu viedoklis? Par to vai platforma priekšrocība ir tieši atkarīga no tās spējas veikt savu dzīvi labāku.
Un ar "viņi" es domāju "mūsu." Papildus autora aktivitātēm TechCrunch, es esmu attīstot HappyFunCorp. Turklāt, ne tik sen, es izveidojis duetu opensorsnyh pieteikumu, izmantojot savu projektu-mājdzīvnieku. Tas ir šie pieteikumi es izmantot salīdzināšanai.
Par ierakstu: Man agrāk bija uzrakstīt dažas Android un iOS lietojumprogrammas, gan personīgai lietošanai un darbam. Jo īpaši, es uzrakstīju Mobile klients savu ziņu apkopotājs ScanvineTas apkopo Nepieredzēti populāri stāsti no sociālajiem medijiem. Pirmkods manu pieteikumu var atrast GitHub (Android | iOS) Un paši pieteikumi ir pieejami google Atskaņot un App Store.
Nu, ļaujiet kaujas sākuma.
trešdiena
Jūs joprojām varat rakstīt kodu teksta redaktoru, un daudzi to dara tik tālu, bet attiecībā uz sniegums ir vairāk lietderīgi izmantot IDE (Integrated Development Environment - IDE).
Attiecībā uz Apple, mums ir Xcode, un strādāt šajā vidē - baudu. Tas ir elastīgs, ātrs, spēcīgs un spēj palīdzēt, bez pārāk uzmācīgi. Un viņa kļūst labāk, neskatoties uz grūtajiem un paranojas pasākumiem, ko Apple, kas veikti, lai saglabātu pilnīgu kontroli pār iOS lietojumprogrammas un ierīces. Atkļūdotājs norit raiti, un simulācija - ātri un atsaucīgi.
Kas par Android? Ak, Android. Šobrīd faktisko izstrādes vide, tā ir Eclipse, nedaudz Android pielāgot spraudņus, un tas obscenely slikti. Lēni, lempīgs, neloģiski, bieži atklāti neizprotama, slikti izstrādāts, pārāk sarežģīta - īsts haoss. Tās atkļūdotājs ir tik neērti, ka lielāko daļu laika es pavada pilnveidojam baļķiem, savukārt ar Xcode manā rīcībā reāls instruments-hunter bugs. Neaizmirstiet par emulatoru Android, kas pirmo reizi aizņem dažas minūtes, lai lejupielādētu un tad viņš nevarēja izveidot savienojumu ar ADB.
Lai būtu godīgi teikt, ka Google ir informēta par šo problēmu, un viņi strādā pie jaunu Android Studio IDE:
Pašlaik Android Studio ir pieejams kā agrīnā priekšskatījumu. Dažas funkcijas nevar izveidot, vai netiek īstenoti, kas varētu izraisīt kļūdas. Ja lietošana nepabeigtu produkta izraisa jūsu diskomfortu, tad jūs varat lejupielādēt un turpināt izmantot ADT Bundle (Eclipse spraudnis ar ADT).
Jauki redzēt, ka viņi strādā pie šīs problēmas, bet joprojām pārsteidz - pēc 4 ar pusi gadus pēc iegādes manu pirmais Android līdzīgs putru joprojām ir robeža pilnību, kuru varēja panākt izstrādes vidi Android.
Lūk pārspēj iOS, bez nosacījumiem.
konfigurēšana
Saskaņā ar finiera Xcode un Objective-C ir paslēptas šausmas Lovecraft no laikmetā septiņdesmitajos programmēšanas. Tikai kidding, es jokoju... bet tomēr. Makro un header failus, projekti, mērķi, shēmas un montāžas konfigurācijas, un biedējošs, biedējošas saraksts montāžas parametriem. un vēl neticami atklājumi stilā "Ak, jūsu trešās puses kods neatbalsta ARC? Vienkārši pievienojiet karogu -fno-objc-loka ». Just? Nē!
In Android jums ir manifesta faila, un Eclipse parasti pilnībā atjauno lietotne katru reizi, kad jūs saglabāt failu. Es vēlētos lielāku skaidrību, ja jūs, piemēram, jūs saņemat kļūdas paziņojumu sakarā ar to, ka pareizi konfigurētu noteikumu, bet tas ir neliels defekts. Android lietojumprogrammu konfigurēšana ir vienkāršs un elegants.
Šeit pārspēj Android.
interfeisa dizains
Šķiet, ka Apple ir noteikti izkļūt uzvarošs. Ar to dizainers, jūs varat viegli un ātri izveidot vienkāršu un jauku meklē interfeisu. Problēma ir tā, ka, jo ilgāk es strādāju ar dizaineru, jo mazāk man tas patika. Tas ir vēl viens laiks, kad jūs atvērtu konfigurācijas sarežģītība - rīks ir ideāls, lai izveidotu vienkāršas lietas, bet ar attīstību Pieteikums vienkāršas lietas pēkšņi kļūt sarežģīta, un es tiešām nepatīk šie universālu storyboards, kas Apple pievienoti aptuveni pirms gada.
Uz Android, teorija tiek nodrošināts salīdzināmas vizualizācijas rīkus, bet praksē rakstīt XML failiSatur zīmēšanas norādījumus, ka noteiktā veiksmi noved pie pareizā displejs pieteikuma par visiem dažādiem formātiem ekrāniem Android ierīcēm. Apple virzās tāpat, un to auto izkārtojums skaidri uzasināti turpmāko paplašināšanos variācijai ekrāniem iOS ierīcēs.
Tajā pašā laikā, Android dod izstrādātājiem ikonu kopasTā kā iOS izstrādātāji ir spiesti vērsties pie trešo personu pakalpojumiVai izdarīt savas ikonas.
Šajā kārtā uzvarētājs izvēlēties grūtāk, bet es dos iOS priekšroku divu iemeslu dēļ. Pirmkārt, tas joprojām ir daudz vieglāk - tikai 3 ekrāna izmērs (ieskaitot iPad) un 2 formātā proporcijas. Android daudzveidība šajā sakarā piebilst sarežģītību. Otrais punkts ir apelācijas neizpildes vizuālo elementu (pop-up izvēlnes, vēstījumiem, un tā tālāk). IOS tas viss izskatās daudz pievilcīgāka.
Šeit pārspēj iOS.
valoda
Android programmas ir rakstītas Java, iOS - par Objective-C. Ir izņēmumi, kas līdzīgas XamarinBet vairumā gadījumu šāds sadalījums ir derīgs.
Es iemācījos rakstīt Java, un sākumā nav īpaši domājuši par Objective-C, lielā mērā pateicoties tās lielgabarīta.
Virkne, piemēram:
String s2 = s1.replace ( "ABC", "XYZ");
Pagriežas ar viņu:
NSString * s2 = [s1 stringByReplacingOccurrencesOfString: @ "ABC" withString: @ "xyz"];
Bet procesā atklātu valodu man tiešām patika. Viņš ir labāks un tīrāks nekā Java.
Šajā gadījumā arī ir plusi Java. Piemēram, vienkāršs slazdu un izsekot kļūdas. Pēdējos gados, Android ir vēl viens ļoti būtiska priekšrocība attiecībā uz atkritumu savākšanu, kas ir, automātiska attīrīšana atmiņas no nevajadzīgiem priekšmetiem, bet tagad iOS zina to pašu, un patiesībā ir priekšrocība pienācis veltīgs. Ņemot vērā to, ka pēdējā uzvara iet uz iOS šeit.
Šeit pārspēj iOS.
API
In Android un iOS ir milzīgs bibliotēka programmatūru pieejama izstrādātājiem, un vispārīgi runājot, tie ir diezgan līdzīgi: API darbība tālruņa funkcijām un sakaru, API, lai piekļūtu tīklam, arsenāla skatītāju, ieskaitot spēcīgu Webview - praktiski klons pilna pārlūkprogramma.
Lielākā daļa darbu tiek veikta ar kontrolieriem, un vispārējā iOS ViewController ir ekvivalents Android darbības.
Kurš tiešām nav Android, jo tas ir pilnīgi analogs Core datu struktūra. No visa sistēma ir tīrāka un labāk izstrādāts. Piemēram, vienkārši salīdzināt šisdivi klasē iOS, kurā veic lielāko daļu darba pieteikumā, ar šistrīsekvivalents klases Android. Galu galā, es daudz labprātāk darbam ar iOS CollectionViewControllerNekā ar Android ListAdapter.
Vēl viens svarīgs rādītājs: skaits koda rindiņas. Mana versija pieteikumu abām platformām ir gandrīz identiskas funkcijas un funkcijas, bet iOS tos īstenot Pagāja manu 1596 koda rindiņas, ieskaitot header failus, un lai izveidotu Android versiju ar tām pašām funkcijām, 2109 rindas. Atšķirība ir 32%.
Šeit pārspēj iOS.
internets
Šodien lielākā daļa pieteikumu ir vairāk rokasgrāmatas internetā, nevis savrupiem programmām. Tas ir ļoti svarīgs punkts, un tas būtu jāņem vērā atsevišķi. Arsenālā abām sistēmām ir vairāki instrumenti un API, lai īstenotu sadarbību ar tīklu. Arī abas platformas īstenot praktiski pilnvērtīgs pārlūks, kas var tikt iebūvēts app, kā jums patīk, un kur jums iet.
Savienojumiem ir fonā un netraucē pašā pieteikumā. Lai īstenotu grafiskā Android izmanto AsyncTask. Tas darbojas ļoti labi, un ļauj viegli noteiktVai lietotājs tīmeklī brīdī. iOS arī piedāvā līdzīgas iespējas, bet tās tiek īstenotas salīdzinoši zemā līmenī un nav apmierinātu izstrādātājiem.
Tomēr ir daudzi trešo personu bibliotēkām, open source, un tie padara dzīvi daudz vieglāku. Es izmantoti AFNetworking, un tā darbojas tikpat labi, kā tas ir minēts sludinājumā.
Šeit pārspēj noklusējuma Android un iOS, izmantojot trešo personu bibliotēkām.
koplietošana
Cik viegli jums dalīties jebkuru konkrētā pieteikuma Facebook, Twitter, Evernote, un citiem pakalpojumiem? Šķiet, ka šī būs pirmā kārta, kurā Android uzvarēs 100% nokauts: tas ir spēcīgs sistēmu mijiedarbības starp lietojumprogrammām sauc nolūki, un kopumā, Android ir daudz lojālāki uz pieprasījumu un datu pārraide starp lietojumprogrammas.
Kopumā, Apple ir nokļuvuši būtiski konkurents sharinga iespējām. Jūs nevarat veikt manu vārdu, pārbaudiet funkcija kods "Share stāsts", kas Scanvine uz Android un iOS. Vienīgais iemesls, kāpēc iOS kodu vairāk - klātbūtne tajā elastīgāku izsekošanai pakalpojumā Google Analytics, nevis Android.
Tad izdarīt.
fragmentācija
Tad man nevajag teikt daudz. Tomēr, Google cenšas izmantot Interesants defragmentation stratēģijaTāpēc, ka īsā laikā prece būs atkārtoti jāpārbauda.
Šeit pārspēj iOS.
pieteikuma publikācijā
Publicēšana Android pieteikumu ir ļoti vienkārša. Instruments Eclipse ļauj ātri izveidot pieteikumu, un jūsu rokās jau ir APK failu. Iesniedziet to uz e-pastu, ievietot internetā, vai lejupielādēt pakalpojumā Google Play, padarot to pieejamu pāri (gandrīz) visā pasaulē tikai vienu stundu. Tad tas kļūst iespējams uzraudzīt instalācijas statistiku un avāriju, ziņo līdz noteiktam koda rindu, kuru dēļ pieteikums avārija. Ja nepieciešams, varat atjaunināt izskrējienu uzreiz.
Publikācija App Store - tas ir murgs. Mans draugs iesaka piešķirt attīstībai kalendāra vismaz dienā uz karu ar sertifikātiem un izplatīšanas profiliem. Nav svarīgi, cik reizes jūs esat darījuši to pirms, un cik daudz vieglāk mēģina padarīt procesu nākamo versiju Xcode - jums joprojām būs daudz problēmu. Application testēšana kļūst vēl vairāk problēmu, ja jūs izmantojat TestFlight. Pievienot šo iTunes Connect, kas nav iet uz jebkuru salīdzinājumu ar Google Play izstrādātāja konsolē.
Lūk pārspēj Android, bez nosacījumiem.
uzvarētājs
Tā kļūst par iOS, turklāt ar zināmu rezervi. Mums ir priekšrocības Android, bet kopumā uzrakstīt labu pieteikums iOS joprojām ir daudz vieglāk, nekā ar Android. Pievienot šo faktu, ka iOS lietotājiem vairāk nekā maksātspēju, un jūs saņemsiet atbildi uz jautājumu, kuru platforma jābūt prioritātei starta. Iespējams, tad plaisa tiks samazināta pēc atbrīvošanas no Android Studio, tādējādi ļaujot atrisināt dažas problēmas... bet ne visiem.
Starp citu, mans galvenais telefons - Nexus 4, un es esmu ļoti apmierināta.
(izmantojot)