Mobiele ontwikkelingstools

Traditionele ontwikkeling van desktopapp wordt gedomineerd door grootschalige softwarebedrijven met enorme personeelsbestand, soms verspreid over de hele wereld. De ontwikkeling van mobiele apps is echter heel anders. Het ecosysteem heeft een nieuw soort kleinschalige en zeer efficiënte ontwikkelaars gecreëerd. De dominante spelers worden aangedreven door innovatie en efficiëntie, in plaats van door het aantal hoofden op de loonlijst. Zelfs een individuele ontwikkelaar kan een geweldige app maken met miljoenen downloads in de app-winkels.

Dus hoe kunnen deze individuen of kleine teams van ontwikkelaars zulke geweldige resultaten behalen, zonder een groot menselijk personeelsbestand? Het komt omdat het ecosysteem van de mobiele app een breed scala aan softwaretools heeft die de workflow vereenvoudigen en de efficiëntie verbeteren. Er zijn tools die zelfs bepaalde soorten functionaliteit garanderen, tot bepaalde normen.

In dit bericht wordt u blootgesteld aan verschillende mobiele ontwikkeltools die u in staat stellen om uw app uniek te maken en te onderscheiden van de rest. Met deze tools kunt u succesvol zijn, zelfs zonder een groot team programmeurs.

1. Gereedschappen voor algemeen gebruik

Deze omvatten Software Development Kits (SDK's) die het mogelijk maken om zich te ontwikkelen voor een specifiek platform zoals Android, iOS en Windows. Daarnaast vallen ook Integrated Development Environments (IDE's) die helpen bij het stroomlijnen van de workflow in deze categorie.

1.1 Native Platform SDK's

Een SDK bestaat meestal uit gecompileerde kernbronnen, ondersteunende softwarebibliotheken en diverse andere componenten, zoals documentatie, voorbeeld-apps, enz., Die zijn ontworpen om app-ontwikkeling te vergemakkelijken. Platform-SDK's kunnen worden gedefinieerd als de onmiddellijk bruikbare vorm van de broncode van het platform.

Android SDK en NDK

U kunt de Android SDK gratis downloaden van de downloadsectie van de Android Developer-website. U hoeft alleen maar het SDK-opdrachtregelhulppakket te downloaden dat overeenkomt met uw besturingssysteem en de daarin opgenomen SDK-manager te gebruiken om de andere pakketten te downloaden. Vervolgens kunt u deze SDK gebruiken om apps te ontwikkelen met of zonder de hulp van een Integrated Development Environment (IDE).

In tegenstelling tot de SDK, die op Java gebaseerde ontwikkeling vergemakkelijkt, stelt Android Native Development Kit (NDK) ontwikkelaars in staat hun apps in de C- of C ++-talen te implementeren. Dit is handig, vooral wanneer externe bibliotheken die zijn geschreven in C of C ++ worden gebruikt in uw app. Dit zorgt ook voor de snelste prestaties en maximaal gebruik van de hardwarefuncties van het apparaat. Daarom, als prestaties het belangrijkste criterium zijn, zou je beter af zijn met Android NDK.

U kunt een grote verzameling Android-zelfstudies vinden op Envato Tuts + waarmee u in een flits snel aan de slag kunt.

iOS SDK

Vergelijkbaar met de Android SDK kun je de iOS SDK gratis downloaden zodra je je registreert voor een Apple Developer Center-account. U kunt de apps die hiervoor zijn ontwikkeld echter niet uitvoeren op een Apple-apparaat, tenzij u zich aansluit bij het betaalde iOS Developer-programma. U kunt uw app echter nog steeds uitvoeren op een emulator en testen of deze correct werkt. 

Wanneer u klaar bent om uw app op een echt apparaat uit te voeren, kunt u deelnemen aan het ontwikkelaarsprogramma en uiteindelijk de app publiceren in de App Store. Als je meer hulp nodig hebt bij de ontwikkeling van iOS, bekijk dan onze iOS From Scratch-serie.

Windows 10 SDK

Microsoft heeft het app-ontwikkelingsproces voor verschillende apparaten, waaronder pc, mobiel, Xbox One en HoloLens, verenigd met het Universal Windows Platform (UWP). U kunt de Windows 10 SDK downloaden (ondersteunt ook UWP) vanuit Microsoft Windows Dev Center en deze gebruiken voor het ontwikkelen van mobiele apps met andere hulpmiddelen, zoals mobiele emulators, om uw app te testen. 

In combinatie met UWP kunt u met de Windows 10 SDK uw bestaande Android-, iOS- en oudere Windows-apps porten naar het nieuwste Windows 10-platform. Dit is echt geweldig omdat het ontwikkelaars in staat stelt hun bereik uit te breiden en een zo breed mogelijk scala aan apparaten te targeten. Windows Phone SDK-zelfstudies over Envato Tuts + kunnen een uitstekende plaats zijn om deskundige hulp te zoeken.

1.2 Volledige IDE's

IDE's helpen bij het stroomlijnen van uw workflow en halen het maximale uit de SDK's. Ze besparen ontwikkelaars ook veel tijd met slimme functies, zoals het voltooien van code, interactief debuggen en automatisch bouwen.

Android Studio

Android Studio is de IDE die officieel door Google wordt ondersteund voor het bouwen van Android-apps. Het is een alles-in-een IDE met intelligente code-aanvulling, snelle en realistische apparaatemulatie en robuuste build-systemen. U kunt op veel apparaten dezelfde codebasis delen, variërend van draagbare apparaten, telefoons en smart-tv's. 

De nieuwste Android SDK is ook gebundeld met Android Studio, zodat ontwikkelaars vanaf de eerste dag kunnen beginnen met coderen. De oudere versies van de SDK kunnen worden gedownload via de SDK Manager in de IDE. Het is ook vol met voorbeeld-apps, codesjablonen en projectwizards die het leven heel gemakkelijk maken voor ontwikkelaars.

Xcode

Als je een iOS-ontwikkelaar bent, moet je jezelf vertrouwd maken met Xcode, inclusief de iOS SDK en een aantal andere handige hulpmiddelen. Vergelijkbaar met Android Studio is het een productieve omgeving voor het bouwen van apps voor Mac, iPhone, iPad en Apple Watch. De functies van Xcode omvatten een krachtige broncode-editor, ingebouwde interface-builder, geavanceerde apparaatemulator en complete, up-to-date documentatie. 

Hoe dan ook, je hebt niet veel keus, want het is verplicht om de Xcode IDE te gebruiken als je van plan bent je iOS-apps te publiceren in de App Store van Apple. Xcode verzorgt alle app-ondertekening en ontwikkelaarssleutelbeheer, plus het verificatieproces voor app-indiening, zodat ontwikkelaars zich meer op hun kernactiviteiten kunnen concentreren in plaats van zich zorgen te maken over de administratieve overhead van hun apps..

Visuele studio

Visual Studio is de IDE van keuze voor Windows-ontwikkelaars. Het komt van Microsoft en daarom krijgt u de volledige ondersteuning die u van de officiële leverancier mag verwachten. Met Visual Studio kunt u dezelfde codebasis gebruiken voor desktop-apps, mobiele apps en andere op Microsoft-apparaten gebaseerde apps. 

Uiteraard is de Windows 10 SDK gebundeld met de IDE, zoals in het geval van Android Studio en Xcode. Visual Studio maakt het gemakkelijk voor ontwikkelaars om hun weg te vinden in een groot codebasis met functies zoals Peek To Definition, verbeterde GoTo en meer. Afhankelijk van uw capaciteit en budget kunt u kiezen uit drie versies, namelijk Community, Professional en Enterprise. Ook Visual Studio wordt geleverd met twee OS-smaken, Windows en Mac. Het maakt dus niet uit of u een pc of een Mac bezit; je kunt Visual Studio gebruiken om je volgende mobiele app te coderen.

Niet alleen dat, maar Visual Studio Code is een geweldige IDE voor het coderen van platformonafhankelijke apps in JavaScript-voor React Native, bijvoorbeeld. Visual Studio Code is vooral goed voor React Native ontwikkeling met de React Native hulpprogramma-extensie. Daarmee kunt u React Native-opdrachten uitvoeren vanuit de GUI, slimme codevoltoevermelding weergeven voor React Native API's en zelfs uw apps debuggen vanuit de editor.

2. Gereedschappen voor speciale doeleinden

Dit zijn de tools waarmee uw app een concurrentievoordeel heeft. Dat is echt wat nodig is om een ​​geweldige app of een nichemarkt te bouwen. Hier leest u over de meest populaire.

2.1 Gammotoren

Mobiele games zijn de meest populaire app-categorie, in termen van downloadvolume, in bijna alle app stores. Dus, als u van plan bent een mobiel spel te ontwikkelen, waarom probeert u dan niet een van deze game-engines?

Eenheid

Unity is een populaire game-ontwikkelingstool die kan worden gebruikt voor het creëren van een aantrekkelijke gebruikerservaring. De functies omvatten een alles-in-een editor, 2D- en 3D-workflow-ondersteuning, realistische physics engine, ingebouwde UI-creatiecomponenten en nog veel meer. Op basis van de grootte van je game-ontwikkelstudio, kun je een geschikte versie kiezen uit Persoonlijk, Plus of Pro. 

Met Unity kunt u een enkele codebase onderhouden en publiceren naar meerdere platforms zoals Android, iOS en Windows Phone. Unity zit boordevol functies zoals 360-panoramische video-ondersteuning, filmische VR en het maken van foto- of videobeelden. Het heeft zelfs een eigen betaalplatform voor mobiele apps met Unity Ads.

Godot

Vrijgegeven onder de MIT-licentie, is Godot een gratis en opensource-spelprogramma waarmee je 2D- en 3D-spellen kunt publiceren op alle populaire mobiele platforms. U kunt uw programma's schrijven met de standaard scripttaal GDScript of in de C ++ -taal. Het heeft ook een mooie visuele editor met een overzichtelijke gebruikersinterface. Wat echt interessant is, is dat het ook live bewerken op mobiele apparaten ondersteunt.

libGDX

libGDX is een game-engine met meerdere publicatiedoelstellingen, waaronder Android en iOS. Het is vrijgegeven onder de Apache 2.0-licentie en wordt beheerd door een actieve gemeenschap van getalenteerde ontwikkelaars. Het bevat ook een grote verzameling boeken en tutorials, zodat u heel gemakkelijk aan de slag kunt en kunt doorgaan.

2.2 SDK's voor computervisies

De computervisie heeft opmerkelijke vooruitgang geboekt sinds de begindagen van de conceptie. Nu is het zo'n koopwaar geworden dat er duizenden apps zijn die een bepaalde vorm van computervisie gebruiken. De beschikbaarheid van de ingebouwde camera heeft van computervisie gebaseerde mobiele apps een wijdverbreid type software gemaakt.

IBM Watson

IBM Watson is een cloudgebaseerde suite van tools voor het leren van apparaten. Met de Visual Recognition-service is het detecteren en analyseren van afbeeldingen van een smartphone-app eigenlijk vrij eenvoudig. Bekijk enkele van onze Watson-tutorials hier op Envato Tuts +. U kunt het zelfs gebruiken om de leeftijd en het geslacht van een persoon van een foto te raden.

Google Cloud Vision

Google Cloud Vision is een ander op de cloud gebaseerd machine learning platform dat het computerzicht eenvoudiger maakt. Via de Cloud Vision REST API deelt Google zijn deep learning AI-technologie met app-ontwikkelaars overal. Met deze API kunt u eenvoudig functies zoals gezichtsdetectie, emotieherkenning en optische tekenherkenning toevoegen aan uw Android-apps. In deze tutorial leer je hoe.

OpenCV

OpenCV was een van de early adopters van computer vision-technologie en vandaag is het een van de leiders in het veld. Er zijn verschillende andere projecten, sommige open source en andere commerciële, gebaseerd op OpenCV. Het is beschikbaar voor Android-, iOS- en Windows-platforms. In Android heb je Android NDK nodig om het te gebruiken. 

OpenCV zelf is geschreven in C ++, en je zult je C ++ -vaardigheden moeten opfrissen als je programma's wilt schrijven met de SDK. Je kunt een breed scala aan op computervisie gebaseerde functies toevoegen aan je app met behulp van OpenCV. Ze omvatten gezichtsherkenning, eye-tracking en blikschatting, objectherkenning en veel meer gerelateerd aan zowel stilstaande beelden als video's. OpenCV is vrijgegeven onder de BSD-licentie en is volledig gratis te gebruiken.

Qualcomm FastCV

FastCV, uitgebracht door Qualcomm Technologies Inc., is een andere populaire SDK op basis van computervisie. Het ondersteunt functies zoals gebarenherkenning, gezichtsdetectie, tracking en tekstherkenning. Hoewel FastCV redelijk goed kan presteren op de meeste ARM-gebaseerde processors, is het specifiek ontworpen voor Qualcomm Snapdragon-processors. Een high-end processor is nodig om de mogelijkheden van FastCV ten volle te benutten.

2.3 Augmented Reality (AR) SDK's

AR krijgt langzaam meer grip en wordt meer een dagelijkse mobiele ervaring, dankzij een aantal geavanceerde SDK's en enthousiaste ontwikkelaarsgemeenschappen. Hier zijn enkele van de leiders en trendsetters in de industrie.

Vuforia

Vuforia is een veelgebruikt mobiel AR-platform dat een breed scala aan Android-, iOS- en Windows-smartphones en -tablets ondersteunt. Het helpt je om gedenkwaardige AR-ervaringen te creëren in mobiele apps, zodat die apps kunnen onderscheiden van de rest. 

Vuforia kan zich richten op verschillende AR-use-cases zoals gedrukte media en tijdschriften, speelgoed en consumentenproducten, dozen en productverpakkingen, en zelfs flessen en blikjes. Het ondersteunt ook objectherkenning en objecttracking en stelt ontwikkelaars in staat om AR- en VR-apps te maken met behulp van de Mixed Reality API. U kunt kiezen uit vier beschikbare tariefplannen, afhankelijk van uw vereisten.

Wikitude

Een andere serieuze speler in het veld, Wikitude combineert mobiele geolocatie met andere standaard AR-functies. Het moet dus nog een essentieel hulpmiddel zijn voor elke aspirant-ontwikkelaar die echt coole mobiele AR-apps wil maken. De SDK biedt verschillende licentiemogelijkheden, zoals een eenmalige vergoeding en jaarabonnementen op abonnementsbasis. 

Wikitude kan momenteel worden geïmplementeerd voor mobiele doelen voor Android en iOS. De community zit ook vol met ervaren ontwikkelaars die klaar zijn om hun kennis te delen, en daarom zou je een kortere weg kunnen nemen om je ontwikkelingsinspanningen tot volle snelheid te versnellen..

Tango

Tango is een AR SDK ontwikkeld door Google. Het ondersteunt momenteel slechts twee specifieke apparaatmodellen, namelijk Asus ZenFone AR en Lenovo Phab 2 Pro. Dus, als je geïnteresseerd bent in het specifiek ontwikkelen voor een van die apparaten, is Tango het overwegen waard.

ARKit

ARKit is het AR-platform van Apple. Je moet Xcode 9 krijgen, waarin ARKit is opgenomen als onderdeel van de iOS 11 SDK. Dus als u niet wilt rommelen met hulpprogramma's van derden en u zich liever alleen concentreert op officiële Apple-tools, is ARKit ideaal voor u.

Blijf op de hoogte van Envato Tuts + voor cursussen en tutorials over ARKit!

3. Hybride ontwikkelingstools

Sommige beginnende ontwikkelaars worden geïntimideerd door de steile leercurve die normaal wordt geassocieerd met native mobiele ontwikkelingsplatforms. Ze moeten mogelijk nieuwe programmeertalen leren en platformspecifieke ontwikkelvaardigheden verwerven, zoals het beheersen van de testtools. 

Hybride ontwikkeltools pakken dit probleem op een slimme manier aan. Ze stellen ontwikkelaars met vaardigheden voor webontwikkeling in staat om mobiele apps te ontwikkelen, zonder dat ze platformspecifieke kennis nodig hebben. Er zijn veel van dergelijke platforms beschikbaar, maar we richten ons alleen op een paar populaire.

Reageer Native

React Native is een mobiel ontwikkelingsplatform uitgebracht door Facebook. Hiermee kunnen ontwikkelaars native mobiele apps publiceren met HTML, CSS en JavaScript. U kunt één codebasis onderhouden en uw app publiceren op de Android- of iOS-platforms. 

Het is geweldig omdat je Android Studio of Xcode niet hoeft te installeren op je ontwikkelmachine. En het echte plezier begint wanneer u overschakelt naar de native code in de originele indelingscode van Reaction. Je kunt codefragmenten van verschillende native platforms in dezelfde code-editor mixen, en dat maakt je echt krachtig en veelzijdig.

ionisch

Ionic is een ander raamwerk waarmee u mobiele apps kunt bouwen met HTML, CSS en JavaScript. Het komt uit de poort met een bibliotheek met UI-componenten en veel handige hulpprogramma's waarmee je prachtige mobiele apps kunt coderen. Ionic is gebouwd bovenop het zeer populaire Angular-framework, dus als je ervaring hebt met Angular, zul je Ionic snel vinden.

NativeScript

NativeScript is een ander raamwerk voor het bouwen van platformonafhankelijke mobiele apps. Net als Ionic en React Native kun je CSS en JavaScript gebruiken om mobiele apps te bouwen, maar in plaats van HTML codeer je je app-lay-outs in XML. 

NativeScript kan Android, iOS en zelfs het Windows Universal Platform targeten. In tegenstelling tot Ionic, dat de WebView van Cordova gebruikt voor het weergeven van de UI van de app, gebruikt NativeScript de rendering-engine van het native platform, wat betekent dat het een echte native-gebruikerservaring biedt. 

Adobe PhoneGap

PhoneGap was een van de pioniers van HTML-gebaseerde hybride mobiele ontwikkelingskaders. Sinds we in 2011 door Adobe zijn overgenomen, is het alleen maar beter en beter geworden. 

De snelste manier om aan de slag te gaan, is door de PhoneGap desktop-app te downloaden en de codering in te duiken. U kunt apps emuleren in uw browser en u kunt ook live testen uitvoeren op aangesloten apparaten met behulp van de PhoneGap Developer Mobile App. Het kan alle drie de populaire platforms bedienen: Android, iOS en Windows Phone. 

Als u een probleem tegenkomt tijdens het schrijven van uw app, zijn er duizenden berichten en artikelen op internet die u kunnen helpen bij het oplossen van de problemen. PhoneGap heeft een bloeiende gemeenschap van ontwikkelaars die echt deskundig en behulpzaam zijn.

Xamarin

Xamarin is een ander hybride mobiele ontwikkelingshulpmiddel, maar het is gebaseerd op C #, in plaats van HTML. Dus als u afkomstig bent van een Microsoft-ontwikkelingsachtergrond en mobiele platform-apps wilt ontwikkelen, is dit een ideale keuze. U hebt ook Visual Studio IDE nodig wanneer u mobiele apps ontwikkelt met Xamarin.

Conclusie

De beschikbaarheid van de juiste hulpmiddelen en de mogelijkheid om ze correct te gebruiken, zijn de belangrijkste succesfactoren voor de ontwikkeling van mobiele apps. Dus, wanneer u van plan bent om uw volgende app te ontwikkelen, probeer deze tools eens.