Ik wil Android-apps ontwikkelen - Welke talen moet ik leren?

Schrijver: Laura McKinney
Datum Van Creatie: 2 Lang L: none (month-011) 2021
Updatedatum: 1 Juli- 2024
Anonim
ANDROID app maken met ANDROID STUDIO | BASIS #1
Video: ANDROID app maken met ANDROID STUDIO | BASIS #1

Inhoud


Dus je hebt besloten dat je wilt leren hoe je Android-apps kunt ontwikkelen? Super goed! Helaas kunnen intenties je alleen zo ver brengen. Leren coderen kan ingewikkeld zijn. Soms is het niet eens duidelijk waar te beginnen. U zult waarschijnlijk een hele reeks vragen moeten beantwoorden voordat u zelfs maar aan de slag gaat?

  • Welke programmeertaal moet je leren?
  • Waar kunt u leren over de door u gekozen taal?
  • Als je eenmaal de basis hebt begrepen,waar begin je zelfs de code te typen?

In dit bericht gaan we proberen die eerste vraag te beantwoorden. Beslissen met welke programmeertaal u begint, hangt volledig af van wat u hoopt te bereiken. En zodra u de taal kent, kunt u de IDE en de bijbehorende hulpmiddelen vinden.

Volgende lezen:De beste Android-app-makers voor het maken en bouwen van apps met nulcode

Zien terwijl u een site leest met de naam , is het waarschijnlijk veilig om aan te nemen dat u voornamelijk geïnteresseerd bent in het maken van Android-apps. En in dat geval hebt u een paar opties.


Kies maar

Als u Android-apps wilt ontwikkelen, is stap één een taal kiezen. De verschillen tussen de verschillende Android-programmeertalen kunnen een beetje complex en genuanceerd zijn. De keuze om mee te beginnen vereist inzicht in hun individuele sterke en zwakke punten.

Maar ik wil je ook niet dood vervelen. U vindt hier een korte uitsplitsing van elke taaloptie, gevolgd door meer gedetailleerde informatie hieronder. Kies degene die jou interessant lijkt en spring er dan naar toe.

De talen die u zou kunnen overwegen te leren voor Android-ontwikkeling zijn:

  • Java - Java is de officiële taal van Android-ontwikkeling en wordt ondersteund door Android Studio. Het heeft echter een steile leercurve.
  • Kotlin - Kotlin werd onlangs geïntroduceerd als een secundaire "officiële" Java-taal.Het lijkt in veel opzichten op Java, maar is een beetje gemakkelijker om je hoofd erbij te houden.
  • C / C ++ - Android Studio ondersteunt ook C ++ met het gebruik van de Java NDK. Dit maakt native coderingstoepassingen mogelijk, wat handig kan zijn voor dingen als games. C ++ is echter ingewikkelder.
  • C # - C # is een iets meer beginnersvriendelijk alternatief voor C of C ++ dat meer code verdoezelt. Het wordt ondersteund door een aantal zeer handige tools zoals Unity en Xamarin die geweldig zijn voor game-ontwikkeling en voor platformoverschrijdende ontwikkeling.
  • BASIS - Een bonusoptie is om BASIS te leren en de B4A IDE van Anywhere Software te proberen. Dit is een eenvoudige maar krachtige tool, maar zeker veel meer niche!
  • Corona / LUA - Nog een platformonafhankelijke tool gebouwd op LUA. Het vereenvoudigt het app-bouwproces enorm en stelt u in staat native bibliotheken te bellen.
  • PhoneGap (HTML, CSS, JavaScript) - Als u al weet hoe u interactieve webpagina's moet bouwen, kunt u deze kennis met PhoneGap gebruiken om een ​​meer eenvoudige platformoverschrijdende app te bouwen.

Java

Als het tijd is om Android-apps te ontwikkelen, is Java de eerste en populairste optie. Java is de officieel taal van Android-ontwikkeling, wat betekent dat het degene is die de meeste ondersteuning van Google heeft en waarmee de meeste apps in de Play Store zijn gebouwd.


De nummer één manier om Android-apps te ontwikkelen, is door Android Studio te downloaden. Dit is een stukje software dat een IDE of Integrated Development Environment wordt genoemd. Het wordt geleverd met de Android SDK (een set hulpprogramma's om Android-ontwikkeling specifiek te vergemakkelijken) en in feite geeft dit je alles wat je nodig hebt op één plek om aan de slag te gaan.

De officiële tutorials en documentatie van Google zullen naar deze methode verwijzen en u zult het grootste aantal bibliotheken vinden (gratis code om uw eigen apps te verbeteren) en tutorials die zich op deze methode richten.

Java zelf werd in 1995 uitgebracht door Sun Microsystems en wordt gebruikt voor een breed scala aan programmeertoepassingen. Java-code wordt uitgevoerd door een "virtuele machine" die op Android-apparaten draait en de code interpreteert.

Volgende lezen: Anatomie van een app: een inleiding tot de levenscyclus van activiteiten

Helaas is Java ook een beetje ingewikkeld en het is geen geweldige 'eerste taal'. Dit is de grootste barrière voor veel mensen die willen beginnen met Android-ontwikkeling. Android is een objectgeoriënteerde programmeertaal met verwarrende onderwerpen zoals constructors, null pointer-uitzonderingen, aangevinkte uitzonderingen en meer. Het is niet vreselijk leesbaar en je gebruikt veel 'boiler plate'-code om simpele dingen te doen. Voeg de Java SDK toe en dingen worden nog gecompliceerder - een eerste keer coder kan moeite hebben om te weten wat Java is en wat Android is! Ontwikkeling met behulp van deze route vereist ook een basiskennis van concepten zoals Gradle, zoals het Android Manifest en de opmaaktaal XML.

Dat wil niet zeggen dat Java een slechte taal is - verre van dat. Het is niet alleen verkeerd om elke taal 'slecht' te noemen, maar het is ook waar dat de meeste ongemakken van Java er eigenlijk zijn voor ons eigen bestwil en schone code aanmoedigen. Veel mensen houden daarom van Java en het is ook een van de meest veelzijdige en meest gebruikte. Volgens de PYPL-tabel (PopularitY of Programming Languages) is Java de meest gewilde programmeertaal bij werkgevers.

Het maken van het leven een stuk eenvoudiger is Android Studio, dat de laatste jaren steeds sterker is geworden. Functies zoals een visuele ontwerper en suggesties maken het proces een stuk soepeler, terwijl geavanceerde, krachtige functies de hele tijd worden toegevoegd om ontwikkelaars toegang te geven tot zaken als cloudopslag met eenvoudige implementatie. Het is de moeite waard om aan boord te gaan, zelfs als deze snelle vooruitgang het soms moeilijk maakt om bij te blijven.

Wat is het vonnis? Voor degenen die de volledige Android-ontwikkelingservaring willen, is duiken in Java de beste plek om te beginnen. Voor degenen die afgeschrikt worden door complexe code, is het mogelijk om grotendeels met de ontwerper samen te werken en tutorials te volgen voor iets ingewikkelder. Als je echter een beginner bent en je wilt een game maken, of je wilt gewoon leren om te leren en je wilt een aantal lonende projecten van de grond krijgen, dan raad ik je aan om met iets te beginnen gemakkelijker en kom hier op terug als je eenmaal een beetje meer geaard bent.

Bekijk hier Gary's introductie op Java.

Notitie:

Dat gezegd hebbende, het is ook mogelijk om Java met Unity te gebruiken. Ik zal Unity bespreken in het gedeelte over C #, maar houd er rekening mee dat je voor de iets gecompliceerdere Java-taal zou kunnen kiezen wanneer je deze route gaat en dat vervolgens kunt gebruiken om gemakkelijker over te stappen op ontwikkeling met Android Studio.

Kotlin

Kotlin kwam onlangs op het toneel als de "andere" officiële taal voor Android-ontwikkeling. Sommige speculaties suggereren dat dit waarschijnlijk het profiel van de taal zal verhogen en dat het mogelijk de volgende Swift zou kunnen worden.

Net als Java draait Kotlin op de Java Virtual Machine. Het is ook volledig interoperabel met Java en veroorzaakt geen vertraging of toename van de bestandsgrootte. Het verschil is dat Kotlin minder "boiler plate" -code vereist, wat betekent dat het een meer gestroomlijnd en gemakkelijk leesbaar systeem is. Het elimineert ook fouten zoals nulpuntuitzonderingen en excuseert u zelfs om elke regel met puntkomma's te beëindigen. Kortom, het is geweldig als je net leert om Android-apps voor het eerst te ontwikkelen.

Dus Kotlin is zeker een eenvoudiger startpunt voor beginners, en het feit dat je Android Studio nog steeds kunt gebruiken, is een groot pluspunt. Het is nog steeds niet zo eenvoudig om op te pakken als bijvoorbeeld C # met Unity, en de community-ondersteuning staat nog in de kinderschoenen. In feite moet u momenteel een bètaversie van Android Studio downloaden om direct ondersteuning te krijgen.

Toch zou Kotlin zeker op je radar moeten zijn en een eenvoudiger toegangspunt kunnen bieden voor 'goede' Android-ontwikkeling. Dat is waarschijnlijk waarom Google het in de eerste plaats heeft geïntroduceerd.

Lees hier waarom u Kotlin zou moeten proberen.

C / C ++

Het is redelijk om te zeggen dat de meeste mensen die dit lezen, deze route niet moeten kiezen om Android-apps te ontwikkelen. Android Studio biedt ondersteuning voor C / C ++ code met behulp van de Android NDK (Native Development Kit). Dit betekent dat u code schrijft die niet op de Java Virtual Machine wordt uitgevoerd, maar eerder op het apparaat wordt uitgevoerd en u meer controle geeft over dingen zoals geheugen. Voor intensieve toepassingen zoals 3D-games kunt u hiermee extra prestaties uit een Android-apparaat persen. Het betekent ook dat u bibliotheken kunt gebruiken die zijn geschreven in C of C ++.

Het is echter meestal veel moeilijker in te stellen, het introduceert meer bugs en is minder flexibel. En als je een computerspel wilde maken, zou je waarschijnlijk beter af zijn met een kant-en-klare game-engine

C #

C # is in feite een eenvoudigere, pure objectgeoriënteerde versie van C en C ++ ontwikkeld door Microsoft. Het beoogde de kracht van C ++ en het gemak van Visual Basic te brengen en leest een beetje als een vereenvoudigde versie van Java. Net als Java wordt C # afval verzameld, wat betekent dat u zich geen zorgen hoeft te maken over dingen als geheugenlekken en zelf geheugen vrijmaken. Tegelijkertijd is C # moderner dan Java met een schonere syntaxis - hoewel dit misschien gewoon mijn eigen vooroordeel is. De beste taal om Android-apps te ontwikkelen komt vaak gewoon neer op smaak.

Als je echter een bijzonder gemakkelijke en gastvrije introductie wilt voor de ontwikkeling van Android-apps, raad ik de combinatie van C # en Unity aan. Unity is een 'game-engine' (wat betekent dat het dingen biedt zoals natuurkundige berekeningen en 3D-grafische weergave) en een IDE zoals Android Studio. Dit is een gratis tool die het ongelooflijk eenvoudig maakt om je eigen games te maken - met slechts een paar regels code kun je een basisplatformspel in minder dan een uur instellen. Geen overdrijving. En het is ook perfect krachtig, omdat het de tool is die door de meeste gamestudio's in de Google Play Store wordt gebruikt. En het is ook multiplatform. Bovendien biedt het op deze manier ontwikkelen een zeer praktische manier om Object Oriented-codering te leren (omdat de objecten in dit geval meestal meestal objecten zijn).

De beperking? Unity is handig voor het maken van games, maar ondermaats voor het maken van standaard Android-apps, vooral als u wilt voldoen aan de materiaalontwerptaal van Google. Als je een professionele Android-ontwikkelaar wilt worden, beperkt deze niet-standaardroute je kansen op werk - tenzij je doel bent om een ​​game-ontwikkelaar te worden, in welk geval dit een perfect relevante en professionele achtergrond is.

Geen zin in eenheid? Dan zou je in plaats daarvan Unreal (betere grafische weergave, minder geschikt voor mobiel) of vereenvoudigde gamemakers zoals GameMaker Studio kunnen overwegen.

C # kan ook worden gebruikt met Xamarin via Visual Studio. Dit lijkt meer op traditionele Android-ontwikkeling met het voordeel dat het platformoverschrijdend is (één codebase voor Android en iOS). Voor een complete beginner is deze route opnieuw een ietwat stompe ingang tot Android-ontwikkeling - maar voor een klein bedrijf dat een app voor iOS en Android wil maken, is het logisch en er is veel ondersteuning en informatie beschikbaar om je te helpen .

BASIC

Weet je nog hoe ik zei dat C # een poging was om de kracht van C te bieden met het gemak van Visual BASIC? Nou, dat komt omdat BASIC (Beginners All-Purpose Symbolic Instruction Code) ongelooflijk aangenaam in gebruik is en een absoluut ideaal springpunt is om te leren coderen.

Helaas wordt het niet officieel ondersteund door Android Studio en kun je het ook niet gebruiken in Unity of Xamarin. Het goede nieuws is dat er een minder bekende optie is voor het ontwikkelen van Android-apps in BASIC genaamd B4A van Anywhere Software. Dit is een acroniem voor ‘BASIC 4 Android’ en zoals je zou verwachten, kun je Android-apps coderen met BASIC. Het is zeker niet de eerste keuze voor de meeste programmeurs die Android-apps willen ontwikkelen, maar het is altijd leuk om meer opties te hebben.

B4A is ontworpen als een RAD- of Rapid Application Development-omgeving. Er zijn veel andere slimme ontwerpbeslissingen om het leven gemakkelijker te maken, en er is een zeer ondersteunende community als je vragen hebt.

Dit is een geweldige manier om te leren coderen en je kunt enkele behoorlijk krachtige apps bouwen met alleen deze methode. Het is echter niet ideaal voor het maken van geavanceerdere games en lijdt wederom onder een "onofficiële" optie - dus het is moeilijker om iets te maken dat precies voldoet aan de specificaties van het Material Design en je zult het moeilijker vinden om te werken als een professionele ontwikkelaar met alleen BASIC . Het andere grote nadeel is dat dit de enige optie op de lijst is die niet gratis is.

Corona

Corona biedt nog een aanzienlijk eenvoudiger optie voor het ontwikkelen van Android-apps, terwijl u nog steeds een behoorlijke hoeveelheid kracht en controle krijgt. Je gaat coderen in LUA, dat al veel eenvoudiger is dan Java en bovendien maakt de Corona SDK (Software Development Kit) het nog eenvoudiger. Het ondersteunt alle native bibliotheken, zodat u naar meerdere platforms kunt publiceren. Het wordt grotendeels gebruikt voor het maken van games, maar kan ook op verschillende andere manieren worden gebruikt. U moet een teksteditor zoals Kladblok ++ gebruiken om uw code in te voeren en u kunt deze code op een emulator uitvoeren zonder zelfs eerst te hoeven compileren. Wanneer u klaar bent om een ​​APK te maken en te implementeren, kunt u dit doen met een online tool.

Dit vereist wel basis codeervaardigheden, maar het biedt een leuke en zachte introductie in de wereld van programmeren. Tegelijkertijd is het echter zeker tot op zekere hoogte beperkt en is het een paar stappen verwijderd van toegang tot het gebied van de "app-builder". Dit is nuttiger voor iemand die iets relatief eenvoudig wil maken en zich niet zo druk maakt over het ontwikkelen van hun codeervaardigheden of het worden van een professional. Als u functies zoals in-app aankopen wilt gebruiken, moet u een vergoeding betalen. Hetzelfde geldt voor het gebruik van native Android API's.

PhoneGap

Ten slotte is PhoneGap de laatste grote "vereenvoudigde" optie die u kunt gebruiken om Android-apps te ontwikkelen, tenzij u zich in plaats daarvan wilt wenden tot een programma voor het maken van apps. PhoneGap wordt mogelijk gemaakt door Apache Cordova en stelt u in wezen in staat apps te maken met dezelfde code die u normaal zou gebruiken om een ​​website te maken: HTML, CSS en JavaScript. Dit wordt vervolgens weergegeven via een "WebView" maar verpakt als een app. PhoneGap fungeert dan als een brug, waardoor ontwikkelaars toegang hebben tot een aantal standaard native functies van de telefoon of tablet - zoals de versnellingsmeter of de camera.

Dit is echter niet echt "echte" Android-ontwikkeling, en de enige echte programmering zal JavaScript zijn. Voor veel basistaken volstaat het, maar als je echt "Android app-ontwikkeling" wilt claimen (dat is een ding), moet je een van de andere keuzes in deze lijst trotseren.

Gevolgtrekking

Dus kies maar! Ik wou dat er een manier was om Android-apps (gemakkelijk) met Python te ontwikkelen, maar verder heb je daar een brede selectie van verschillende opties voor het ontwikkelen van Android-apps: van Java en Kotlin, tot C, C # en BASIC! U kunt zelfs HTML en CSS gebruiken om iets eenvoudig te maken met PhoneGap.

De juiste keuze hangt af van uw gevoeligheden en uw doelstellingen, maar wat u ook besluit, u zult merken dat leren coderen een fantastisch lonende ervaring is en een die veel deuren voor u opent. En leren coderen met Android is de perfecte plek om te beginnen. Hopelijk heb je nu in ieder geval nu een beetje meer informatie over het ontwikkelen van Android-apps, maar als je vragen hebt, roep ze dan in de comments en ons team - en onze lezers - zullen ons best doen om ze te beantwoorden. Succes!

Volgende lezen: Een inleiding tot de syntaxis van Java voor Android-ontwikkeling Verbruik van API's: Aan de slag met Retrofit op Android

Update, 16 augutu 2019 (1:45 AM ET): Huawei i nu bij on teruggekomen TechRadar meldde dat de Huawei Mate X 'onwaarchijnlijk' zou worden gelanceerd vóór november....

Welkom bij de 274e editie van! Hier zijn de grote krantenkoppen van de afgelopen week:Google Aitent had deze week wat verontrutend nieuw. Het blijkt dat menen naar je Google Aitent-opname luiteren. W...

De Meest Lezen