"Android" vs "iOS": kuri platforma yra geriausias kūrėjams
Makradar Technologijos / / December 19, 2019
"Android" vs "iOS". Amžina tema internetiniams kovose, kuris jau padoriai visą podnadoest. Neskubėkite praeiti straipsnio tekstą ir iš karto pereiti prie jo tik teisingai nuomonę komentaruose išliejimas. Šiandien mes vėl kalbame apie kuri sistema yra geresnė, tačiau kitokiu būdu.
Kūrėjai - tie, kurie sukurti esminė bet kurios platformos, ty programas. Tai plėtros priemonių kokybė, tai suteikia galimybę priklauso nuo galutinio rezultato. Taigi, kokiomis sistema yra geriau rašyti? Atsakyti į šį klausimą patyręs Application Developer, kuris turėjo būti apšviesta App Store "ir" Google Play ".
Iš platformos pasirinkimas - pagrindinė problema bet kokį naują projektą. "Android" ar "iOS"? Atsižvelgiant į neseniai žinia, kad "Android" sėkmingai perimta 80% rinkos, pasirinkimas tampa dar sunkiau. Nesvarbu, ką vadybininkai ir kiti ne per gerai su techniniais aspektais emisijos žmonėms apie tai galvoti. Kitas dalykas - kūrėjai.
Kas yra jų nuomonė? Iš šio ar kad platforma privalumas yra tiesiogiai priklausoma nuo jos gebėjimo daryti jų gyvenimą geresnį.
Ir "jie" Aš turiu galvoje "Mūsų". Be autoriaus veiklą ne TechCrunch, aš vystosi HappyFunCorp. Be to, ne taip seniai, aš sukūriau duetas opensorsnyh programas per savo projekto-augintiniui. Tai šie prašymai aš naudoju palyginimui.
Apmaudu: Aš anksčiau parašyti keletą Android "ir" iOS "programų, tiek asmeniniam naudojimui ir darbui. Visų pirma, aš parašiau Mobilus klientas jūsų naujienų skaitymo ScanvineKuri renka neįprastai lankytinos istorijų iš socialinės žiniasklaidos. Kodo mano taikymo galima rasti GitHub (androidas | "iOS"), O patys prašymai yra prieinami "Google Play" ir "App Store".
Na, tegul mūšis prasidės.
trečiadienis
Jūs vis dar galite parašyti kodą teksto redaktoriumi, ir daugelis daro iki šiol, tačiau, kalbant apie veikimas yra labiau naudinga naudoti IDE (integruota kūrimo aplinka - IDE),.
Jei "Apple" atveju, mes turime Xcode, ir dirbti šioje aplinkoje - malonumas. Tai lankstus, greitas, galingas ir galėtų padėti, be pernelyg įkyrūs. Ir ji gerėja, nepaisant sunkių ir paranojikas priemones, kurių buvo imtasi Apple išlaikyti visišką kontrolę "iOS programas ir prietaisus. Debugeris veikia sklandžiai, ir imitavimo - greitai ir reaguoja.
Ką apie "Android"? Oh, "Android". Šiuo metu faktinis kūrimo aplinka pagal tai Eclipse, iš "Android" sauja pritaikyti papildinius, ir ji Nepadorumas blogai. Lėtas, nerangus, nelogiška, dažnai atvirai nesuprantama, blogai suprojektuota, per daug sudėtinga - tikra netvarka. Jo derintojas tokia nepatogi, kad didžiąją laiko dalį praleidžiu per skardinimo su rąstų, o su Xcode mano ginklą Nekilnojamasis įrankių medžiotojas klaidas. Nepamirškite apie emuliatorius Android ", kuris pirmą kartą užtrunka keletą minučių atsisiųsti ir tada jis negalėjo prisijungti prie ADB.
Norėdami būti teisinga pasakyti, kad "Google" žino apie šią problemą ir jie dirba nauja "Android" Studija IDE:
Šiuo metu "Android" Studio yra prieinamas kaip pradžioje peržiūra. Kai kurios funkcijos negali nustatyti, ar nėra įgyvendinta, kuris gali sukelti klaidų. Jei nebaigto produkto naudojimas sukelia jūsų diskomfortą, tada jūs galite atsisiųsti ir toliau naudoti ADT Bundle (Eclipse su ADT).
Malonu matyti, kad jie dirba problemos, bet vis dar stebina - po 4 su puse metų po įsigijimo Mano Pirmasis Android kaip netvarka yra vis dar tobulumo ribą, kuri galėjo pasiekti kūrimo aplinka "Android".
Čia beats iOS, besąlygiškai.
konfigūravimas
Pagal Xcode fanera ir Objective-C yra paslėpta Siaubo Lovecraft nuo aštuntojo programavimo eros. Just kidding, aš nejuokauju... bet vis tiek. Makrokomandos ir header files, projektai, tikslai, sistema ir surinkimo konfigūraciją ir bauginantys, bauginantis sąrašas surinkimo parametrus. ir daugiau neįtikėtinas atradimai į stilių "O, trečiosios šalies kodas nepalaiko ARC? Tiesiog pridėkite vėliavos -fno-objc lankinis ». Tiesiog? Ne!
Android turite akivaizdžią failą, užtemimas paprastai visiškai atstato app kiekvieną kartą jums išlaikyti failą. Norėčiau daugiau aiškumo, kai jūs, pavyzdžiui, gaunate klaidos pranešimą dėl to, kad tinkamai sukonfigūruoti taisyklę, bet tai nepilnametis defektas. Konfigūravimas Android taikymas yra paprastas ir elegantiškas.
Čia beats "Android".
sąsajos projektavimas
Atrodytų, kad "Apple" tikrai atsiras pergalę. Su jų dizaineris galite lengvai ir greitai sukurti paprastą ir gražią ieškote sąsaja. Problema yra ta, kad kuo ilgiau dirbau su dizaineriu, tuo mažiau man patiko. Tai dar kartą, kai atidarote konfigūracijos sudėtingumą - įrankis idealiai tinka kuriant paprastus dalykus, bet su raidos Prašymas paprasti dalykai staiga tampa sudėtinga, ir aš tikrai ne taip, kaip šių Multiscreen maketų, kuriuos "Apple" pridėtinės apie prieš metus.
"Android", teorija yra numatyta palyginamus vizualizacijos priemones, tačiau praktikoje rašote XML failaiKurių sudėtyje yra piešimo instrukcijas, kad tam tikrų laimingos veda teisingai ekrane paraiškos dėl visų formatų ekranus "Android" įrenginių įvairovė. "Apple" juda tuo pačiu būdu, taip pat jų Auto išdėstymas aiškiai aštrus plėsti ateityje variantų ekranai "iOS" įrenginiuose.
Tuo pačiu metu, "Android" suteikia kūrėjams icon rinkiniaiKadangi iOS kūrėjai yra priversti kreiptis į trečiųjų šalių paslaugosAr piešti savo piktogramas.
Šiuo turo nugalėtojas pasirinkti sunkiau, bet duosiu iOS pirmenybę dėl dviejų priežasčių. Pirma, ji vis dar yra daug lengviau - vos 3 ekrano dydis (įskaitant "iPad") ir 2 formatas santykis. "Android įvairovė šiuo atžvilgiu priduria sudėtingumą. Antras punktas yra įsipareigojimų nevykdymo vizualinių elementų (pop-up meniu, pranešimus ir tt) apeliacinį skundą. IOS viskas atrodo daug patrauklesnis.
Čia beats "iOS".
kalba
Android programos yra parašyta "Java", "iOS" - objektyviais-C. Yra išimčių, pavyzdžiui, XamarinTačiau daugeliu atvejų toks skirstymas yra galiojantis.
Aš išmokau rašyti Java, ir iš pradžių ne itin pagalvojau apie Objective-C, daugiausia dėl savo gabaritų.
Eilutė, pavyzdžiui:
Eilutė S2 = s1.replace ( "ABC", "xyz");
Kreipiasi į jį:
NSString * S2 = [S1 stringByReplacingOccurrencesOfString: @ "ABC" withString: @ "xyz"];
Tačiau šiame procese atrasti kalbą Man labai patiko. Jis geriau ir švaresnis nei Java.
Šiuo atveju, taip pat, yra privalumus "Java". Pavyzdžiui, paprasta gaudyklė ir mikroelementų klaidų. Per pastaruosius kelerius metus, "Android" buvo dar vienas labai didelis privalumas kalbant apie atliekų surinkimo, tai yra, Automatinis valymas atmintį nuo nereikalingų daiktų, bet dabar "iOS" žino tą patį, ir iš tiesų yra privalumas sužlugti. Atsižvelgiant į tai, kad paskutinis pergalė eina į iOS čia.
Čia beats "iOS".
API
"Android" ir "iOS" turi didžiulę biblioteką programinė įranga prieinama kūrėjams, ir apskritai, jie yra gana panašūs: API veikimas telefono funkcijų ir ryšių, dėl prieigos prie tinklo, kad žiūrovams arsenale API, įskaitant galingą Webview - beveik iš visiškai klonas naršyklė.
Dauguma darbų yra padaryta su valdikliai ir apskritai "iOS ViewController yra" Android "Veikla ekvivalentas.
Kuris tikrai neturime "Android", nes ji yra visiškai analoginis pagrindinių duomenų bazė. Apskritai, sistema yra švaresnis ir geriau sukurta. Pavyzdžiui, tik palyginti taidu klasė iOS, kuris atlieka didžiąją darbo dalį paraiškoje, su taitryslygiavertis klasių Android. Galų gale, aš labai norėčiau dirbti su "iOS" CollectionViewControllerNei "Android" ListAdapter.
Kitas svarbus rodiklis: eilučių kodo numeris. Mano versija abiejų platformų taikymo yra beveik identiški savybių ir funkcijų, tačiau iOS jas įgyvendinti Jis paėmė mano 1596 eilučių kodo, įskaitant header files, ir sukurti "Android" versiją su tomis pačiomis funkcijomis, reikalingų 2109 eilučių. Skirtumas yra 32%.
Čia beats "iOS".
Internetas
Šiandien didžioji dauguma programų yra daugiau gidai prie interneto, o ne savarankiškas programas. Tai labai svarbus dalykas, ir ji turėtų būti laikoma atskirai. Abiejų sistemų arsenalą turi daug priemonių ir API bendradarbiavimo su tinklo įgyvendinimą. Taip pat abiejų platformų įgyvendinti praktiškai visavertį naršyklę, kuri gali būti pastatytas į app, kaip jums patinka, ir visur, kur jums eiti.
Jungtys turi paleisti fone ir nesikiša pačiame ieškinyje. Įgyvendinti interfeiso "Android" naudojamas AsyncTask. Jis veikia labai gerai ir leidžia lengvai nustatytiAr vartotojas yra tuo momentu internete. "iOS" taip pat siūlo panašius gebėjimus, tačiau jie įgyvendinami gana žemo lygio ir neatitinka kūrėjai poreikius.
Tačiau, yra daug trečiųjų šalių bibliotekos, atviro kodo, ir jie padaryti gyvenimą daug lengviau. Aš AFNetworking, ir ji veikia taip pat gerai, kaip ji yra nurodyta skelbime.
Čia pranoksta numatytąjį "Android" ir "iOS", naudojant trečiosios šalies bibliotekas.
dalijimasis
Kaip lengvai galite pasidalinti bet konkretaus taikymo Facebook, Twitter, Evernote ir kitas paslaugas? Atrodo, kad tai bus pirmasis turas, kuriame "Android" laimės 100% nokautas: ji turi galingą sistemą sąveika tarp taikomųjų programų, vadinamų Ketinimų, ir apskritai, "Android" yra daug daugiau lojalių į prašymą ir duomenų tarp perdavimo paraiškas.
Apskritai, "Apple" pasivijo žymiai konkurentas sharinga galimybes. Jūs negalite imtis savo žodį, patikrinkite funkcijos kodas "Share istorija" Scanvine nuo androidas ir "iOS". Vienintelė priežastis, kodėl "iOS kodas daugiau - Į jį buvimas lanksčiau sekimo Google Analytics, o ne į" Android ".
Tada piešti.
skilimas
Tada man nereikia sakyti daug. Tačiau "Google" bando naudoti Įdomu defragmentavimo strategijaTaip, kad per trumpą laiką šis klausimas bus svarstomas iš naujo.
Čia beats "iOS".
Leidinyje paraiškos
Skelbiamas "Android" programų yra labai paprasta. Įrankių Eclipse leidžia jums greitai sukurti programą, ir jūsų rankose jau turite APK failą. Pateikti ją elektroniniu paštu, rašyti internete, arba atsisiųsti iš "Google Play", kad ji būtų prieinama visoje (beveik) pasaulyje vos vieną valandą. Tada ji tampa įmanoma stebėti įrengimas statistiką ir strigčių ataskaitas-iki tam tikro kodo eilutę, dėl kurių paraiška sugenda. Jei reikia, galite atnaujinti išriedėti iš karto.
Paskelbimas "App Store" - tai košmaras. Mano draugas pataria skirti į kalendorių vystymosi bent dieną kare su sertifikatais ir paskirstymo profilius. Nesvarbu, kiek kartų jūs tai padarė anksčiau, ir kaip daug lengviau ji bando padaryti kitą versiją Xcode procesą - jūs vis dar bus daug problemų. Prašymas bandymai tampa dar didesnė problema, jei jūs naudojate TestFlight. Pridėti į šią iTunes Connect, kuris neturi eiti į bet palyginus su "Google Play" kūrėjų pulto.
Čia beats Android, besąlygiškai.
nugalėtojas
Jis tampa iOS, be to su tam tikra atsarga. Mes turime Android privalumų, bet apskritai parašyti gerą paraišką iOS dar daug lengviau, nei pagal "Android". Pridėti į tai, kad "iOS" vartotojai daugiau nei mokumo ir gausite į klausimą, iš kurių platforma turėtų būti prioritetas paleisties atsakymą. Tikriausiai, atotrūkis bus sumažintas po "Android" Studio išleidimo, todėl galima išspręsti tam tikras problemas... bet ne visi.
Beje, mano pagrindinis telefonas - Nexus 4 ", ir aš labai džiaugiuosi.
(per)