När tekniken fortsätter att utvecklas visar tonvikten på mobila enheter inga tecken på att sakta ner. På grund av detta finns det en konstant efterfrågan på människor som vet hur man utvecklar appar, och detta gäller för alla branscher. Från bankverksamhet till videospel, till oberoende hobbyutveckling, att veta hur man utvecklar appar är en ovärderlig färdighet.
Denna situation kan vara lite av ett tveeggat svärd. Visst, det finns så många möjliga applikationer för apputveckling, men det kan också vara ett problem i sig. Det finns ett så stort urval för hur och när man ska tillämpa dessa färdigheter. Var börjar jag med programmering? Hur lång tid tar det att bli apputvecklare? Vilket programmeringsspråk ska jag börja med?
Idag kommer jag att ge några allmänna tips för dessa frågor, samt flera till. Att lära sig att bli apputvecklare kan verka skrämmande till en början, så låt oss dela upp saker i mer hanterbara avsnitt.
Låt oss först gå igenom de två stora operativsystemen som användare litar på: Android och iOS. Om du precis har börjat, vilket mobiloperativsystem är det bästa för en nybörjarprogrammerare?
I de kommande avsnitten kommer jag att lista några för- och nackdelar, som kan hjälpa till att begränsa beslutsprocessen lite.
För att förstå sammanhanget för mobil datoranvändning med dessa två operativsystem är det också viktigt att gå igenom deras historia.
Android: Historia, för- och nackdelar
När tror du att Android startades för första gången? Det skulle vara helt rimligt att anta runt 2007 eller 2008, vilket var när iPhone började. I motsats till vad vissa kanske tror, släpptes Android inte som ett svar på iPhone alls - dess ursprung är mycket längre tillbaka innan det ens fanns rykten om att iPhone existerade. På den tiden var Windows Mobile den främsta konkurrenten.
Här är ett roligt faktum: Androids ursprung var ända tillbaka 2003 som Android Inc[1]. Det är bara ett par år efter den första iPoden.
Google och Open Handset Alliance arbetade tyst med operativsystemet Android 2007, av en slump samma år som den första iPhonen. Även om iPhone inte var det som inspirerade Android i första hand, pressade den Android Inc att tillkännage sitt operativsystem för allmänheten[2].
Den första Android-drivna smartphonen släpptes sedan hösten 2008: The HTC Dream[3]. Denna söta lilla handenhet hade en välbekant styrkula - ungefär som de som sågs på Blackberry-enheter vid den tiden - och ett fysiskt tangentbord, som skilde den från iPhones virtuella tangentbordscentrerade design. Det fysiska tangentbordet var undangömt bakom en glidande skärm när den inte användes, vilket gjorde att telefonen kunde förbli kompakt. Nuförtiden undviker smartphones i allmänhet överflödiga fysiska knappar, vilket innebär att hårdvarutangentbord var bland de första sakerna som försvann.
Android har kommit väldigt långt sedan de första iterationerna. På grund av dess öppen källkod tillåter detta nästan oändliga konfigurationer och anpassningar. Detta kan visa sig i form av gränssnittsteman, automatisering och till och med installation av appar utanför Google Play Butik. Denna öppenhet sträcker sig till hur appar är gjorda för Android också.
[Hur görs Android-appar]
Som nämnts tidigare är Android ett otroligt mångsidigt operativsystem på grund av dess öppen källkodsstruktur. För pysslare är detta en välsignelse – att justera saker är inte bara tillåtet utan det uppmuntras också. Detta passar bra med förstagångsprogrammerare, snarare än att vara skrämmande. Det finns en lekfull natur i denna uppsättning; experimentera med inställningar, bygg hobbyappar och bygg gradvis upp dina färdigheter med lätttillgängliga verktyg och resurser.
Android-appar kan skapas via flera olika programmeringsspråk[4]. Det mest populära programmeringsspråket för att bygga Android-appar är dock Java[5], vilket innebär att det också har de flesta lärresurser som är lätt tillgängliga.
[Utvecklingskostnad och hårdvara för Android-appar]
Internet kan vara lite av en välsignelse och en förbannelse. Det finns en uppsjö av fritt tillgänglig information – men vilka programmeringsråd ska jag följa? Vilken är den mest uppdaterade studieguiden om dessa programmeringsspråk? Det finns också en kostnadsfråga att tänka på: hur mycket kostar det att börja programmera Android-appar?
Du kommer att bli glad att veta att det faktiskt är extremt prisvärt att utveckla en app för Android, med en engångsavgift på 25 USD för att få tillgång till utvecklarverktyg och till och med publicera din app[6]. Denna lägre inträdesbarriär är ett mycket solidt alternativ för förstagångsutvecklare, eftersom insatserna är mycket mindre stressande. Om du bestämmer dig för att apputveckling inte är något för dig, svider den initiala investeringen inte alls lika mycket som iOS-apputveckling.
[Resurser och fördelar för utveckling av Android-appar]
Utveckling av Android-appar låter dig också skapa applikationer från ett mycket större utbud av hårdvara än iOS-apputveckling. Även om det alltid rekommenderas att ha en kraftfull maskin för din utvecklingsinstallation, kan du komma igång med de flesta moderna datorer[7]. Det kanske inte är den mest effektiva datorinstallationen, men de flesta moderna maskiner kommer att få jobbet gjort. Detta oavsett operativsystem – Android-appar kan utvecklas via macOS, Windows och Linux.
När det gäller inlärningsverktyg finns det en stor katalog med resurser man kan lita på. För att skära igenom det enorma utbudet och få det att kännas mindre överväldigande har vi en rekommendation för din första plats att börja, och det är helt gratis och i egen takt. FreeCodeCamp har en nybörjarkurs för Android-apputveckling[8] – och det finns ingen press heller: det finns inga frågesporter, inga deadlines och ingen kostnad alls för hela kursen.
I FreeCodeCamps kurs för Android-apputveckling framhåller de starkt fokus på nybörjarvänlig kunskap. Medan du följer den här kursen är det här den perfekta tiden att ta en kopia av Android Studio[9] – Googles alldeles egna programvara för att bygga Android-appar från grunden.
[Nackdelar med Android-utveckling]
Även om det finns så många fördelar med att utveckla Android-appar, finns det också några avvägningar. Dessa kanske inte påverkar dig om du gör den här utvecklingen enbart av passion och inte en inkomst, dock.
Den mest uppenbara nackdelen med utveckling av Android-appar är det stora utbudet av programmeringsspråk du kan använda. Detta är en styrka och en svaghet – det gör det möjligt för Android-appar att göra helt otroliga saker, men det kan absolut skrämma bort nybörjare.
Nästa är inkomstaspekten av saker. Det är förståeligt att vilja förvandla dina apputvecklingsinsatser till en inkomst. Tyvärr, medan Android-appar har kommit ikapp i intäkter med iOS-appar, är inkomsten för Android-appar fortfarande betydligt lägre än deras iOS-motsvarigheter[10]. Detta beror åtminstone delvis på Androids öppenhet. Eftersom användare kan ladda ner appar utanför Google Play Butik genom att göra något som kallas "sidoladdning", kan vissa appar som användare normalt måste betala för hittas online gratis.
Även om denna öppenhet hjälper till att få ut din app i världen, betyder det att användare kan undvika att betala dig för ditt arbete med att utveckla appen. Detta är dock lite av en icke-fråga om du vill utveckla appar enbart för kärleken till det. Dessutom kan du alltid lägga donationsförfrågningar eller annonsbanner i appen, vilket kan ge användarna appen gratis och ändå ge dem en möjlighet att hjälpa till om de kan.
iOS: Historik, för- och nackdelar
När det kommer till apputveckling finns det många skillnader mellan iOS och Android. Med Androids mer öppna karaktär är iOS raka motsatsen. iOS är ett mycket avstängt operativsystem som startade 2007 med den första iPhone, som ursprungligen utsågs som en mobilversion av macOS[11]. Den första versionen av iPhones operativsystem hade inte ens appar – det var en funktion som först var tillgänglig på iOS 2, kallad iPhone OS 2 vid den tiden[12]. I denna aspekt var Android långt före spelet.
Med denna avstängda karaktär är utvecklingen av iOS-appar både hjälpt och hindrad. Låt oss gå igenom hur det skiljer sig från Android-apputveckling.
[Resurser och fördelar för studier av iOS-apputveckling]
När du utvecklar en iOS-app är platsen att börja mycket tydligare. Det huvudsakliga programmeringsspråket du behöver lära dig är Apples eget programmeringsspråk: Swift. Apple gör till och med sin egen studieguide för att lära sig hur man programmerar i Swift[13], även om det finns många resurser tillgängliga för det. En mycket användbar resurs är Code With Chris Swift Tutorial[14] som förutsätter ingen tidigare erfarenhet av Swift.
Om du gillar att lära dig på roligare, praktiska sätt har Apple utvecklat ett spel som heter Swift Playgrounds. Du kan ladda ner den gratis till alla nyare iPad eller Mac. Denna superfokuserade karaktär av utveckling gör att det verkar mycket mindre skrämmande och gör det därför till ett bra ställe för nybörjare att pyssla med.
Tyvärr kan du förmodligen se nackdelen med iOS-utveckling en mil bort: kostnaden.
[Nackdelar med iOS-utveckling]
Låt oss börja med de goda nyheterna: iOS-appar tjänar vanligtvis mycket mer pengar än Android-appar[15]. Avvägningen? Det är väldigt dyrt att komma igång med att utveckla för iOS, till att börja med.
Först behöver du en Mac med den senaste versionen av Xcode, en gratis Mac-app för att skapa iOS-appar. Det finns inget sätt att utveckla iOS-appar på något annat än en Mac, så Windows-maskiner kommer inte att klippa det. Tyvärr finns det ingen väg runt detta[16].
Därefter måste du betala för en utvecklarlicens för att publicera appar. Android är en engångsavgift på 25 USD. En Apple Developer License kostar $99 per år[17].
Apple har också några mycket strikta riktlinjer för App Store-inlämningar[18]. Denna stränghet kan bidra till att öka kvaliteten på appar för användare, men det kan vara en stor källa till frustration för apputvecklare. Ibland kan appavvisande bero på till synes ingen anledning eller för mycket små saker som faller inom gråzoner[19].
Ett annat problem är detta: om din Mac är för gammal för att köra den senaste versionen av Xcode är den inte längre en användbar maskin för att utveckla iOS-appar. Detta innebär att en perfekt fungerande maskin kan falla utanför godtyckliga gränser för apppublicering, vilket leder till utvecklare frustration och extra kostnader.
Ett sätt att hjälpa till att minska den totala kostnaden för hårdvara är att kolla Apple Refurbished Store, särskilt för att leta efter renoverade Mac Mini-maskiner[20]. Om du föredrar nya enheter är M1 Mac mini det absolut billigaste alternativet för att börja utveckla iOS[21]. Du kommer fortfarande att behöva tillhandahålla ett tangentbord, en mus och en skärm med en HDMI-kabel, men detta är det billigaste sättet att börja utveckla.
[Slutsats]
I slutändan har Android- och iOS-apputveckling sina fördelar och kompromisser. Android är mer anpassningsbart med vanligtvis lägre intäkter, medan iOS har större möjligheter till intäkter samtidigt som det är mycket dyrare att börja med – och miljön är mycket mer avstängd.
Vilken apputvecklingsmiljö föredrar du att utveckla för?
0 kommentarer