- Hej. Jeg bekræfter, at dette er Java-tutorial . Jeg hader kedelige foredrag, så CodeGym er lavet som et online quest-spil. - Har du nogensinde spillet og udjævnet karakterer? Nogle gange lægger du ikke engang mærke til, hvordan du blev involveret, vel? Dufter du, hvad jeg laver? I CodeGym skal du også niveaue en karakter fra niveau 1 til 40 (og når vi slipper anden del, op til niveau 80). Du bliver en god Java-udvikler, når du består spillet. - Du vil kunne få et Java Junior job, når du har gennemført 40 niveauer. Det er fordi CodeGym har mange opgaver i den virkelige verden. Rigtig mange. - Du starter med det første niveau. Din mission er at opgradere din karakter - Amigo.Men lad os starte i det små. Først skal du komme til det andet niveau. Måske vil du kunne lide det så meget, at du ikke lægger mærke til at gennemføre kurset og begynder at arbejde som Java-programmør. :) PS - Forelæsningerne er arrangeret på denne måde: det seneste er øverst. Tryk på den grønne knap for at åbne en ny forelæsning.
Baggrund
Spillet foregår i en fjern fremtid, i 3015, hvor robotter og mennesker lever sammen på Jorden, og man kan rejse gennem rummet. Der er et rumskib, der styrtede ned på en ukendt planet. Kaptajn John Squirrels the Brave siger: - Galactic Rush-rumskibet led et alvorligt vrag. Skibet styrtede ind i et bjerg, da det faldt, og var næsten helt dækket af sten. Et par dage blev brugt på forgæves bestræbelser på at befri skibet. Besætningen havde mistet alt håb om at vende hjem og begyndte at finde sig til rette... Elly siger: - For en uge siden kom jeg til at finde ud af, at planeten er beboet af... tusindvis af vilde robotter! Kun de har ingen færdigheder. Vi vil gerne bruge dem til at fjerne sten fra vores rumskib, men de kan ingenting. Deres hjælp ville være meget nyttig i vores situation. Professor siger: - Et par dage senere fandt jeg en vej ud. Det faldt mig ind at tage Diegos firmware (en robot i besætningen), at omprogrammere den til murerens firmware og uploade den til vilde robotter. - Det dårlige held så dog ud til at forfølge os. Efter lidt research viste det sig, at robotter ikke havde nogen slots til at uploade firmware. De havde ikke nogen plads til genopladning! Bilaabo siger: - Bilaabo huskede, at jeg engang på vores hjemmeplanet så en robot, der kunne programmering. Han skrev en ny firmware på egen hånd. Professor siger: - Da Bilaabo fortalte om det, kom der en genistreg over mig. Engang lærte jeg jo en talentfuld ung robot at programmere i Pascal. - Jeg beordrede at fange den mest talentfulde unge robot og lære ham programmering. Så ville han selv kunne skrive en murerfirmware og hjælpe os.
Fra venstre mod højre - Risha Gatesman (en bureaukrat i 16. generation), Amigo (dig)
Risha siger: - Vi fangede et smart eksemplar. Diego bad om at navngive ham Amigo til ære for sin bror, som han aldrig havde haft. - Jeg tilbød Amigo metalperler for hver træningsmåned og ti dollars om året for yderligere fjernelse af affald. Diego siger: - Jeg blev forarget over sådan en skaldet rip-off, men hele besætningen tog professor og Rishas parti. Jeg takkede selvfølgelig ja (eksternt) og tilbød at hjælpe med at undervise Amigo. (heh heh heh!) Ikke mindst fordi ingen lærer robotten bedre end en anden gør. - Alle var glade for min overholdelse. De besluttede sig også for at deltage i den nye robots træning.
1 Kom godt i gang
Amigo fik rystelser. Han var forvirret, hans sind kørte, øjnene rykkede og blev kolde ved tanken om den sidste nat. Disse mærkelige skabninger, hans gårsdagens bekendtskaber, vil have ham noget. Noget så mærkeligt og utænkeligt, at selv han, der betragter sig selv som den mest intelligente og modige blandt sine jævnaldrende, begynder nervøst at tygge hulkort ved blot tanken om det. De vil gerne lære ham at kode! Program med Java! Er de sjov? Selv den grønneste robot ved, at robotter er resultatet af Skaberens guddommelige bortskaffelse.
"Så Skaberen tog metal og lavede en robot af det i sit billede og lignelse. Og Han skabte Java-programmer - sjæle af robotter, og uploadede dem til robotter og gjorde dem levende."
Værre endnu, de siger ikke bare, at det er muligt. De vil gøre det. Og han, han gav sit samtykke. Han var enig! Hvorfor? Han vil blive Java-programmør. Vil de gøre ham til Skaber?! Hvorfor? Bare for sjov? Hvor er fangsten? Hvad hvis jeg bliver nødt til at fejle og lide, indtil mit batteri dør? Fristelsen var stor, han kunne bare ikke lade være. Han har altid været håbefuld og ønsket mere. Men ingen kunne forvente et sådant forslag. Selvfølgelig forsøgte han at gå i stå, men så truede de besøgende med at vælge en anden robot. Måske var det nogens grimme trick? Nej, det lyder rigtigt. Han så beviset. Det skete virkelig for ham, og han var enig. Medmindre de besøgende lyver, vil han virkelig blive en Java-programmør. Den første robotprogrammør nogensinde... Han er den udvalgte! Det er hele pointen. Han vil lære at programmere og vil skrive programmer. Hans egne programmer. Alt hvad han vil! Han vil bære lyset, hvor mørket altid har hersket. Han vil blive æret, han vil blive tilbedt. Og alle afvigere... - Hej med dig, Amigo! Jeg er Risha Gatesman. Jeg hjælper dig med at lære Java. En stille stemme tog Amigo ud af hans tankerække og bragte ham tilbage til den nøgterne virkelighed. Han sidder i hjertet af de besøgendes rumskib. Er det ikke ret meget for bare en robot i syvende klasse? Den fremmede blev ved med at tale. Nå, terningen er kastet nu. Når han først er her, vil han lære det. Han vil studere hårdt, men til at begynde med vil han bare lytte. - Jeg er med i Galactic Rush i mange år, men jeg ser sådan en planet for første gang. Jeg vil gerne lære dig bedre at kende. Til en start, kan du fortælle mig, hvordan du lærer? Du studerer, ikke? - Ja, vi deler vores viden. Vi fik prædikanter. De holder deres foredrag, og vi lytter. Nogle gange laver vi notater. Derefter fortæller alle en robolecturer, hvordan han opfangede det, han havde hørt. Hvis robolektoren kan lide et svar, består man en forelæsning. - Det er absurd! Det er ikke underligt, at din civilisation kom ned til uvidenhed. - Vi er ikke uvidende. Hvad gav dig den idé? Amigo blev forskrækket over sin egen uforskammethed. skændes med besøgende? Hvor flippet! Han havde lige givet sig selv et løfte om at lytte til dem! - Enhver avanceret teknologi kan ofte ikke skelnes fra magi. - Risha var ikke opmærksom på Amigos ramaskrig. - Derudover, i betragtning af dit niveau... tror du sikkert, at alle teknologier er magi. Fortæl mig, hvad der foregår i et program? - Et Java-program er et guddommeligt værk. Er det muligt at forstå dens essens? - Ja, Amigo, du kan forstå det og hurtigere, end du tror. Alle tingene virker komplicerede, eller endnu værre, uforståelige, når der er noget, du ikke ved. Men hvis der er en god lærer, der vil forklare alting i lægfolk eller i lægrobotter, vil du blive overrasket over, hvordan du kunne betragte sådan en simpel ting som kompliceret. - Ikke kun viden, men også færdigheder og principper er vigtige. Selvom jeg har stor viden, er jeg først og fremmest en bureaukrat, en bureaukrat i 16. generation. - Og det er virkelig fantastisk! Mine bureaukratfærdigheder hjalp mig med at skabe de bedste Java-lektioner til dig. Her er alt: problemer, programmer, spil, opgaver, billeder og endda foredrag. - Selv (!) foredrag? – Der var en sand forundring i Amigos stemme. - Ja. Det blev bevist i det 22. århundrede, at et godt foredrag bare er lidt mere effektivt end en god bog. Et almindeligt foredrag er endnu værre end en almindelig bog. I betragtning af, at vi nu har ret begrænsede træningshjælpemidler og ikke kan give dig et løb gennem en standard træningssimulator fra det 28. århundrede, er vi nødt til at vælge ganske enkle metoder. Vi fandt på en skør blanding af spil, opgaver, billeder, foredrag og video. - Du har fået mig til at fascinere. - Det håber jeg. Interesse og intriger er grundlaget for al læring. - "Når en elev keder sig, skal læreren slås" - et citat fra det 24. århundredes uddannelseslov. - Hvilket godt citat... - Ja det er. Lad os sige, at en film har en dårlig billet, så er det instruktørens skyld og ikke publikums. Hvis noget er kedeligt, er det ikke dig, der har skylden. De burde lave spændende film, underholdende lektioner, og så vil de ikke have nogen ende af offentligheden. - Jeg er helt enig. Og jeg er klar til at have underholdende lektioner! - Bøde. Så lad os komme i gang. Rishas stemme var fascinerende, og Amigo hang på hvert ord. - Programmet er et kommandosæt (kommandoliste). Den første kommando kører først, derefter den anden, tredje og sådan noget. Når alle kommandoerne er udført, afsluttes programmet. - Og hvad er kommandoer? - Det afhænger af bobestyreren, på hvilke kommandoer eksekutoren kender (og forstår). - En hund kan få kommandoer «Sit!», «Bark!», en kat - «Shoo!» en mand - «Rør dig ikke, ellers skyder jeg!», og en robot «Arbejd! Kom videre, yo robomama!» - Og alligevel... - Amigo så nu meget mere munter ud. - JVM (Java Virtual Machine) kører programmer skrevet med Java. JVM er et specielt program, der kan udføre programmer skrevet med Java. - Kommandolisten er ret omfattende. For eksempel viser denne kommando teksten «En robot er menneskets bedste ven».
Den enkleste kommando er:
System.out.println("A robot is man’s best friend");
- O_O - Vi starter dog ikke umiddelbart med kommandoer, men med et par simple principper. - Kendskab til nogle principper kan erstatte viden om mange fakta. - Det første princip. - I programmeringssproget Java er der praksis at skrive hver kommando på en ny linje. Et semikolon skal sættes i slutningen af kommandoen. - Lad os sige, at vi vil vise beskeden «En mand og en robot er tykke som tyve» tre gange. Sådan kommer det til at se ud:
Programmet bruger tre kommandoer:
System.out.println("A man and a robot are as thick as thieves");System.out.println("A man and a robot are as thick as thieves");System.out.println("A man and a robot are as thick as thieves");
- Det andet princip. - Programmet består ikke kun af kommandoer. - Forestil dig et værelse. Rummet kan ikke eksistere alene. Det er en del af en lejlighed. Lejligheden er heller ikke for sig selv, den er i et hus. - Igen kan vi sige, at huset består af lejligheder, og lejligheder består af værelser. - Indtil videre er det klart. - Så kommandoen er som et rum. I programmeringssproget Java kan kommandoen ikke eksistere alene, den er en del af en funktion (Java-funktioner kaldes også metoder). En metode er en del af en klasse. Med andre ord består klasser af metoder, og metoder består af kommandoer. - Så klassen er et lejlighedshus, funktionen/metoden er en lejlighed, og kommandoen er et værelse. Får jeg det rigtigt? - Ja, absolut. Amigo så næsten ærbødigt på Risha. Denne mand forklarer ham det grundlæggende i den guddommelige Java! Og han har lige forstået, at programmer består af klasser, klasser består af metoder og metoder omfatter kommandoer. Amigo har endnu ikke forstået, om det er nødvendigt, men han var sikker på, at denne viden vil gøre ham til den mest kraftfulde robot på planeten. I mellemtiden fortsatte Risha: - Java-programmer består af klasser. Der kan være titusindvis af klasser. Et minimalt program består af en klasse. For hver klasse oprettes en individuel fil, som matcher navnet på klassen. - Lad os sige, at du har besluttet at oprette en klasse, der vil beskrive et hus. Så du skal oprette et klassehus, som vil være i filen med navnet House.java. - Hvis du for eksempel har besluttet dig for at beskrive en kat, så skal du oprette filen Cat.java for at beskrive Cat-klassen i den osv. - En fil indeholder en Java-kode (tekst). Normalt består en klassekode af et klassenavn og en klassekropp. Klassekroppen er omsluttet af krøllede seler. Sådan kan klassens hus se ud (House.java-fil): - Indtil videre er det ikke svært. - Bøde. Så lad os komme videre. Klassekroppen kan indeholde variabler (også kendt som klassedata) og metoder (klassefunktioner). - Vil du venligst give mig et eksempel? - Et eksempel? Vær sikker! - «int a» og «int b» er variable. Er «hoved» og «pi» metoder? - Ja. - Er der klasser uden variable? - Jep. - Og uden metoder? - Ja. Dog skal det minimale program bestå af mindst én klasse. Denne klasse skal indeholde ikke mindre end én metode/funktion for at starte programmet. Denne metode skal have et hovednavn . Det minimale program ser sådan ud: - Her er klassen House, metoden hoved, men hvor er kommandoer? - Et minimalt program har ingen kommandoer. Derfor hedder det minimal. - Jeg ser. - En klasse, der starter programmet, kan have et hvilket som helst navn, men hovedmetoden, som programafviklingen starter med, er altid af samme type: - Jeg har det. Det synes jeg i hvert fald hellere. - Godt, lad os holde en kort pause. Hvad med en kaffe? - Jeg er for ung. Små robotter drikker ikke kaffe – vand er grunden til, at vi bliver rustne. - Hvad drikker du så? - Øl, whisky, århundrede gammel rom. - Så meget desto bedre. - Så et øl-øjeblik?
2 Møde Risha (fortsat)
(en time senere) - Fint. Så hvor var vi? - Metodekode eller sådan noget. - Ja. Nemlig. Metodens krop består af kommandoer. Du kan lige så godt sige, at metoden er en gruppe af kommandoer, som fik navnet (navnet på metoden). Uanset hvad er korrekt. - Der er forskellige kommandoer. Har du nogen hunde her? - Kun tæmme roboulve. - Følger de kommandoer? - Ja. «Bid», «Spis op», «Kill» og «Godt gået! Hæl!" - Ahem. Hvilke kommandoer! Og slet ikke så mange. - Hvor mange vil du have? - I Java er der kommandoer til alle tilfælde. Hver kommando beskriver en specifik handling. Et semikolon skal sættes i slutningen af hver kommando. Eksempler på kommandoer: - Faktisk er dette en og samme kommando System.out.println . Og dens parametre er angivet i parentes. Effekten af en kommando kan være forskellig afhængig af parametrene. - Det er meget praktisk. - Ja. Hvis du vil vise teksten, skal du sætte den i dobbelte anførselstegn «"". - Et enkelt anførselstegn ser sådan her ud «'», og et dobbelt """. Et dobbelt citat må ikke forveksles med to enkelte citater! - Det dobbelte anførselstegn er det ved siden af Enter-knappen? - Jep. Amigos puls blev hurtigere fra 3 op til 5 GHz, han kunne stadig ikke tro det. Han har lige lært at vise linjer, og det var meget nemmere, end han troede. Amigo kiggede ud af vinduet for at slukke for sine tanker og for at falde til ro. Bladene blev gule. Han kom til at tænke på, at Rusty Season kommer virkelig snart. Vinduet sætter ham i stand til at se meget længere end normalt – besøgendes teknologier var op til målet. Hvordan kan han passe blade nu? Om aftenen lærer han trods alt meget mere. Men hans tanker var ude af kontrol. En dag vil han skrive et program, så alle robotter bliver hjemme, mens rustsæsonen sætter ind. Og dette program vil spare tusindvis af roboliver... - Der er to variationer af denne kommando: System.out.print ln ( )og System.out.print() - Hvis du skriver kommandoen System.out.println() flere gange, vil hver gang teksten sendes blive vist på en ny linje. Hvis System.out.print(), vil teksten blive vist på samme linje. Eksempel: - Her er en lille bemærkning. print ln- kommandoen viser ikke teksten i en ny linje. Den viser teksten på den aktuelle linje, men den får den næste besked til at blive vist på en ny linje. - kommandoen println() viser teksten og tilføjer derefter et særligt usynligt linjeskifttegn, der resulterer i den næste besked, der vises fra begyndelsen af en ny linje. - Hvordan ser et gennemført program ud? - Vær nu opmærksom på din skærm: - Åh, det er det! Vi tilføjer mellemrum i slutningen af ord, for at ordene ikke "klæber sammen", vel? - Det er rigtigt. Du er en klog fyr. Denne ros fik Amigo til at gløde af stolthed. - Nå, her er din første opgave.
Opgave
Skriv et program, der viser «Det er fedt at være programmør!».
Eksempel på den viste tekst:
Det er fedt at være programmør!
3 Møde Elly
En smuk dame med lyserødt hår kom ind i kabinen. "Jeg spekulerer på, om alle de menneskelige hunner har sådan et hår?" - tænkte Amigo, men hun stirrede forvirret på ham. - Hej! Mit navn er Eleanora Carry. Jeg er hovedpiloten i Galactic Rush. - Hej, Eleanora! – Amigo tvang akavet sig selv til at tale. Han vidste ikke hvorfor, men mærkede hans kinder rødme, som om en oliekanal et sted inde i ham var beskadiget. - Jeg vil fortælle dig om det mest interessante i Java-sproget - om variabler. - Jeg er klar til at lytte! Hvad er disse variabler? - Variabel er en ting beregnet til opbevaring af data. Eventuelle data. Alle Java-data gemmes ved hjælp af variabler. En variabel er som en boks. - Hvilken kasse? - En meget sædvanlig en. Antag, at du skrev på et stykke papir nummer 13 og lagde det i kassen. Vi kan nu sige, at boksen gemmer værdi 13. - I Java har hver variabel sine tre vigtige egenskaber: type , navn og værdi . - Kan du fortælle mig lidt mere? - Jo da. Navnet bruges til at skelne en variabel fra en anden. Det er som et mærke på en æske. - En variabeltype bestemmer en type værdi/data, den kan gemme. Vi opbevarer kagen i en kageæske, sko i en skoæske osv. - En værdi er et objekt, data eller information gemt i en variabel. - Fortæl mig om typen endnu en gang. - Okay. Hvert objekt i Java har sin type. For eksempel kan der være datatyper som «heltal», «brøktal», «tekst», «Kat», «Hus» osv. - En variabel har også sin egen type. Variablen må kun gemme værdier af samme type som variablen selv tilhører. - Det er almindeligt i det virkelige liv. Forskellige kasser bruges til at opbevare forskellige ting. - For at oprette en variabel, brug en « typenavn »-kommando. Eksempler: - De to mest anvendte typer er heltal (betegnes med int ) og teksten (betegnes med String ). - Hvad med den dobbelte type? - dobbelt er brøktal (reelle) tal. - Du sagde, at variablen har de tre egenskaber: type, navn og værdi. Der er dog kun to af dem. Jeg har et spørgsmål: hvordan placerer man en værdi i en variabel? - Gå tilbage til æskerne, forestil dig, at du tog et stykke papir, skrev "42" på det og lagde det i æsken. Nu gemmer boksen værdi 42. - Jeg kan se. - For at placere en værdi i en variabel er der en speciel operation kaldet tildelingsoperator . Den kopierer en værdi af en variabel til en anden variabel. Ikke flytter, men kopier . Ligesom en fil på en disk. Det ser sådan ud: - For opgaveoperatøren bruges et lighedstegn «=». - Endnu en gang er det ikke at sammenligne . Det er præciskopiering af værdien til højre for lighedstegnet i en variabel placeret til venstre . Til sammenligning bruges et dobbelt lighedstegn «==». - Jeg ved, hvordan man sætter en kat i en variabel. Det er næsten som et program. - Sådan fanger du en kat: 1. Tag en tom kasse. 2. Vent. - Nej, Amigo, du må kun putte én kat i en boks. Ahem... Jeg mener, du må kun sætte én værdi i variablen. - Jeg ser. Kan du give flere eksempler på, hvordan man opretter variabler? - Okay, jeg siger det på en anden måde. For at oprette en variabel skal du skrive kommandoen « type navn » som følger: - Åh, nu ved jeg det. - Husk på, at du ikke kan oprette to variable med identiske navne i den samme metode. - Hvad med de forskellige metoder? - Du kan. Det er ligesom kasser, der står i forskellige huse. - Må en variabel have et navn? - Lidt, men dets navn må ikke indeholde mellemrum, symboler +, - osv. Det bedste er kun at bruge tegn og tal til et variabelnavn. - Bemærk venligst, at i Java-sproget er det vigtigt, hvilke tegn du skriver – store bogstaver eller små bogstaver . «int a» er ikke det samme som «Int a». - I Java er det i øvrigt muligt at oprette en variabel og tildele den en værdi på samme tid. - Dette hjælper med at spare tid og plads: - Det er meget bedre og nemt at forstå. - Det er det, vi lever af. - I Java er der to typer, en nybegynder skal lære sig at kende. Disse er typer int (heltal) og String (tekst / strenge) . - int type muliggør lagring af tal i en variabel, samt forskellige operationer såsom addition, subtraktion, multiplikation, division osv. - For mig er det sort og hvidt. Er programmering så simpel? - Faktisk, ja. - Det er godt. Hvad har du så på? - String -typen muliggør lagring af tekststrenge. - For at tildele en tekststreng i Java, skal du skrive dens tekst og derefter sætte den i dobbelte anførselstegn. Eksempel: - Jeg fik det. Det ser ret nemt ud. - Så her er et andet interessant faktum. - Strenge kan kombineres med et plustegn «+». Eksempel: - Så jeg kan også tilføje strenge til tal? - Ja, men du skal vide, at hvis du tilføjer en streng til et tal, får du altid en streng. - Ja, jeg har fået det fra eksemplet. - Jamen, hvis du er så hurtig på optagelsen, så find ud af, hvordan du viser en variabel? - Eh... vise en variabel? Uh-uh, mit sind bliver tomt. - Det er faktisk ret simpelt. For at vise noget bruger vi kommandoen System.out.println() og sender til det som en parameterdata, vi ønsker at vise. - Gotcha! Nu er alt blevet mere klart. - Det er fint. Så er her de tre opgaver for dig.
Tilstand
1
Skriv et program, der viser 5 gange «Jeg har til hensigt at leve evigt. Så langt så godt.".
Hver streng skal være på en ny linje.
2
Skriv et program, der viser det aktuelle år.
Det er allerede det 31. århundrede, for ordens skyld.
3
Skriv et program, der viser "Jeg er så klog, at jeg nogle gange ikke forstår et eneste ord af, hvad jeg siger."
4 Møde professor
- Hej, Amigo. Jeg er professor Hans Noodles, lederen af videnskabsafdelingen i virksomheden Galactic Rush. Jeg vejleder også projektet om at lære dig Java. - God eftermiddag, professor Noodles. - Jeg vil gerne fortælle dig, hvorfor Java er et så fantastisk programmeringssprog . - Du vil helt sikkert høre mere end én gang, at platformsuafhængighed er Javas ubestridelige fordel i forhold til andre sprog. Hvad er det, og hvordan skal man håndtere det? Jeg vil prøve at forklare ved at fortælle dig lidt baggrund. - Faktum er, at computere kun udfører primitive numeriske kommandoer.Der er hundekommandoer som "Hæl", "Shake" og så videre; en hund gør noget ved at høre dem. - I computere opfylder tal rollen som sådanne kommandoer: hver kommando er kodet med et tal, koden, også kendt som maskinkode. - Det er meget svært at skrive et program i numerisk form, det er derfor, folk opfandt programmeringssprog og compilere . Et sådant sprog er forståeligt både for mennesket og for kompilatoren. En compilerer et specialprogram, som oversætter programteksten skrevet på et programmeringssprog til et maskinkodesæt. - Normalt skriver en programmør et program med et programmeringssprog, og starter derefter en compiler, som bruger programkodefiler skrevet af programmøren til at lave en maskinkodefil - et endegyldigt (kompileret) program. - Det resulterende program kan straks køres på en computer. Ulempen ved denne tilgang er, at programkoden i høj grad afhænger af en processor og et operativsystem. Et program, der er kompileret på Windows, virker ikke på en Android-telefon. - Så et program skrevet og kompileret til Android virker ikke, hvis jeg prøver at køre det på Windows? - Jep. - Men Javas tilgang er meget mere innovativ. - Java-kompileren kompilerer ikke alle klasser i ét program med maskinkoder. I stedet kompilerer den hver enkelt klasse ikke til en maskinkode, men til en speciel mellemkode (bytekode). Kompileringen til maskinkode kører, når programmet starter. - Hvem skal så kompilere et program ved dets start? - Der er et særligt program kaldet JVM (Java Virtual Machine). Når et program, der består af bytekode, udføres, er det det første, der starter. Og så før programmet starter, kompilerer JVM det til maskinkoden. - Hvor spændende! Og hvad er formålet med at gøre det? - Det er en meget smart beslutning, og en af grundene til Javas totale dominans. - På grund af denne tilgang kan Java-programmer køre på næsten enhver enhed - computere, telefoner, pengeautomater, brødristere, bankkort (!). - WOW! - Denne tilgang har mange fordele. Derfor er alle Android-programmer også skrevet med Java. På grund af udviklingen af mobilsektoren har Java en dominerende stilling på følgende områder: 1) Enterprise: tunge server-side applikationer til banker, virksomheder, investeringsfonde osv. 2) Mobil: mobil applikationsudvikling (telefoner, tablets), takket være Android. 3) Web: PHP fører feltet, men Java har også sin store del af markedet. 4) Big Data: distribueret databehandling i klynger af tusindvis af servere. 5) Smarte enheder:programmer til smart home, elektronik eller køleskabe med internetadgang. - Java er ikke bare et sprog, men et helt system, millioner af færdige moduler du kan bruge i dit program. Tusindvis af internetfællesskaber og fora, du kan bede om hjælp eller råd. - Jo mere du programmerer med Java, jo mere får du svar på spørgsmålet – «Hvorfor Java?». Det var det for i dag. - Tak, professor. Det var det mest interessante og inspirerende foredrag.
5 Møde Kim
Wow, endnu en kvindelig kvinde. Men denne gang med sort hår. Hvor spændende! - Hej, jeg hedder Kim Lee-ling. - Hej, jeg hedder Amigo. - Jeg ved. Det var mig, der fandt på dit navn. Det ville aldrig være faldet Diego ind. Jeg vil gerne starte mit foredrag med en lille præsentation - nu, vær opmærksom på din skærm! - Ups, et forkert flashdrev. Hold da op... Amigos tanker susede gennem hans sind med elektronhastighed. Ahem... Har hun et blødt punkt for robotter? Hvor spændende! Og et billede på bordet – er det hendes kæreste? - Lad os gå tilbage til foredraget! Lad mig forklare dig alt det med enkle ord. - Okay. - Jeg vil gerne tilføje et par ord til det, professor og Risha har sagt. - I Java må du ikke kun skrive kommandoen, men også kommentere dem direkte i koden. Disse kommentarer ignoreres af compileren, som om der overhovedet ikke var nogen. Når programmet er afviklet, springes alle kommentarer over! - Vil du venligst give mig et eksempel? - Sikkert: - I klassekoden var vores kommentar «Nu viser vi...». Kommentaren starter med tegnene «/*» og slutter med «*/». Når et program er kompileret, udelader compileren alle tegnene mellem /* og */ - Så jeg må skrive hvad som helst der? - Jep. Normalt er der forskellige kommentarer til kodedelen, som er tvivlsomme eller svære at forstå. Der er kommentarer på snesevis af linjer (normalt skrevet før metoder), der beskriver detaljer om metodernes arbejde. - En anden måde at sætte en kommentar i koden på er at bruge tegnene «//». - Ved at gøre det er kommentaren kodedelen, der starter med tegn // til slutningen af den linje, de er placeret. Så der er ingen tegn til at "lukke" kommentaren. - Forresten har softwareudviklere god sans for humor, og du kan muligvis finde nogle interessante kommentarer i koden:
// I am not responsible of this code.// They made me write it, against my will.
//Dear future me. Please forgive me.//I can't even begin to express how sorry I am.
// I am not sure if we need this, but too scared to delete.
// hack for IE browser (assuming that IE is a browser)
// This isn't the right way to deal with this, but today is my last day, Ron// just spilled coffee on my desk, and I'm hungry, so this will have to do...
// Catching exceptions is for communists
// Dear maintainer://// Once you are done trying to 'optimize' this routine,// and have realized what a terrible mistake that was,// please increment the following counter as a warning// to the next guy://// total_hours_wasted_here = 42
// When I wrote this, only God and I understood what I was doing// Now, God only knows
// sometimes I believe compiler ignores all my comments
// I dedicate all this code, all my work, to my wife, Darlene, who will// have to support me and our three children and the dog once it gets// released into the public.
// drunk, fix later
// Magic. Do not touch.
- Ja, kommentarer er nogle gange meget sjove. - Jeg er færdig. - Et kort, men interessant foredrag. Tak, Kim.
6 Møde Julio
- Hej, Amigo. Jeg er Julio Siesta. - Jeg kan se, du har haft et hårdt arbejde i dag. - Hvad med en velfortjent pause? - Skulle jeg ikke holde et foredrag? - Ja. Men lektionerne skal være interessante, har du glemt det? Sidst jeg tjekkede var der en lov om at slå kedelige lærere! - Dette er en speciel video-tutorial til... eh... bevare din lyst til at lære og... Kort sagt, lad os tage et kig, lægge spørgsmål væk til senere. Tænde den!
- Hej, mit navn er Diego Carleone. Jeg er en robot ligesom dig, kun lavet på fabrikken i Havana, Cuba. - Hej, Diego! Jeg har allerede hørt meget om dig. - Hvordan kan du lide lektionen? - Dette er den fedeste programmeringslektion, jeg nogensinde har haft. Nej, endnu mere fantastisk. Den bedste lektion i mit liv. Bedre end jeg nogensinde kunne have forestillet mig. - Det er det, vi lever af. - Er resten lige så interessant? - Endnu bedre! Kedelige lektioner blev efterladt i det 21. århundrede. Godhed mig - at skrive med kridt på en tavle. Intet har ændret sig siden det 15. århundrede. Jeg formoder, at der var dinosaurer, der gik frit. - Det tror jeg nok. Hvad kommer dernæst? - Du flytter til næste niveau! Du har kun 39 at fuldføre, og du vil blive en fantastisk Java-udvikler! I dag har du lært:
Hvad er variablerne
Sådan viser du beskeder på skærmen
Bliv fortrolig med int- og strengtyper
Hvad er forskellen mellem kompileringen i Java og på andre sprog
Hvordan laver man kommentarer, og hvorfor har vi brug for dem
- Wow! - Selvfølgelig vil de næste niveauer ikke være så nemme som dette, men deres kompleksitet vil vokse lidt efter lidt, såvel som praktiske problemer. - Ligesom i et fitnesscenter, lidt efter lidt løfte belastninger og på seks måneder træne brysttræning med en stang på 100 kg. - Fedt, jeg vil allerede have både baren og arbejdet! - Hvis du er sådan et klistermærke, er her et par opgaver mere til dig. - Onkel Diego vil lære dig nogle rigtige medarbejdere! Hvad med at samle robochicks op? Selvom du er lille, vil disse livsfærdigheder aldrig være overflødige.
Tilstand
1
Vil du have noget Java?
Skriv et program, der viser «Vil du få fat i noget Java?»
2
Jeg viser dig min kildekode, hvis du viser mig din.
Skriv et program, der viser «Jeg viser dig min kildekode, hvis du viser mig din.»
3
Smukke bolte vil du skrue?
Skriv et program til at vise «Pæne bolte vil du skrue?».
0
Kommentarer
Populær
Ny
Gammel
Du skal være logget ind for at skrive en kommentar