Traditionell desktop app utveckling domineras av storskaliga mjukvaruföretag med stora arbetskraft, ibland spridda runt om i världen. Men utvecklingsbranschen för mobilapps är helt annorlunda. Dess ekosystem har skapat en ny ras av småskaliga och högeffektiva utvecklare. Dess dominerande aktörer drivs av innovation och effektivitet, snarare än av antalet chefer på lönesystemet. Även en enskild utvecklare kan producera en mördare-app som har miljontals nedladdningar i appbutikerna.
Så hur uppnår dessa individer eller små utvecklingsgrupper så bra resultat, utan en stor mänsklig arbetskraft? Det beror på att mobilappsekosystemet har ett brett utbud av programvaruverktyg som förenklar arbetsflödet och förbättrar effektiviteten. Det finns verktyg som till och med garanterar vissa typer av funktionalitet, upp till vissa standarder.
I det här inlägget kommer du att bli utsatt för olika mobila utvecklingsverktyg som gör det möjligt att göra din app unik och sticka ut från resten. Med dessa verktyg kan du uppnå framgång även utan ett stort team av programmerare.
Dessa inkluderar programvaruutvecklingspaket (SDK) som gör det möjligt att utveckla för en specifik plattform som Android, iOS och Windows. Dessutom integreras integrerade utvecklingsmiljöer (IDEs) som hjälper till att effektivisera arbetsflödet också i denna kategori.
En SDK består vanligtvis av kompilerade kärnkällor, stödjer programbibliotek och olika andra komponenter, såsom dokumentation, exempelapp, etc., som är utformade för att underlätta apputveckling. Plattform SDK kan definieras som omedelbart användbar form av plattformens källkod.
Du kan ladda ner Android SDK från Android Developer-webbplatsens nedladdningsavsnitt, gratis. Du behöver bara ladda ner SDK-kommandoradsverktygspaketet som matchar ditt operativsystem och använd SDK Manager som ingår där för att hämta de andra paketen. Därefter kan du använda denna SDK för att utveckla appar med eller utan hjälp av en IDE (Integrated Development Environment).
Till skillnad från SDK, som underlättar Java-baserad utveckling, tillåter Android Native Development Kit (NDK) utvecklare att implementera sina appar på C eller C ++-språk. Det här är till nytta, speciellt när externa bibliotek skrivna i C eller C ++ används inom din app. Detta säkerställer också den snabbaste prestandan och maximalt utnyttjande av enhetens hårdvarufunktioner. Om prestanda är det viktigaste kriteriet, så är det bättre att använda Android NDK.
Du kan hitta en stor samling Android-handledning på Envato Tuts + som kan hjälpa dig att komma igång med en blixt.
På samma sätt som Android SDK kan du ladda ner iOS SDK gratis, när du har registrerat dig för ett Apple Developer Center-konto. Du kan dock inte köra de appar som utvecklats med det på en Apple-enhet, om du inte går med i det betalda iOS-utvecklarprogrammet. Du kan dock fortfarande köra din app på en emulator och testa om det fungerar korrekt.
När du är redo att köra din app på en riktig enhet kan du ansluta till utvecklarprogrammet och så småningom publicera appen i App Store. Om du behöver mer hjälp med iOS-utveckling, kolla in vår iOS From Scratch-serie.
Microsoft har förenat apputvecklingsprocessen för olika enheter, inklusive PC, Mobile, Xbox One och HoloLens, med sin Universal Windows Platform (UWP). Du kan ladda ner Windows 10 SDK (stödjer även UWP) från Microsoft Windows Dev Center och använda den för att utveckla mobilappar med andra verktyg, t.ex. mobila emulatorer, för att testa din app.
När du använder tillsammans med UWP kan du använda Windows 10 SDK för att porta dina befintliga Android, iOS och äldre Windows-appar till den senaste Windows 10-plattformen. Det här är jättebra eftersom det gör det möjligt för utvecklare att utöka sin räckvidd och rikta in det bredaste möjliga sortimentet av enheter. Tutorials för Windows Phone SDK på Envato Tuts + kan vara ett bra ställe att leta efter experthjälp.
IDE: er hjälper till att effektivisera ditt arbetsflöde och få ut det maximala ur SDK: n. De sparar också utvecklare en hel del tid med smarta funktioner som kodfärdigande, interaktiv felsökning och automatisk byggnad.
Android Studio är IDE som officiellt stöds av Google för att bygga Android-appar. Det är en allt-i-ett IDE med intelligent kodavslutning, snabb och realistisk enhetsemulering och robusta byggsystem. Du kan dela samma kodbas över många enheter, allt från bärbara datorer, via telefoner, till smarta TV-apparater.
Den senaste Android SDK-enheten är också bäddad med Android Studio så att utvecklare kan börja kodning från dag ett. De äldre versionerna av SDK kan hämtas via SDK Manager som ingår i IDE. Det är också fullt av exempelapp, kodmallar och projektguider som gör livet riktigt enkelt för utvecklare.
Om du är en iOS-utvecklare måste du bekanta dig med Xcode, som innehåller iOS SDK och ett antal andra användbara verktyg. På samma sätt som Android Studio är det en produktiv miljö för att bygga appar för Mac, iPhone, iPad och Apple Watch. Xcode funktioner inkluderar en kraftfull källkod editor, inbyggd gränssnittsbyggare, avancerad enhet emulator och fullständig, aktuell dokumentation.
Hur som helst har du inte mycket val eftersom det är obligatoriskt att använda Xcode IDE om du planerar att publicera dina iOS-appar till Apples App Store. Xcode hanterar all app-signering och utvecklare-nyckelhantering samt verifieringsprocessen för appinlämning, så att utvecklare kan fokusera mer på sin kärnverksamhet snarare än att oroa sig för deras apps administrativa kostnader.
Visual Studio är det ideella valet för Windows-utvecklare. Det är från Microsoft, och därför får du det fulla stöd som du förväntar dig av den officiella säljaren. Med Visual Studio kan du använda samma kodbas för stationära appar, mobilappar och andra Microsoft-appar baserade appar.
Naturligtvis är Windows 10 SDK buntad med IDE, som i fallet med Android Studio och Xcode. Visual Studio gör det enkelt för utvecklare att hitta sig runt en stor kodbas med funktioner som Peek To Definition, förbättrad GoTo och mer. Beroende på din kapacitet och budget kan du välja mellan tre versioner, nämligen gemenskap, Professionell och Företag. Dessutom kommer Visual Studio med två OS-smaker, Windows och Mac. Så det spelar ingen roll om du äger en dator eller en Mac; Du kan använda Visual Studio för att koda din nästa mobilapp.
Inte bara det, men Visual Studio Code är ett bra IDE för att koda plattformsappar i JavaScript-för React Native, till exempel. Visual Studio Code är speciellt bra för React native-utveckling med React Native Tools-förlängningen. Med det kan du köra React native kommandon från GUI, visa smarta kodavslutningsanvisningar för React native APIs och även felsöka dina program från redaktören.
Det här är verktygen som gör att din app kan ha en konkurrensfördel. Det är verkligen vad som krävs för att bygga en mördareapp eller en nischmarknad. Här läser du om de mest populära.
Mobilspel är den mest populära appkategorin, i form av nedladdningsvolym, på nästan alla appbutiker. Så, om du planerar att utveckla ett mobilspel, varför inte prova någon av dessa spelmotorer?
Unity är ett populärt verktyg för utveckling av spel som kan användas för att skapa en övertygande användarupplevelse. Funktionerna inkluderar en allt-i-ett-editor, 2D och 3D-arbetsflödesstöd, realistisk fysikmotor, inbyggda UI-skapande komponenter och mycket mer. Baserat på storleken på din spelutvecklingsstudio kan du välja en lämplig version från Personal, Plus eller Pro.
Enhet gör att du kan behålla en enda kodbas och publicera till flera plattformar som Android, iOS och Windows Phone. Enheten är i huvudsak packad med massor av funktioner som 360 panoramabildstöd, filmisk VR och bild- eller videobaserad tillgångsskapande. Den har till och med en egen mobiliseringsplattform för mobilapps med Unity Ads.
Godot är frigivet under MIT-licensen, ett gratis verktyg för skapande av öppna källor, vilket gör att du kan publicera 2D och 3D-spel till alla populära mobila plattformar. Du kan skriva dina program antingen med sitt standardspråkspråk som heter GDScript eller i C ++-språket. Den har också en fin visuell redaktör med ett snyggt användargränssnitt. Det som är väldigt intressant är att det även stödjer direktredigering på mobila enheter.
libGDX är en spelmotor med flera publiceringsmål inklusive Android och iOS. Det släpps ut under Apache 2.0-licensen och underhålls av en aktiv grupp av begåvade utvecklare. Det kommer också med en stor samling böcker och handledningar, så att det är väldigt enkelt för dig att komma igång och fortsätta.
Datorsyn har gjort anmärkningsvärda framsteg sedan de första dagarna av uppfattningen. Nu har det blivit en sådan vara att det finns tusentals appar som använder någon form av datorvision. Tillgängligheten med den inbyggda kameran har gjort datasynbaserade mobilappar en utbredd typ av programvara.
IBM Watson är en molnbaserad serie maskinverktyg. Med sin Visual Recognition-tjänst är det faktiskt ganska lätt att upptäcka och analysera bilder från en smartphone-app. Kolla in några av våra Watson tutorials här på Envato Tuts +. Du kan även använda den för att gissa en persons ålder och kön från ett fotografi.
Google Cloud Vision är en annan molnbaserad maskininlärningsplattform som gör datorns vision enklare. Genom Cloud Vision REST API delar Google sin djupt lärande AI-teknik med apputvecklare överallt. Med detta API kan du enkelt lägga till funktioner som ansiktsdetektering, känslighetsdetektering och optisk teckenigenkänning i dina Android-appar. I denna handledning lär du dig hur.
OpenCV var en av de tidiga adoptorerna för datasynteknik, och idag är det en av ledarna inom området. Det finns flera andra projekt, vissa öppna källor och andra kommersiella, baserat på OpenCV. Den är tillgänglig för Android, iOS och Windows-plattformar. I Android behöver du Android NDK för att kunna använda den.
OpenCV själv är skrivet i C ++, och du måste borsta upp dina C ++-färdigheter om du tänker skriva program med hjälp av SDK. Du kommer att kunna lägga till ett brett utbud av datorvisningsbaserade funktioner till din app med OpenCV. De inkluderar ansiktsigenkänning, ögonspårning och blickuppskattning, objektigenkänning och mycket mer relaterat till både stillbilder och videor. OpenCV släpps under BSD-licensen och är helt fri att använda.
Released av Qualcomm Technologies Inc., FastCV är en annan populär dator visionbaserad SDK. Den stöder funktioner som gestigenkänning, ansiktsdetektering, spårning och textigenkänning. Även om FastCV kan fungera ganska bra på de flesta ARM-baserade processorer, är den speciellt konstruerad för Qualcomm Snapdragon-processorer. En avancerad processor behövs för att fullt ut utnyttja FastCVs kapacitet.
AR får långsamt dragkraft och blir mer av en daglig mobila upplevelse tack vare några toppmoderna SDK och entusiastiska utvecklingssamhällen. Här är några av ledarna och trendsättarna i branschen.
Vuforia är en mycket användbar mobil AR-plattform som kan stödja ett brett utbud av Android, iOS och Windows-smartphones och surfplattor. Det hjälper dig att skapa minnesvärda AR-upplevelser i mobilappar, så att de programmen kan sticka ut från resten.
Vuforia kan tillgodose en mängd olika AR-användarfall som tryckmedia och tidskrifter, leksaker och konsumentprodukter, lådor och produktförpackningar, och till och med flaskor och burkar. Den stöder också objektigenkänning och objektspårning och gör det möjligt för utvecklare att skapa AR- och VR-appar genom att använda API: n för blandad verklighet. Du kan välja mellan fyra tillgängliga prisplaner beroende på dina krav.
En annan seriös spelare i fältet, kombinerar Wikitude mobil geo-location med andra standard AR-funktioner. Så det måste vara ett annat viktigt verktyg för en aspirerande utvecklare som vill producera riktigt coola mobila AR-appar. SDK levereras med olika alternativ för licensiering, till exempel en engångsavgift och årliga abonnemangsbaserade modeller.
Wikitude kan för närvarande distribuera till Android och iOS-mobilmål. Dess samhälle är också full av erfarna utvecklare som är beredda att dela sin kunskap och därför kan du ta en genväg för att påskynda din utvecklingsinsats till full fart.
Tango är en AR SDK utvecklad av Google. Det stöder för närvarande bara två specifika enhetsmodeller, nämligen Asus ZenFone AR och Lenovo Phab 2 Pro. Så, om du är intresserad av att utveckla specifikt för någon av dessa enheter, så är Tango värt att överväga.
ARKit är AR-plattformen för Apple. Du måste få Xcode 9, där ARKit ingår som en del av iOS 11 SDK. Så, om du inte vill röra med verktyg från tredje part och föredrar att fokusera endast på officiella Apple-verktyg, är ARKit idealisk för dig.
Fortsätt med Envato Tuts + för kurser och handledning om ARKit!
Vissa nybörjare utvecklas av den branta inlärningskurvan som normalt hör samman med inbyggda mobila utvecklingsplattformar. De kan behöva lära sig nya programmeringsspråk och förvärva plattformsspecifika utvecklingsförmågor, till exempel att mastera testverktygen.
Hybridutvecklingsverktyg hanterar denna fråga på ett smart sätt. De möjliggör utvecklare med webbutvecklingsförmåga att utveckla mobila appar, utan att behöva ha plattformsspecifik kunskap. Det finns många sådana plattformar, men vi fokuserar bara på några få populära.
React Native är en mobil utvecklingsplattform som släpptes av Facebook. Det tillåter utvecklare att publicera inbyggda mobilappar via HTML, CSS och JavaScript. Du kan behålla en enda kodbas och publicera din app på Android eller iOS-plattformarna.
Det är underbart eftersom du inte behöver installera Android Studio eller Xcode på din utvecklingsmaskin. Och den riktiga kul börjar när du byter till inbyggd kod inom själva React native code editoren. Du kan blanda kodfragment från flera inbyggda plattformar i samma kodredigerare, och det gör dig väldigt kraftfull och mångsidig.
Ionic är en annan ram som låter dig bygga mobilappar med HTML, CSS och JavaScript. Det kommer ut ur porten med ett bibliotek av UI-komponenter och massor av praktiska verktyg som låter dig koda vackra mobilappar. Ionic är byggd ovanpå den mycket populära vinkelramen, så om du har erfarenhet av vinkeln hittar du jonisk en snap.
NativeScript är en annan ram för att bygga mobilappar på plattformen. Liksom Jonisk och React native, kan du använda CSS och JavaScript för att bygga mobilappar, men istället för HTML kodar du dina applayouter i XML.
NativeScript kan riktas mot Android, iOS och till och med Windows Universal Platform. Till skillnad från joniska, som använder Cordovas WebView för att göra användargränssnittet till appen, använder NativeScript den inbyggda plattformens återgivningsmotor, vilket innebär att den ger en verkligt inbyggd användarupplevelse.
PhoneGap var en av pionjärerna av HTML-baserade hybrid mobila utvecklingsramar. Sedan förvärvades av Adobe 2011, har det bara blivit bättre och bättre.
Det snabbaste sättet att komma igång är att ladda ner appen PhoneGap och dyka in i kodningen. Du kan efterlikna appar i din webbläsare, och du kan också utföra live-testning på anslutna enheter med hjälp av PhoneGap Developer Mobile App. Det kan tjäna alla tre populära plattformar: Android, iOS och Windows Phone.
Om du stöter på ett problem när du skriver din app finns det tusentals inlägg och artiklar på webben som hjälper dig att åtgärda problemen. PhoneGap har en blomstrande gemenskap av utvecklare som är mycket kunniga och hjälpsamma.
Xamarin är ett annat hybrid mobil utvecklingsverktyg, men det är baserat på C #, istället för HTML. Så, om du kommer från en Microsoft-utvecklingsbakgrund och vill utveckla mobilappar på plattformen, är det ett idealiskt val. Du behöver också Visual Studio IDE när du utvecklar mobilappar med Xamarin.
Tillgängligheten av rätt verktyg och möjligheten att använda dem korrekt är de viktigaste framgångsfaktorerna för mobilapputveckling. Så, när du planerar att utveckla din nästa app, ge dessa verktyg ett försök.