Android vs iOS: melyik platform a legjobb fejlesztők
Makradar A Technológia / / December 19, 2019
Android vs iOS. Örök téma az online csaták, amely már rendesen minden podnadoest. Ne rohanjon át a szöveg a cikk, és azonnal lépni a kiáradása az egyetlen helyes véleményét a hozzászólások. Ma fogunk beszélni ismét, hogy melyik rendszer a jobb, de más-más módon.
A fejlesztők - akik létrehozni egy kulcsfontosságú része bármely platformon, azaz alkalmazásokat. Ez a minőségi fejlesztő eszközök, ez biztosítja a platform függ a végeredményt. Tehát milyen rendszer jobb írni? Válasz erre a kérdésre egy tapasztalt alkalmazás fejlesztő, aki a megvilágítandó az App Store-ban, és a Google Playen.
A választás a platform - alapvető probléma minden új projekt. Android vagy iOS? Tekintettel a legutóbbi hír, hogy az Android sikeresen elfogott 80% -át a piac, a választás még nehezebbé válik. Nem számít, milyen a vezetők és más nem túl jól a műszaki szempontból a kérdés az emberek gondolni. A másik dolog - a fejlesztők.
Mi a véleményük? Ennek az az előnye, hogy a platform vagy közvetlenül függ a képességét, hogy életük jobb.
És „ők” Úgy értem, a „mi”. Amellett, hogy a szerző tevékenységek TechCrunch, én fejlődő HappyFunCorp. Sőt, nem is olyan régen hoztam létre egy duett opensorsnyh alkalmazások révén a projekt-pet. Éppen ezek a kérelmek használom az összehasonlításhoz.
A rekord: Korábban kellett írni egy pár Android és iOS alkalmazások, mind személyes használatra, és a munka. Különösen írtam Mobile ügyfél a hírolvasó ScanvineAmely összegyűjti szokatlanul népszerű történetek szociális média. A forráskód az alkalmazásom megtalálható Github (Android | iOS), És az alkalmazásokat állnak A Google Play és App Store.
Nos, a csata kezdődik.
szerda
Akkor még írni-kód egy szövegszerkesztőben, és sok csinálnak eddig, de tekintve a teljesítmény több hasznos használni az IDE (Integrated Development Environment - IDE).
Abban az esetben, Apple, van Xcode, és a munka ebben a környezetben - öröm. Ez a rugalmas, gyors, erős és képes segítség, anélkül, hogy túlságosan tolakodó. És ő egyre jobb, annak ellenére, hogy a nehéz és paranoid intézkedései Apple megtartja teljes ellenőrzése alatt az iOS alkalmazások és eszközök. A debugger simán fut, és a szimuláció - gyors és rugalmas.
Mi az Android? Ó, Android. Abban a pillanatban, a tényleges fejlesztési környezet mellett ez az Eclipse, egy marék Android szabott plug-inek, és obszcén rossz. Lassú, ügyetlen, logikátlan, gyakran szólva érthetetlen, rosszul tervezett, túl bonyolult - egy igazi káosz. A hibakereső annyira kényelmetlen, hogy a legtöbb időt töltök bütyköl naplók, míg Xcode a birtokomban egy igazi eszköz-vadász hibákat. Ne feledkezzünk meg az emulátor Android, amely az első néhány percet vesz igénybe, hogy letölthető, majd nem tudott csatlakozni a ADB.
Ahhoz, hogy igaz, hogy a Google tisztában van ezzel a problémával, és dolgoznak egy új Android Studio IDE:
Jelenleg Android Studio elérhető korai előnézet. Egyes funkciók nem állította be, vagy nem hajtják végre, ami hibákhoz vezethet. Ha a felhasználás a befejezetlen termék okozza a kellemetlenséget, akkor lehet letölteni, és továbbra is használhatja a ADT Bundle (Eclipse plugin ADT).
Jó látni, hogy dolgoznak a problémán, de még mindig meglepő - miután 4 és fél évvel a vásárlás után az én első Android-szerű káosz még mindig a határ a tökéletesség, amely képes volt elérni a fejlesztői környezet Android.
Itt veri iOS, feltétel nélkül.
konfigurálása
Az furnér Xcode és Objective-C rejtettek borzalmait Lovecraft a korszak a hetvenes programozás. Csak vicceltem, csak vicceltem... de akkor is. Makrók és header fájlok, projektek, célok, program és szerelési konfiguráció, és félelmetes, ijesztő listáját összeállítás paramétereit. és még hihetetlen felfedezések a stílus „Ó, a harmadik fél kód nem támogatja az ARC? Egyszerűen adja hozzá a zászló -fno-objc-ív». Csak? Nem!
Az Android van egy nyilvánvaló fájl, és az Eclipse általában teljesen újraépíti az alkalmazás minden egyes alkalommal, hogy tartsa meg a fájlt. Szeretném világosabb, ha, például, ha egy hibaüzenet annak a ténynek köszönhető, hogy megfelelően konfigurálja a szabályt, de ez egy kisebb hiba. Konfigurálása Android alkalmazás egyszerű és elegáns.
Itt veri Android.
felület
Úgy tűnik, hogy az Apple minden bizonnyal győztesen. Azok tervező könnyen és gyorsan épít egy egyszerű és szép látszó felületet. A probléma az, hogy minél tovább dolgoztam a tervező, annál kevésbé tetszett. Ez egy másik alkalommal, amikor megnyitja a konfigurációs komplexitás - eszköz ideális létre egyszerű dolog, de a fejlesztése Alkalmazás egyszerű dolgok hirtelen bonyolult, és én tényleg nem szeretem ezeket a többképernyős Storyboards, amely az Apple hozzá mintegy egy évvel ezelőtt.
Androidon az elmélet biztosított hasonló vizualizációs eszközökkel, de a gyakorlatban írsz XML-fájlokLegalább rajz utasításokat, hogy egy bizonyos szerencse vezet helyes megjelenítését az alkalmazás összes különböző formátumban képernyők az Android készülékek. Apple mozog ugyanúgy, és azok automatikus elrendezés egyértelműen kihegyezett jövőbeni bővítési variációk képernyők iOS eszközökön.
Ugyanakkor, Android segítségével a fejlesztők ikonkészletekkelMíg iOS fejlesztők kénytelenek fordulni harmadik felek által nyújtott szolgáltatásokVagy felhívni a saját ikonokat.
Ebben a körben a győztes választani nehezebb, de adok iOS előnyben két okból. Először is, ez még mindig sokkal könnyebb - csak 3 képernyő mérete (beleértve az iPad) és 2 formátumú képarány. Android sokféleség e tekintetben tovább bonyolítja. A második pont a fellebbezés alapértelmezett vizuális elemek (pop-up menük, üzenetek, és így tovább). Az iOS minden úgy néz ki, sokkal vonzóbb.
Itt veri iOS.
nyelv
Android alkalmazások Java-ban írt, iOS - a Objective-C. Vannak kivételek, mint a XamarinDe a legtöbb esetben egy ilyen felosztás érvényes.
Megtanultam írni a Java, és először nem különösebben gondolt Objective-C, nagyrészt a bulkiness.
Egy karakterlánc, mint például:
Karakterlánc s2 = s1.replace ( "abc", "XYZ");
Fordul hozzá:
NSString * s2 = [s1 stringByReplacingOccurrencesOfString: @ "abc" withString: @ "XYZ"];
De a folyamat felfedezni a nyelv nagyon tetszett. Ő jobb és tisztább, mint a Java.
Ebben az esetben is vannak előnyei Java. Például egy egyszerű csapda és nyoma hibákat. Az elmúlt néhány évben, Android már egy másik igen jelentős előnyt jelent a hulladékgyűjtés, vagyis automatikus emlékezet megtisztítását a felesleges tárgyakat, de most iOS tudja ugyanezt, és valójában előny semmivé. Tekintettel arra, hogy az utolsó győzelem megy iOS itt.
Itt veri iOS.
API
Az Android és az iOS egy hatalmas könyvtár szoftver elérhető a fejlesztők számára, és általában elmondható, hogy meglehetősen hasonló: API üzemeltetése telefon funkciók és kommunikáció, az API-t a hálózathoz való hozzáférés, az Arsenal a nézők, köztük erős WebView- - gyakorlatilag egy klón a teljes böngészőt.
A legtöbb munkát a vezérlők, és általános iOS ViewController egyenértékű Android Activity.
Ami tényleg nem Android, mert ez egy teljesen analóg Core adatok keret. Összességében a rendszer tisztább és jobban megtervezett. Például csak összehasonlítani ezekkét osztály iOS, amelyek elvégzik a munka nagy részét az alkalmazás, a ezekháromegyenértékű osztályok Android. A végén, én sokkal inkább a munka iOS CollectionViewControllerMint az Android ListAdapter.
Egy másik fontos mutató: a több sornyi kódot. Saját verzió az alkalmazás mindkét platformon gyakorlatilag azonos a szolgáltatásokat és funkciókat, de iOS azok végrehajtásához Beletelt én 1596 sornyi kódot, beleértve a fejléc fájlokat, és hozzon létre az Android változat a hasonló funkciójú szükséges 2109 sorokban. A különbség 32%.
Itt veri iOS.
Internet
Ma a legtöbb alkalmazás több útmutatók az interneten, ahelyett, önálló programok. Ez egy nagyon fontos pont, és külön kell megvizsgálni. Az arzenál mindkét rendszer számos eszközt és API végrehajtásához való együttműködés a hálózaton. Szintén mindkét platformon végre szinte teljes értékű böngésző, amely lehet építeni a app, ahogy tetszik, és bárhová is megy.
A csatlakozások kell futtatni a háttérben, és nem zavarja az alkalmazás maga. Megvalósítása többszálas Android használt AsyncTask. Ez nagyon jól működik, és lehetővé teszi a könnyű meghatározásáraFüggetlenül attól, hogy a felhasználó az interneten az adott pillanatban. iOS is kínál hasonló képességekkel, de azok végrehajtása viszonylag alacsony szintű, és nem felel meg az igényeinek fejlesztők.
Vannak azonban olyan sok harmadik fél könyvtárak, nyílt forráskódú, és hogy az élet sokkal könnyebb. Régebben AFNetworking, és működik olyan jól, mint azt a továbbiakban a reklám.
Itt veri az alapértelmezett Android és iOS segítségével harmadik fél könyvtárak.
megosztása
Mennyire könnyű megosztani a bármely adott alkalmazás a Facebook, Twitter, Evernote, és más szolgáltatásokat? Úgy tűnik, hogy ez lesz az első körben, amelyben Android fog nyerni 100% kieséses: van egy nagy teljesítményű rendszer a kölcsönhatás Az alkalmazások közötti úgynevezett Intents, és általában, Android sokkal hű a kérelmet, és az adattovábbítás között alkalmazásokat.
Általában, az Apple jelentősen felzárkózott versenytárs sharinga lehetőségeket. Akkor nem veszem a szót, ellenőrizze a funkció kód „Megosztás történet” Scanvine on Android és iOS. Az egyetlen ok, amiért iOS-kód több - jelenléte benne egy rugalmasabb nyomon követése Google Analytics, hanem az Android.
Akkor dolgozzon.
szilánkosodás
Akkor nem kell sokat mondani. Azonban a Google igyekszik használat Érdekes töredezettségmentesítés stratégiaAnnak érdekében, hogy rövid idő alatt a tétel lesz újra megvizsgált.
Itt veri iOS.
a bejelentés közzétételét
Közzététele Android alkalmazások rendkívül egyszerű. Eszköz az Eclipse lehetővé teszi, hogy gyorsan építeni az alkalmazást, és a kezében már van apk fájlt. Küldje be egy e-mailt, webre, vagy töltse le a Google Playen, így elérhetővé válik (majdnem) a világot, mindössze egy óra alatt. Ezután lehetővé válik, hogy az installáció felügyelete statisztikák és crash-jelentések akár egy adott kódsort, ami miatt az alkalmazás összeomlik. Ha szükséges, akkor frissítheti roll out azonnal.
Közzététele az App Store - ez egy rémálom. Barátom azt tanácsolja, hogy osztja a fejlődés a naptári legalább egy napot a háború bizonyítványok és forgalmazása profillal. Nem számít, hogy hányszor már csinált ilyet, és hogy sokkal könnyebb próbál tenni a folyamatot a következő verziója Xcode - akkor továbbra is sok a probléma. Alkalmazás tesztelés még nagyobb a probléma, ha nem használja TestFlight. Ha ehhez hozzáadjuk a iTunes Connect, ami nem megy minden összehasonlítása a Google Play Developer Console.
Itt veri Android, feltétel nélkül.
győztes
Ez lesz az iOS, sőt egy bizonyos mozgásteret. Mi az előnye az Android, de általában, hogy írjon egy jó alkalmazás iOS még mindig sokkal könnyebb, mint alatt Android. Ha ehhez hozzáadjuk azt a tényt, hogy az iOS-felhasználóknak több mint fizetőképességét, és kapsz egy választ arra a kérdésre, hogy milyen platformon prioritásnak kell lennie egy indításkor. Valószínűleg, a különbség csökkenni fog megjelenése után az Android Studio, lehetővé téve ezáltal megoldani bizonyos problémákat... de nem minden.
By the way, a fő telefon - Nexus 4, és nagyon örülök.
(keresztül)