I denne opplæringen vil du lære det grunnleggende av Lua programmeringsspråk, og jeg vil hjelpe deg med å komme i gang med å skrive programmer for iOS og Android. Spent? La oss dykke rett inn.
I denne opplæringen vil vi se på Corona SDK og Lua programmeringsspråk. Selv om Lua ikke er vanskelig å plukke opp, anbefales det å ha litt erfaring med andre språk, for eksempel JavaScript, PHP, Java eller Ruby. Vi vil dekke grunnleggende om Corona SDK og Lua for å gjøre deg kjent med utviklingen av Corona-plattformen. Du vil se at det tar svært liten innsats og kode for å komme opp og løpe. Jeg er klar når du er.
Tidligere møtte mobilutviklere et vanskelig problem. Bør de utvikle programmer for iOS eller Android? De fleste iOS-utviklere bruker Objective-C, mens Android-utviklere bruker Java. Heldigvis har vi Corona SDK og Lua programmeringsspråket, noe som gjør det mulig å utvikle cross-platform mobil utvikling. For å si det enkelt, betyr det at du kan utvikle et program en gang og bygge det for iOS, Android, Kindle og Nook.
Programmeringsspråket vi bruker når vi utvikler med Corona SDK er Lua, som er måne på portugisisk. En av de viktigste beneits av Lua, spesielt i kombinasjon med Corona SDK, er at Lua er kryssplattform som språket er skrevet i C. Lua er ikke vanskelig å lære som du finner ut av denne opplæringen. Lua ble opprettet i 1993 av en liten gruppe mennesker ved det pavelige katolske universitetet i Rio de Janeiro, Brasil. Lua er åpen kildekode programvare, slik at du fritt kan bruke den i prosjektene dine. Den distribueres under MIT-lisensen.
Corona SDK er utviklet og vedlikeholdt av Corona Labs og er en kommersiell plattform. Det er flere prisplaner å velge mellom. Det er en gratis startplan og betalte planer som starter fra $ 19 per måned.
For denne opplæringen bruker vi imidlertid startplan. Selv om du kan utvikle Corona-applikasjoner på flere plattformer, viser jeg i denne opplæringen hvordan du bygger programmer ved hjelp av Windows, og vi skal bygge for Android-plattformen.
Er du klar til å komme i gang med cross-platform mobil utvikling? Besøk utviklerportalen til Corona SDK, opprett en konto og last ned Corona SDK. Som jeg nevnte, i denne opplæringen bruker jeg Windows, men du kan følge med på OS X like bra. Etter installasjonen av Corona SDK, åpne Start menyen og naviger til Corona SDK> Corona Simulator. Du bør se to vinduer som vist nedenfor.
Nå som vi har Corona Simulator oppe, må vi få en tekstredigerer til å skrive og redigere Lua. Jeg anbefaler Sublime Text 2, som er en gratis nedlasting. Det er en flott og populær tekstredigerer som støtter syntaxutheving og en båtliste med andre nyttige funksjoner. Dette er spesielt nyttig hvis du skriver store og komplekse applikasjoner. Den støtter Lua sammen med 43 andre programmeringsspråk. Sa jeg deg Sublime Text hvis tilgjengelig på Windows, OS X og Linux? Du kan ikke gå galt med Sublime Text 2.
Gå tilbake til Corona Simulator, hit Nytt prosjekt, og velg en katalog for å lagre prosjektets filer i. Velg Blank som prosjektets mal, Telefonforhåndsinnstilling til Oppreist skjermstørrelse, og Oppreist som Standardretning. Klikk OK å fullføre prosjektoppsettet og navigere til katalogen der du opprettet ditt nye prosjekt. Du bør finne tre filer, build.settings, config.lua, og main.lua. Den eneste filen vi må redigere er Main.lua. Åpne denne filen med valgfri redaktør og erstatt filens innhold med kodestykket nedenfor.
skriv ut ("Hello World!");
Lagre endringene ved å trykke Ctrl + S
og åpne Corona Simulator-vinduet. Vent litt. Ingenting skjedde. Det er helt normalt. Vi må sjekke det andre vinduet som ser ut som ledetekst. Det skal vise Hei Verden! som vist under.
Årsaken til at teksten kun ble vist i Corona Terminal og ikke i Corona Simulator er fordi skrive ut
kommandoen brukes kun til Lua programmeringsspråk. Det kan ikke brukes til å vise ordene på skjermen til Corona Simulator eller en fysisk enhet. Men dette grunnleggende skrive ut
kommandoen vil fortsatt være nyttig når vi utvikler applikasjon, spesielt for feilsøkingsformål.
Vi skal lage en annen Hei Verden! applikasjon. Men denne gangen vil vi få det til å vise ordene i Corona Simulatoren selv. Slett innholdet i main.lua og erstatt den med kodestykket som vist nedenfor.
display.newText ("Hello World!", 0, 0, native.systemFont, 16);
Du har kanskje lagt merke til at denne koden var litt lengre enn den forrige. La oss se hva dette koden gjør for oss.
vise
er objektet vi snakker med.newText
er den funksjonen vi bruker til å vise teksten på skjermen."Hei Verden!"
er teksten vi vil vise.0, 0
er x
og y
koordinater henholdsvis.native.systemFont
er skriften vi bruker til teksten og 16
er skriftstørrelsen.Hvis du lagrer endringene og gjenoppretter Corona Simulator, bør du se følgende.
Hva om du ønsket å lagre et nummer som en variabel for senere bruk? Følgende kodestykke viser hvordan variabler er deklarert i Lua.
lokal num1 = 3 + 3;
lokal
er nøkkelordet for å erklære en variabel.num1
er navnet på variabelen.Hvis vi kombinerer dette med forrige kodestykke, får vi følgende.
lokal num1 = 3 + 3; display.newText (num1, 0, 0, native.systemFont, 32);
Corona Simulator skal nå vise nummeret 6
, som er resultatet av å legge til 3
og 3
. La oss prøve et annet eksempel ved å bruke matte. Ved hjelp av følgende kodestykke, bør Corona Simulator vise nummeret 18
.
lokal num1 = 3 + 3; display.newText (num1 * 3, 0, 0, native.systemFont, 32);
Som du kan se, er det helt mulig å utføre matematiske operasjoner på en variabel. I den ovennevnte kodebiten multiplicerte vi num1
av 3
ved hjelp av * 3
. Jeg er sikker på at du allerede har funnet ut at stjernen er multiplikasjonsoperatøren i Lua.
+
for tillegg-
for subtraksjon og negative tall*
for multiplikasjon/
for divisjonDet er heller ikke vanskelig å vise bilder. For å vise et bilde må du legge til bildet i katalogen hvor main.lua sitter. Det er greit å lage en underkatalog for å holde prosjektets ressurser skilt og organisert. La oss gjøre det nå. Opprett en ny katalog i prosjektmappen din og gi den navnet Bilder. Bruke Bilder katalog for å lagre prosjektets bilder. Bildet jeg vil bruke til denne opplæringen er logo1.png og jeg har plassert den i Bilder katalog vi opprettet for øyeblikket siden.
Som du ser i følgende kodestykke, er det nesten like enkelt å vise et bilde som å vise tekst. Jeg våger å si at det er enda enklere fordi du ikke trenger å spesifisere en skrift.
lokal photo1 = display.newImage ("images / logo1.png", 0, 0);
Hvis du ser nøye på det forrige skjermbildet, vil du legge merke til at det er en statuslinje øverst på skjermen som viser transportøren, batterilevetiden etc. Har du noen gang lagt merke til at noen ganger, når du åpner et program, spesielt spill, Statuslinjen forsvinner automatisk? Å gjemme statuslinjen er like enkelt som å legge til en linje med kode til main.lua. Det er enkelt som det. Oppdater prosjektet og se på resultatet i Corona Simulator.
display.setStatusBar (display.HiddenStatusBar);
Det er nyttig å vite at statuslinjen kan ha forskjellige stiler. Navnene på stilene snakker for seg selv. For mange applikasjoner, spesielt spill, bruker HiddenStatusBar
er mest egnet.
display.setStatusBar (display.DefaultStatusBar);
display.setStatusBar (display.DarkStatusBar);
display.setStatusBar (display.TranslucentStatusBar);
La oss fortsette med former. Den første formen vi viser er et rektangel. La oss se hva som trengs for å vise et rektangel på skjermen.
lokal rect1 = display.newRect (10, 20, 150, 50);
lokal rect1
erklærer en variabel for rektangelet.display.newRect
skaper rektangelformen.(10, 20, 150, 50)
definer x- og y-koordinatene og henholdsvis bredde og høyde.La oss legge til litt farge på rektangelet.
rect1: setFillColor (51, 255, 0);
Hmmm. Hva betyr dette?
rect1
er variabelen vi erklærte tidligere.setFillColor
er metoden vi bruker til å fylle rektangelet med en farge.(51, 255, 0)
spesifiser den røde (51
), grønn (255
) og blå (0
) verdien av fargen vi bruker.La oss utvide dette eksempelet med en ramme eller et slag som vist i følgende kodestykke.
rect1.strokeWidth = 8; rect1: setStrokeColor (80, 200, 130);
rect1.strokeWidth = 8
setter strokeWidth
eiendom av rektangelet til 8
.rect1.setStrokeColor (80, 200, 130)
setter strokeColor
egenskapen til rektangelet til fargen spesifisert av verdiene 80
, 200
, og 130
som vi så tidligere.Kommentarer kan virke trivielle og utdaterte, men de er viktige og enda mer når du jobber i et lag. Kommentarer er svært nyttige for dokumentasjon av kode, og dette gjelder både for deg som dine kolleger. Det forbedrer lesbarheten av kode for andre personer i teamet ditt. I Lua er kommentarer enkle å bruke. Ta en titt på følgende eksempel.
--dette er en kommentar
Kommentarer har ingen effekt på søknaden din når det gjelder hvordan det fungerer. De er bare der for utvikleren. Følgende kodestykke vil ikke skrive ut Hei Verden! til terminalen.
--skriv ut ("Hello World!")
Du kan også skrive kommentarer som spenner over flere linjer, noe som er nyttig hvis du må forklare hvordan et spesielt komplekst stykke kode fungerer, eller hvis du vil skrive en introduksjon til et program eller prosjekt.
--[[Dette er en kommentar som spenner over flere linjer. ]]
I denne opplæringen har du lært grunnleggende om Lua og Corona SDK. Vi installerte og satte opp Corona SDK, lastet ned og brukte en tekstredigerer for redigering av Lua, skrev flere programmer og kjørte dem i Corona Simulator. Vi lærte også å bruke variabler til å lagre datamaterialer, vise bilder på skjermen, konfigurere statuslinjen og tegne figurer på skjermen. Og sist men ikke minst så vi hvordan du bruker kommentarer og hvorfor du bør bruke kommentarer i koden din. Jeg håper at denne opplæringen var nyttig for deg. Hold deg oppdatert for mer.
Hvis du vil lære mer om Corona SDK, anbefaler jeg at du besøker nettstedet Corona Labs utvikler. Den er fylt med ressurser og guider for å komme i gang. Du kan også utforske eksempelprogrammene som er inkludert i Corona SDK som du lastet ned og installert tidligere.
Lua programmeringsspråk har også sin egen nettside. Den inneholder alt du trenger å vite om språket, inkludert en startveiledning og en veldig detaljert håndbok. Sørg for å besøke Lua-nettstedet hvis du bestemmer deg for å fortsette med Corona-utviklingen.