Jag vill utveckla Android-appar - Vilka språk ska jag lära mig?

Författare: Laura McKinney
Skapelsedatum: 2 April 2021
Uppdatera Datum: 1 Juli 2024
Anonim
Jag vill utveckla Android-appar - Vilka språk ska jag lära mig? - Appar
Jag vill utveckla Android-appar - Vilka språk ska jag lära mig? - Appar

Innehåll


Så du har bestämt att du vill lära dig att utveckla Android-appar? Bra! Tyvärr kan avsikter bara bära dig hittills. Att lära sig att koda kan vara komplicerat. Ibland är det inte ens klart var man ska börja. Du har förmodligen en massa frågor att besvara innan du ens kommer igång?

  • Vilket programmeringsspråk ska du lära dig?
  • Var kan du lära dig om ditt valda språk?
  • När du har förstått grunderna,var börjar du även skriva koden?

I det här inlägget kommer vi att försöka besvara den första frågan. Att bestämma vilket programmeringsspråk du ska börja med kommer helt att bero på vad du hoppas åstadkomma. När du väl vet språket kan du hitta IDE och verktygen som ska matchas.

Läs nästa:De bästa Android-apptillverkarna för att skapa appar och bygga dem med nollkod


Ser när du läser en webbplats som heter , är det förmodligen säkert att anta att du är intresserad av hur man skapar Android-appar främst. Och i så fall har du några alternativ.

Ta ditt val

Om du vill utveckla Android-appar är steg ett att välja ett språk. Skillnaderna mellan olika Android-programmeringsspråk kan vara lite komplexa och nyanserade. Att välja vilken man ska börja med kräver en förståelse för deras individuella styrkor och svagheter.

Men jag vill inte heller utjämna dig ihjäl. Här hittar du en kort uppdelning av varje språkalternativ, följt av mer detaljerad information nedan. Välj den som ser intressant ut för dig och hoppa sedan till den.

De språk du kan överväga att lära för Android-utveckling inkluderar:


  • Java - Java är det officiella språket för Android-utveckling och stöds av Android Studio. Den har dock en brant inlärningskurva.
  • Kotlin - Kotlin introducerades nyligen som ett sekundärt ”officiellt” Java-språk.Det liknar Java på många sätt men är lite lättare att ta sig runt huvudet.
  • C / C ++ - Android Studio stöder också C ++ med Java NDK. Detta tillåter naturliga kodningsprogram, som kan vara praktiska för saker som spel. C ++ är dock mer komplicerat.
  • C # - C # är ett lite mer nybörjarvänligt alternativ till C eller C ++ som döljer mer kod. Det stöds av några mycket praktiska verktyg som Unity och Xamarin som är bra för spelutveckling och för plattformsutveckling.
  • BASIC - Ett bonusalternativ är att lära sig BASIC och prova B4A IDE från Anywhere Software. Detta är ett enkelt men kraftfullt verktyg, men definitivt mycket mer nisch!
  • Corona / LUA - Ett annat plattformsverktyg som bygger på LUA. Det förenklar massa app-byggprocessen och låter dig ringa infödda bibliotek.
  • PhoneGap (HTML, CSS, JavaScript) - Om du redan vet hur man bygger interaktiva webbsidor kan du använda denna kunskap med PhoneGap för att bygga en mer grundläggande plattformsapp.

Java

När det är dags att utveckla Android-appar är det första och mest populära alternativet Java. Java är officiell Android-utvecklingsspråket, vilket betyder att det är det som har mest stöd från Google och det som de flesta appar i Play Store är byggda med.

Det bästa sättet att utveckla Android-appar är att gå vidare och ladda ner Android Studio. Detta är en mjukvara som kallas en IDE, eller Integrated Development Environment. Den kommer förpackad med Android SDK (en uppsättning verktyg för att underlätta Android-utvecklingen specifikt) och i princip kommer detta att ge dig allt du behöver på ett ställe för att komma igång.

Den officiella handledning och dokumentation från Google kommer att referera till den här metoden och du hittar det största antalet bibliotek (gratis kod för att förbättra dina egna appar) och handledning som fokuserar på den här metoden.

Java själv släpptes av Sun Microsystems redan 1995 och används för ett brett spektrum av programmeringsapplikationer. Java-kod drivs av en "virtuell maskin", som körs på Android-enheter och tolkar koden.

Läs nästa: En apps anatomi: En introduktion till aktivitetslivscykler

Tyvärr är Java också lite komplicerat och det är inte ett fantastiskt "första språk". Det är detta som kommer att ge den största barriären för många människor som faktiskt vill komma igång med Android-utveckling. Android är ett objektorienterat programmeringsspråk med förvirrande ämnen som konstruktörer, undantag från nollpekare, kontrollerade undantag och mer. Det är inte oerhört läsbart och du kommer att använda mycket "pannplatta" -kod för att göra enkla saker. Lägg till Java SDK så blir sakerna mer komplicerade - en första gången kodare kan kämpa för att veta vad som är Java och vad som är Android! Utveckling med denna rutt kräver också en grundläggande förståelse för begrepp som Gradle, som Android Manifest och markeringsspråket XML.

Det är inte att säga att Java är ett dåligt språk - långt ifrån det. Inte bara skulle det vara fel att kalla något språk "dåligt", men det är också sant att de flesta av besvären med Java faktiskt finns där för vårt eget bästa och uppmuntrar ren kod. Många älskar Java av detta skäl, och det är också en av de mest mångsidiga och mest använda. Enligt tabellen PYPL (PopularitY of Programming Language) är Java det mest eftertraktade programmeringsspråket bland arbetsgivare.

Att göra livet mycket enklare är Android Studio, som har gått från styrka till styrka under de senaste åren. Funktioner som en visuell designer och förslag gör processen ganska smidigare, medan avancerade, kraftfulla funktioner läggs hela tiden för att ge utvecklare tillgång till saker som molnlagring med enkel implementering. Det är värt att komma ombord, även om denna snabba framsteg gör det svårt att hålla ihop ibland.

Så vad är domen? För dig som vill ha full Android-upplevelse är dykning till Java det bästa stället att börja. För dem som är avskräckta med komplex kod är det möjligt att i stor utsträckning arbeta med designern och följa handledning för allt mer komplicerat. Om du är nybörjare och du vill skapa ett spel, eller om du bara vill börja lära för att lära dig och du vill få några givande projekt från marken, rekommenderar jag att du börjar med något lättare och komma tillbaka till detta när du har fått lite mer grund.

Kolla in Garys introduktion till Java här.

Notera:

Som sagt är det också möjligt att använda Java med Unity. Jag kommer att diskutera Unity under avsnittet om C #, men bara notera att du kan välja det lite mer komplicerade Java-språket när du går den här vägen och sedan använda det för att lättare gå över till att utvecklas med Android Studio.

Kotlin

Kotlin brast nyligen ut på scenen som det ”andra” officiella språket för Android-utveckling. Vissa spekulationer antyder att detta sannolikt kommer att höja språkprofilen och att det eventuellt kan bli nästa Swift.

Liksom Java kör Kotlin på Java Virtual Machine. Det är också helt interoperabelt med Java och orsakar inte någon nedgång eller ökning av filstorlekar. Skillnaden är att Kotlin kräver mindre "pannplatta" -kod, vilket innebär att det är ett mer strömlinjeformat och lättläst system. Det undanröjer också fel som undantag från nollpunkterna och till och med ursäktar dig från att avsluta varje rad med halvkolon. Kort sagt, det är bra om du bara lär dig att utveckla Android-appar för första gången.

Så Kotlin är definitivt en enklare utgångspunkt för nybörjare, och det faktum att du fortfarande kan använda Android Studio är ett stort plus. Det är fortfarande inte riktigt lika enkelt att plocka upp som säga C # med Enhet, och samhällsstödet är i dess relativa spädbarn. Faktum är att du för närvarande måste ladda ner en betaversion av Android Studio för att få support utanför boxen.

Ändå borde Kotlin definitivt vara på din radar och kan erbjuda en enklare startpunkt för "rätt" Android-utveckling. Vilket är troligt varför Google introducerade det i första hand.

Lär dig varför du bör prova Kotlin här.

C / C ++

Det är rättvist att säga att de flesta som läser detta inte bör välja den här vägen för att utveckla Android-appar. Android Studio erbjuder support för C / C ++ -kod med Android NDK (Native Development Kit). Detta betyder att du skriver kod som inte körs på Java Virtual Machine utan snarare körs på enheten och ger dig mer kontroll över saker som minne. För intensiva applikationer som 3D-spel kan detta låta dig pressa extra prestanda från en Android-enhet. Det betyder också att du kan använda bibliotek skrivna i C eller C ++.

Men det tenderar också att vara mycket svårare att konfigurera, det introducerar fler buggar och det är mindre flexibelt. Och om du ville skapa ett datorspel skulle du förmodligen vara bättre på att använda en färdigt spelmotor

C #

C # är i princip en enklare, ren objektorienterad version av C och C ++ utvecklad av Microsoft. Det syftade till att få kraften i C ++ och enkelheten i Visual Basic och läser lite som en förenklad version av Java. Precis som Java, samlas C # sopor, vilket innebär att du inte behöver oroa dig för saker som minnesläckor och frigöra minne själv. Men på samma gång är C # modernare än Java med en renare syntax - även om detta kanske bara är min egen förspänning som kommer igenom. Det bästa språket för att utveckla Android-appar kommer ofta bara att smaka.

Om du vill ha en särskilt enkel och välkomnande introduktion till Android-apputveckling, rekommenderar jag dock kombinationen av C # och Unity. Enhet är en "spelmotor" (vilket innebär att det ger saker som fysikberäkningar och 3D-grafikåtergivning) och en IDE som Android Studio. Detta är ett gratis verktyg som gör det otroligt enkelt att skapa dina egna spel - med bara några kodrader kan du få ett grundläggande plattformsspel inställt på mindre än en timme. Ingen överdrift. Och det är också helt kraftfullt, eftersom det är det verktyg som används av de flesta spelstudior i Google Play Store. Och det är multiplatform också. Utöver allt detta ger utvecklingen på detta sätt ett mycket praktiskt sätt att lära sig objektorienterad kodning (eftersom objekten i detta fall faktiskt är objekt för det mesta).

Begränsningen? Enhet är användbart för att skapa spel men sub-par för att skapa standard Android-appar, särskilt om du vill överensstämma med Googles språk för materialdesign. Om du vill bli en professionell Android-utvecklare kommer denna icke-standardväg att begränsa dina anställningsmöjligheter - såvida inte ditt mål är att bli en spelutvecklare, i vilket fall detta är en perfekt relevant och professionell bakgrund.

Inte angelägen om enhet? Då kan du överväga Unreal istället (bättre grafik, mindre lämpad för mobil) eller förenklade spelare som GameMaker Studio.

C # kan också användas med Xamarin via Visual Studio. Detta är mer besläktat med traditionell Android-utveckling med fördelen av att vara platt plattform (en kodbas för Android och iOS). För en nybörjare är den här vägen återigen en lite otydlig startpunkt för Android-utveckling - men för ett litet företag som vill skapa en app för iOS och Android är det vettigt och det finns gott om support och information där ute för att hjälpa dig .

GRUNDLÄGGANDE

Kommer du ihåg hur jag sa att C # var ett försök att erbjuda kraften i C med enkel Visual BASIC? Tja, det beror på att BASIC (nybörjare symbolisk instruktionskod för nybörjare) är otroligt trevlig att använda och en absolut idealisk hoppning för att lära sig att koda.

Tyvärr stöds det inte officiellt av Android Studio och du kan inte heller använda det i Unity eller Xamarin. Den goda nyheten är att det finns ett mindre känt alternativ för att utveckla Android-appar i BASIC som heter B4A från Anywhere Software. Detta är en förkortning för 'BASIC 4 Android' och som du kan förvänta dig kan du koda Android-appar med BASIC. Det är verkligen inte det första valet för de flesta programmerare som vill utveckla Android-appar, men det är alltid trevligt att ha fler alternativ.

B4A är designad som en RAD eller snabb applikationsutvecklingsmiljö. Det finns många andra smarta designbeslut för att göra livet lättare, och det finns ett mycket stödjande samhälle om du har några frågor.

Detta är ett utmärkt sätt att lära sig att koda, och du kan bygga några ganska kraftfulla appar med den här metoden ensam. Det är dock inte idealiskt för att skapa högkvalitativa spel och lider än en gång från att vara ett "inofficiellt" alternativ - så det är svårare att skapa något som exakt uppfyller specifikationerna för Materialdesign och du kommer att ha svårare att arbeta som en professionell utvecklare med bara BASIC . Den andra stora nackdelen är att detta är det enda alternativet på listan som inte är gratis.

Korona

Corona erbjuder ett annat betydligt enklare alternativ för att utveckla Android-appar och samtidigt ge dig en hel del kraft och kontroll. Du kodar i LUA, som redan är mycket enklare än Java och ovanpå kommer Corona SDK (Software Development Kit) att göra sakerna ännu enklare. Det stöder alla infödda bibliotek, låter dig publicera till flera plattformar. Det används till stor del för att skapa spel men kan också användas på många andra sätt. Du måste använda en textredigerare som Notepad ++ för att ange din kod och du kan köra nämnda kod på en emulator utan att ens behöva kompilera först. När du är redo att skapa en APK och distribuera kan du göra det med ett onlineverktyg.

Detta kräver grundläggande kodningskunskaper, men det ger en trevlig och skonsam introduktion till programmeringsvärlden. Men samtidigt är det definitivt begränsat till viss del och är några steg bort från att komma in i ”app builder” territorium. Detta är mer användbart för någon som vill skapa något relativt enkelt och inte är lika bekymrad över att utveckla sina kodfärdigheter eller bli proffs. Om du vill använda funktioner som inköp i appen måste du betala en avgift. Detsamma gäller för att använda inbyggda Android-API: er.

PhoneGap

Slutligen är det senaste stora "förenklade" alternativet du kan vända dig för att utveckla Android-appar, PhoneGap, såvida du inte vill vända dig till ett app-byggprogram. PhoneGap drivs av Apache Cordova och tillåter dig i princip att skapa appar med samma kod som du vanligtvis skulle använda för att skapa en webbplats: HTML, CSS och JavaScript. Detta visas sedan via en "WebView" men paketeras som en app. PhoneGap fungerar sedan som en bro, vilket gör det möjligt för utvecklare att få åtkomst till vissa grundläggande inbyggda funktioner på telefonen eller surfplattan - till exempel accelerometer eller kamera.

Detta är dock inte riktigt "sann" Android-utveckling, och den enda riktiga programmeringen kommer att vara JavaScript. För många grundläggande uppgifter kommer det att göra jobbet, men om du vill kunna hävda äkta "Android-app-utvecklare" (det är en sak), bör du modiga ett av de andra valen i den här listan.

Slutsats

Så ta ditt val! Jag önskar att det fanns ett sätt att utveckla Android-appar (enkelt) med Python, men annars har du ett brett urval av olika alternativ där för att utveckla Android-appar: från Java och Kotlin, till C, C # och BASIC! Du kan till och med använda HTML och CSS för att göra något enkelt med PhoneGap.

Det rätta valet kommer att bero på dina känslor och dina mål, men oavsett vad du bestämmer, kommer du att upptäcka att lära sig att koda är en fantastiskt givande upplevelse och en som öppnar upp massor av dörrar för dig. Och att lära sig att koda med Android är det perfekta stället att börja. Förhoppningsvis nu, åtminstone nu, lite mer om hur du utvecklar Android-appar, men om du har några frågor, ropa dem i kommentarerna och vårt team - och våra läsare - kommer att göra vårt bästa för att svara på dem. Lycka till!

Läs nästa: En introduktion till Java-syntax för Android-utveckling | Konsumerar API: er igång med Retrofit på Android

Galaxy 10-fingeravtryckfel har tvingat via banker att ta aken i ina egna händer.Efterom fingeravtryckkannrar blev populära på martphone började de fleta banker tödja den biome...

Fingeravtryckcannrar är i allmänhet äkrare än kamerabaerade löningar för aniktupplåning, men inte alla löningar för upplåning av fingeravtryck kapa li...

Fler Detaljer