Opi C # -ohjelmointi Androidille

Kirjoittaja: John Stephens
Luomispäivä: 24 Tammikuu 2021
Päivityspäivä: 2 Heinäkuu 2024
Anonim
Gumball,Mario,Sausage,RedBall4,HillClimb,Subway,Oh!SUSHI,Masharun,Minion,Slither,Temple,Teeny Titans
Video: Gumball,Mario,Sausage,RedBall4,HillClimb,Subway,Oh!SUSHI,Masharun,Minion,Slither,Temple,Teeny Titans

Sisältö


Tässä viestissä opit C # -sovelluksen suunnittelusta Androidille, samoin kuin mihin se sopii Android-kehityksen grandiossa.

Jos olet kiinnostunut tulemaan Android-kehittäjäksi, saatat tuntea, että sinun on opittava toinen kahdesta kielestä: Java tai Kotlin. Nämä ovat kaksi kieltä, joita Android Studio virallisesti tukee, ja siksi nämä kaksi kieltä, joihin monet oppaat ja oppaat keskittyvät. Android-kehitys on paljon joustavampaa ja monipuolisempaa, ja siihen on paljon enemmän tapoja lähestyä sitä. Moniin näistä liittyy C #.

Lukea:Haluan kehittää Android-sovelluksia - mitä kieliä minun pitäisi oppia?

C # on ohjelmointikieli, jota käytät, jos päätät rakentaa pelin esimerkiksi Unityssa - mikä sattuu olemaan myös Play Kaupan suosituin ja eniten käytetty pelimoottori. Yleensä C # -ohjelmointi on hyödyllistä oppia, jos olet kiinnostunut pelien kehittämisestä.


Sinun tulisi myös oppia C # -ohjelmointi, jos haluat käyttää Xamarinia. Xamarin on työkalu, jonka avulla kehittäjät voivat rakentaa Visual Studio -sovelluksen avulla sovelluksia, jotka voidaan helposti siirtää sekä iOS: lle että Androidille. Täydellinen käyttöympäristönvälisissä projekteissa.

Joten, sanotun kanssa, on ehdottomasti hyvä syy oppia C # -ohjelmointi Androidille. Katsotaanpa mitä sinun tarvitsee tietää.

Pika esittely - C # vs Java

C # on oliokeskeinen ohjelmointikieli, jonka Microsoft on kehittänyt noin vuonna 2000 tavoitteena olla moderni, yksinkertainen ja joustava. Kuten Java (kehittänyt Sun Microsystem vuonna 1990), se kehittyi alun perin C ++: sta, varmistaen, että näiden kahden välillä on paljon yhtäläisyyksiä. Esimerkiksi, molemmat käyttävät samaa “syntaktista perustaa”, mikä tarkoittaa, että ne käyttävät tosiasiassa paljon samaa terminologiaa ja rakennetta. Muutamia pieniä eroja on, mutta jos tunnet yhden kielen, sinun pitäisi kyetä ymmärtämään paljon toista kieltä tarvitsematta oppia sitä nimenomaan. Aloittelijoille kuitenkin monet huomaavat, että C # -ohjelmoinnin oppiminen on hiukan helpompaa.


Kohdeorientoituneina kielinä sekä C # että Java kuvaavat objekteja luokkien kautta. Tämä on modulaarinen lähestymistapa ohjelmointiin, jonka avulla koodinpätkiä voidaan käyttää yhä uudelleen.

Missä C # eroaa Java: sta, siinä on edustajien käyttö, lähestymistapa tapahtumien kuunteluun, virtuaaliset vs lopulliset ominaisuudet, implisiittinen casting ja paljon muuta.

Hyvä uutinen: sinun ei todellakaan tarvitse tietää, mitä suurin osa tästä tarkoittaa, kun aloitat oppimisen C #. Tärkein takea on, että rakenne on vain hieman helpompi oppia C #: ssä ja vaatii yleensä vähemmän kirjoitusta. Tämä on erityisen totta ottaen huomioon, että kun opit Java for Androidia, sinun on myös perehdyttävä lukuisiin luokkiin ja sovellusliittymiin, joita tarvitaan Android-sovellusten luomiseen. Siksi saatat myös oppia C # -ohjelmoinnin askeleena Javalle.

Hei maailma! vuonna C #

Koodaamismaailmassa on perinne, että joka kerta kun opit uuden kielen, sinun on luotava yksinkertainen ohjelma näyttääksesi "Hei maailma!" Ruudulla. Tämä takaa periaatteessa sen, että pystyt saamaan tarvittavat työkalut käyttöönottoon ja koota jotain yksinkertaista. Se on kuin lukeminen “testaus, testaus, 1, 2, 3” mikrofoniin!

Tässä tapauksessa aiomme Visual Studion avulla luoda konsoli-sovelluksen. Joten kun olet mennyt eteenpäin ja ladannut Visual Studion (se on ilmainen), napsauta:

Tiedosto> Uusi> Projekti

Ja sitten:

Visual C #> Windows Classic -työpöytä> Console App (.NET Framework)

Näin rakennamme sovelluksen, joka toimii Windows-konsolissa.

Kun tämä on tehty, projektin paljaat luut -rakenne näkyy pääikkunassa. Sinulle annetaan koodi, joka näyttää tältä:

nimitila ConsoleApp3 {luokkaohjelma {staattinen void Main (merkkijonot) {}}}

Lisää nyt vain kaksi riviä, kuten niin:

nimitila ConsoleApp3 {luokkaohjelma {staattinen void Main (merkkijonot) {Console.WriteLine ("Hello World!"); Console.ReadKey (); }}}

Tämä kirjoittaa näytölle ”Hei maailma!” Ja odottaa sitten näppäimen painallusta. Kun käyttäjä koskettaa mitä tahansa näppäintä, ohjelma loppuu ja poistuu automaattisesti.

Huomaa, että molemmat nämä rivit päättyvät puolipisteellä. Tämä johtuu siitä, että minkä tahansa C #: n lauseen on päätyttävä puolipisteellä, joka ilmoittaa C #: lle, että rivi on valmis (sama on Java-kielellä). Ainoa poikkeus on, kun riviä seuraa välittömästi avoin hakasulke, jonka selitämme hetkessä.

Paina näytön yläosassa olevaa “Käynnistä” -painiketta, jonka pitäisi käynnistää sovellus, jotta näet tämän käytännössä.

Luokat ovat koodipalasia, jotka kuvaavat objekteja, jotka ovat tosiasiallisesti dataa

Joten mitä täällä oikein tapahtuu?

C #: menetelmien ja luokkien aloittaminen

C # -sovelluksen oppiminen Androidille edellyttää, että ymmärrät luokat ja menetelmät.

Luokat ovat koodipalasia, jotka kuvaavat objekteja, jotka ovat tosiasiallisesti dataa. Sinun ei tarvitse aluksi murehtia liikaa tästä: tiedä vain, että tällä hetkellä työskentelemäsi koodisivu kutsutaan luokkaksi ja että voit olla vuorovaikutuksessa projektin muiden luokkien kanssa. Projektilla voi olla vain yksi luokka, ja kaikki koodisi toimivat sieltä, tai siinä voi olla useita.

Jokaisessa luokassa on myös menetelmiä. Nämä menetelmät ovat koodinpätkiä, joihin voi viitata milloin tahansa kyseisen luokan sisällä - ja joskus myös sen ulkopuolelta.

Tässä tapauksessa luokkaa kutsutaan Ohjelmoida. Tämä määritetään oikeassa yläreunassa rivillä, joka lukee: luokkaohjelma. Ja jos avaat ”Solution Explorer” -ikkunan oikealla puolella, löydät Program.cs-tiedoston. Luokan nimi on aina sama kuin tiedostonimi.

Käytämme sitten kiharasulkua seuraavan koodin sisältämiseksi. Kiharat suluissa kertovat meille, että kaikki seuraava kuuluu yhteen. Siksi, kunnes kiinnike sulkeutuu, kaikki seuraava koodi on osa ohjelmaa.

Tätä seuraa ensimmäinen menetelmämme, joka määritetään seuraavalla rivillä:

staattinen tyhjä Main (merkkijono merkitty)

Tätä seuraa avoimemmat hakasulkeet, mikä tarkoittaa, että seuraava koodibitti on osa ”Main” -menetelmää (joka on edelleen ohjelmaluokan sisällä). Ja sinne olemme sijoittaneet "Hello World".

"Staattinen tyhjä" kertoo meille lähinnä, että tämä menetelmä tekee jotain itsenäistä (sen sijaan, että se manipuloi tietoja, joita käytetään laajemmassa ohjelmassa) ja että ulkopuolisille luokille ei voida viitata siihen. ”Merkkijonojen” jutut antavat meille mahdollisuuden siirtää tietoja menetelmään manipuloidaksesi myöhemmin. Niitä kutsutaan “parametreiksi” ja “argumenteiksi”. Jälleen kerran sinun ei tarvitse vielä huolehtia mistään tästä. Ymmärrä vain, että "staattinen tyhjä", jota seuraa sana, suluissa ja kiharassa, merkitsee uuden menetelmän alkua.

Kaksi seuraavaa riviä ovat ne, jotka lisäsimme: he saavat konsolin ja käyttävät sen komentoja kirjoittaaksesi näytölle ja odottaaksesi näppäimen painallusta.

Lopuksi suljetaan kaikki suluihimme: ensin menetelmä, sitten luokka ja sitten ”nimitila”, joka on sen projektin nimi, johon luokka kuuluu (tässä tapauksessa “ConsoleApp3” - olen tehnyt aiemmat testisovellukset tällä tavalla) .

Hämmentynyt? Älä huoli, sillä on enemmän järkeä.

Menetelmien käyttö

Joten menetelmät ovat koodipaketteja nimillä. Sen osoittamiseksi, miksi käytämme menetelmiä, voi olla hyödyllistä luoda uusi ja laittaa se toimimaan esimerkkinä.

Joten luo uusi menetelmä, joka asuu ohjelmaluokassa (joten sen on oltava noissa kiharassa, mutta “Main” kuuluvien kiharasulkujen ulkopuolella).

Soita tälle “NewMethod” ja laita sitten juuri kirjoittamasi kaksi riviä tänne. Tämän pitäisi näyttää seuraavalta:

luokkaohjelma {static void Main (merkkijonot) {} static void NewMethod () {Console.WriteLine ("Hello World!"); Console.ReadKey (); }}

Lisää nyt viittaus NewMethodiin päämenetelmässäsi, kuten näin:

staattinen void Main (merkkijono merkitsee) {ar ​​NewMethod (); }

Tämän jälkeen "soitetaan" juuri luomallesi menetelmälle, johtaen olennaisesti ohjelmaa siihen suuntaan. Paina Start ja näet, että tapahtuu sama asia kuin ennen. Lukuun ottamatta nyt, jos haluat, voit kirjoittaa ”NewMethod ();” niin monta kertaa kuin haluat ja jatkaa tekstin toistamista tarvitsematta kirjoittaa paljon koodia.

Valtavan ohjelman aikana tällaisista koodinpätkistä voi tulla uskomattoman voimakkaita. Tämä on yksi tärkeimmistä ymmärrettävistä asioista, kun yrität oppia C # -ohjelmointia Androidille.

Voimme luoda niin monta menetelmää kuin pidämme tällä tavalla ja sillä tavalla on erittäin siisti ja järjestetty koodi. Samalla voimme viitata myös menetelmiin, jotka on “sisäänrakennettu” C #: ään ja mihin tahansa kirjastoihin, joita voimme käyttää. "Main" on yksi esimerkki "sisäänrakennetusta" menetelmästä. Tämä on menetelmä, jolla kaikki ohjelmat alkavat, ja että C # ymmärtää sen pitäisi suorittaa ensin. Jos et laita mitään tänne, niin mitään ei tapahdu!

Suluissa olevat argumentit ovat siis tarpeen vain siksi, että Microsoft suunnitteli juuri näin päämenetelmän. Olimme kuitenkin hienoja jättää sulkumme tyhjiksi.

Muuttujien käyttö

Nyt on aika tehdä jotain hieman kiinnostavaa koodissamme. Tarkastellaan erityisesti sitä, kuinka käyttäisit muuttujia ohjelman dynaamisemmaksi tekemiseen. Tämä on yksi tärkeimmistä asioista, jotka on ymmärrettävä, jos haluat oppia C # -ohjelmoinnin.

Muuttuja on pohjimmiltaan säilytyspaikka dataa varten. Ota mielesi takaisin lukion matematiikkaan, ja saatat muistaa näkeväsi seuraavat asiat:

10 + x = 13
Etsi x

Tässä “x” on muuttuja, ja arvo, jota se edustaa, on tietysti “3”.

Näin muuttuja toimii myös ohjelmoinnissa. Tätä lukuun ottamatta muuttuja voi edustaa paljon erityyppisiä tietoja: mukaan lukien teksti.

Uuden muuttujan luomiseksi täytyy ensin kertoa C #: lle, minkä tyyppisiä tietoja se aiotaan käyttää.

Joten NewMethod () -menetelmässäsi ensin luodaan muuttuja, ja sitten annat sille arvon. Sitten lisäämme sen “WriteLine” -komentoon:

int numero; luku = 10; Console.WriteLine ("Hei maailma!" + Numero);

Olemme käyttäneet tyyppiä muuttujaa, jota kutsutaan kokonaislukuksi, joka voi olla mikä tahansa kokonaisluku. C #: ssä viitataan näihin käyttämällä ”int”. Voisimme kuitenkin helposti käyttää esimerkiksi ”kelluvaa”, joka on ”liukulukujen muuttuja” ja antaa meille mahdollisuuden käyttää desimaalia.

Jos suoritat tämän koodin, sen pitäisi nyt kirjoittaa ”Hei maailma! 10 ”näytölle. Ja tietysti, voimme muuttaa luvun arvoa milloin tahansa muuttaaksesi.

Koska ”numero” luodaan NewMethod () -sovelluksessa, emme pääse siihen muualla koodissamme. Mutta jos sijoitamme sen kaikkien menetelmien ulkopuolelle, niin se tulee saataville maailmanlaajuisesti. Tätä varten meidän on varmistettava, että muuttuja on myös staattinen:

luokkaohjelma {staattinen int numero = 10; staattinen void Main (merkkijonot) {NewMethod (); } staattinen void NewMethod () {Console.WriteLine ("Hei maailma!" + numero); Console.ReadKey (); }}

Lopuksi, on vielä yksi tapa, jolla voimme siirtää nämä tiedot ympäri, ja se olisi käyttää sitä argumenttina siirtämällä se siten menetelmäämme. Tämä voi näyttää siltä:

staattinen void Main (merkkijono merkitsee) {int numero = 10; Console.WriteLine ("Hei, mikä sinun nimesi on?"); NewMethod (numero); } staattinen void NewMethod (int-numero) {Console.WriteLine ("Hello World!" + numero); Console.ReadKey (); }}

Tässä määrittelemme NewMethod -menetelmämme tarpeeksi yksi argumentti, jonka pitäisi olla kokonaisluku ja jota kutsutaan menetelmässä nimellä “numero”. Teemme tämän lisäämällä yksinkertaisesti nämä tiedot kiharaan. Sitten, kun kutsumme menetelmää mistä tahansa muusta ohjelmasta, meidän on "välitettävä" tämä arvo hakasuluissa. Voit luoda menetelmiä, joissa on useita parametreja, jolloin erotat vain luetellut muuttujat pilkuilla.

On olemassa erilaisia ​​skenaarioita, joissa kaikkien näiden erilaisten strategioiden käyttäminen tietojen käyttämiseen on tarkoituksenmukaista. Hyvä ohjelmointi tarkoittaa sopivan työn löytämistä!

Argumenttien välittäminen ja merkkijonojen käyttö

Kokeile suorittaa seuraava koodi ja katso mitä tapahtuu:

luokkaohjelma {static void Main (merkkijono merkinnät) {Console.WriteLine ("Hei, mitä sinun nimesi on?"); NewMethod (Console.ReadLine ()); } staattinen void NewMethod (merkkijonon käyttäjänimi) {Console.WriteLine ("Hello" + käyttäjänimi); Console.ReadKey (); }}

Sinun pitäisi huomata, että sinua kehotetaan antamaan nimesi ja että konsoli sitten houkuttelee sinua sen mukaan. Tämä yksinkertainen koodi sisältää useita hyödyllisiä oppitunteja.

Ensinnäkin näemme esimerkin siitä, kuinka voidaan käyttää erityyppistä muuttujaa, nimeltään merkkijono. Merkkijono on merkkisarja, joka voi olla nimi tai voi olla koko tarina.

Joten, voit kirjoittaa aivan yhtä helposti UserName = “Adam”. Sen sijaan saamme merkkijonon konsolista lauseella: Console.ReadLine ().

Voisimme kirjoittaa:

Merkkijono käyttäjä; User = Console.ReadLine (); NewMethod (User);

Mutta pitääksemme koodimme mahdollisimman siistinä, olemme ohittaneet nämä vaiheet ja sijoittaneet ”ReadLine” -sovelluksen suoraan suluihin.

Tämän jälkeen välitämme tämän merkkijonon NewMethod-sovellukselle ja tervehdimme käyttäjää menetelmällä, joka olet jo tuttu.

Merkkijono on merkkisarja, joka voi olla nimi tai voi olla koko tarina.

Toivottavasti olet nyt alkanut ymmärtää, miksi C # on kirjoitettu sellaisena kuin se on ja kuinka voit käyttää muun muassa muuttujia ja menetelmiä luodaksesi joustavan ja tehokkaan ohjelmiston.

Mutta on vielä yksi tärkeä näkökohta, jonka sinun pitäisi tietää, jos haluat oppia C # -ohjelmoinnin: virtauksen hallinta.

Opi C # -virtauksen hallinta ja rakenna yksinkertaisia ​​tietokilpailuja!

Yksi syy siihen, että käyttämme muuttujia koodaamisessa, on se, että voimme muokata ohjelmiamme helposti myöhemmin. Toinen tapa on, että voit saada tietoja käyttäjältä tai luoda niitä satunnaisesti.

Mutta ehkä paras syy C # -muuttujien oppimiseen on, että ohjelmistasi voi tulla dynaamista: jotta ne voivat reagoida eri tavoin käytöstä riippuen.

Tätä varten tarvitsemme ”virtauksenhallintaa” tai ”ehdollisia lauseita”. Nämä ovat todella hienoja tapoja sanoa, että suoritamme koodia useammalla kuin yhdellä tavalla muuttujan arvosta riippuen.

Ja yksi tehokkaimmista tavoista tehdä tämä on "jos" -lausuman avulla. Tervehdimme tässä esimerkissä pääkäyttäjäämme eri tavalla kuin muut etsimällä heidän käyttäjänimeään.

staattinen void NewMethod (merkkijonon käyttäjänimi) {Console.WriteLine ("Hello" + käyttäjänimi); if (UserName.Equals ("Adam")) {Console.WriteLine ("Welcome back sir"); } Console.ReadKey (); }

"If" -lauseet toimivat testaamalla suluissa olevan lausekkeen pätevyys. Tässä tapauksessa kysymme, onko merkkijono UserName sama kuin merkkijono “Adam”. Jos suluissa oleva väite on totta - molemmat merkkijonot ovat samat -, seuraavissa kiharaissa esitettävä koodi suoritetaan. Jos ei, niin nämä rivit ohitetaan.

Samoin voimme verrata kokonaislukuja ja kelluvia, ja voimme testata, onko yksi suurempi kuin toinen, jne. Voimme jopa käyttää useita erilaisia, jos lauseet toistensa sisällä, kuten venäläiset nuket. Kutsumme näitä "sisäkkäisiksi ifs".

Seuraavalla kerralla

On paljon enemmän strategioita, joita voit käyttää virtauksen hallintaan - mukaan lukien esimerkiksi kytkinlausekkeet. Toivottavasti kuitenkin jo tiedät, kuinka voimme käyttää näitä lauseita ja tekniikoita aloittaaksemme hyödyllisten asioiden tekemisen. Voit muuttaa tämän koodin helposti tietovisaksi jo!

Lopulta C # työkaluilla, kuten Unity, antaa sinun rakentaa täysin toimivia pelejä!

Mutta voidaksemme tehdä todella vaikuttavia työkaluja ja pelejä, on vielä joitain asioita, jotka meidän on tutkittava. Joten yllätys! Tulee olemaan osa toinen!

Seuraavassa oppitunnissa löydät, kuinka luoda silmukoita, jotka toistuvat ajan myötä, sekä miten luoda uusia luokkia ja olla vuorovaikutuksessa niiden kanssa. Nähdään silloin!

Au ROG Phone 2 on uoraan uunnattu pelaajille. e tarjoaa napdragon 855 Plu -piiriarjan, jopa 12 Gt RAM-muitia, ultraääniohjaimet ja mukana toimitetun jäähdytytuulettimen oheilaittee...

Ei ollut niin kauan itten, että jo omitat kotonai Wi-Fi-reitittimen tai -laitteen tai käytit itä työäi, olit tekniikkakäyrän edellä. Nykyään Wi-Fi-rei...

Valitse Hallinto