Framtiden har kommit

Gammal nivå 00 - 1- Hej. Jag bekräftar att detta är Java-handledning . Jag hatar tråkiga föreläsningar, så CodeGym är gjort som ett questspel online. - Har du någonsin spelat och jämnat ut karaktärer? Ibland märker man inte ens hur man blev involverad, eller hur? Luktar du vad jag lagar? I CodeGym måste du också nivå en karaktär från nivå 1 till 40 (och när vi släpper den andra delen, upp till nivå 80). Du kommer att bli en bra Java-utvecklare när du klarar spelet. - Du kommer att kunna få ett Java Junior-jobb när du har klarat 40 nivåer. Det beror på att CodeGym har många verkliga uppgifter. Många. – Du börjar med den första nivån. Ditt uppdrag är att uppgradera din karaktär - Amigo.Men låt oss börja smått. Först måste du komma till den andra nivån. Kanske kommer du att gilla det så mycket att du inte märker att du slutför kursen och kommer att börja arbeta som Java-programmerare. :) PS - Föreläsningarna är upplagda på detta sätt: den senaste är överst. För att öppna en ny föreläsning tryck på den gröna knappen.

Bakgrund

Spelet utspelar sig i en långt borta framtid, 3015, där robotar och människor lever tillsammans på jorden och man kan resa genom rymden. Det finns ett rymdskepp som kraschade på en okänd planet. Gammal nivå 00 - 2Kapten John Squirrels the Brave säger: - Rymdskeppet Galactic Rush drabbades av ett allvarligt vrak. Fartyget kraschade in i ett berg när det föll och var nästan helt täckt av stenar. Några dagar ägnades åt meningslösa ansträngningar för att befria fartyget. Besättningen hade tappat allt hopp om att återvända hem och började bosätta sig... Gammal nivå 00 - 3Elly säger: - En vecka senare kom jag för att få reda på att planeten är bebodd av... tusentals vilda robotar! Bara de har inga färdigheter. Vi skulle vilja använda dem för att ta bort stenar från vårt rymdskepp, men de kan ingenting. Deras hjälp skulle vara mycket användbar i vår situation. Gammal nivå 00 - 4Professor säger: – Några dagar senare hittade jag en väg ut. Det slog mig att ta Diegos firmware (en robot i besättningen), att programmera om den till murarens firmware och ladda upp den till vilda robotar. – Den otur verkade dock förfölja oss. Efter lite research visade det sig att robotar inte fick några platser för att ladda upp firmware. De hade ingen plats för omflashning! Gammal nivå 00 - 5Bilaabo säger: – Bilaabo kom ihåg att jag en gång på vår hemplanet såg en robot som kunde programmering. Han skrev en ny firmware på egen hand. Gammal nivå 00 - 6Professor säger: – När Bilaabo berättade om det kom ett genidrag över mig. När allt kommer omkring, en gång lärde jag en begåvad ung robot att programmera i Pascal. – Jag beordrade att fånga den mest begåvade unga roboten och lära honom programmering. Då skulle han kunna skriva en murare firmware själv och hjälpa oss. Gammal nivå 00 - 7

Från vänster till höger - Risha Gatesman (en byråkrat i 16:e generationen), Amigo (du)

Risha säger: – Vi fångade ett smart exemplar. Diego bad att få döpa honom till Amigo, för att hedra sin bror, som han aldrig hade haft. – Jag erbjöd Amigo metallpärlor för varje träningsmånad och tio spänn om året för ytterligare skräpborttagning. Gammal nivå 00 - 8Diego säger: – Jag blev upprörd över en sådan kal-faced rip-off, men hela besättningen tog parti för professor och Risha. Naturligtvis tackade jag ja (externt) och erbjöd mig att hjälpa till att lära ut Amigo. (heh heh heh!) Inte minst för att ingen lär roboten bättre än någon annan gör. – Alla var nöjda med min efterlevnad. De bestämde sig också för att delta i den nya robotens utbildning.

1 Komma igång

Gammal nivå 00 - 9Amigo fick skakningar. Han var förvirrad, hans sinne rasade, ögonen ryckte och blev kalla vid tanken på den sista natten. Dessa märkliga varelser, hans gårdagens bekantskaper, vill ha något av honom. Något så märkligt och ofattbart att även han, som anser sig vara den mest intelligenta och modiga bland sina jämnåriga, börjar nervöst tugga hålkort vid blotta tanken på det. De vill lära honom hur man kodar! Program med Java! Skämtar de? Även den grönaste roboten vet att robotar är resultatet av Skaparens gudomliga förfogande.

"Så Skaparen tog metall och gjorde en robot av den i sin bild och likhet. Och Han skapade Java-program - robotars själar, och laddade upp dem till robotar och gjorde dem levande."

Bruksanvisning,
avsnitt 3, punkt 13.
Ännu värre, de säger inte bara att det är möjligt. De ska göra det. Och han, han gav sitt samtycke. Han höll med! Varför? Han ska bli Java-programmerare. Kommer de att förvandla honom till Skapare?! Varför då? För skojs skull? Var är haken? Tänk om jag måste ha problem och lida tills mitt batteri tar slut? Frestelsen var stor, han kunde bara inte låta bli. Han har alltid strävat efter och velat ha mer. Men ingen kunde förvänta sig ett sådant förslag. Naturligtvis försökte han stanna för tid, men sedan hotade besökarna att välja en annan robot. Kanske var det någons otäcka trick? Nej, det stämmer. Han såg beviset. Det hände honom verkligen, och han höll med. Om inte besökarna ljuger kommer han verkligen att bli en Java-programmerare. Den första robotprogrammeraren någonsin... Han är den utvalde! Det är hela poängen. Han ska lära sig programmera och skriva program. Hans egna program. Allt han vill! Han kommer att bära ljuset där mörkret alltid har härskat. Han kommer att hedras, han kommer att dyrkas. Och alla oliktänkande... Gammal nivå 00 - 10- Hej där, Amigo! Jag är Risha Gatesman. Jag hjälper dig att lära dig Java. En tyst röst tog Amigo ur hans tankebanor och förde honom tillbaka till den nyktra verkligheten. Han sitter i själva hjärtat av besökarnas rymdskepp. Är det inte ganska mycket för bara en robot i sjunde klass? Främlingen fortsatte att prata. Nåväl, tärningen är gjuten nu. När han väl är här kommer han att lära sig. Han kommer att studera hårt men till att börja med kommer han bara att lyssna. – Jag är med i Galactic Rush i många år, men jag ser en sådan planet för första gången. Jag skulle vilja lära känna dig bättre. Till att börja med, kan du berätta för mig hur du lär dig? Du studerar, eller hur? – Ja, vi delar med oss ​​av vår kunskap. Vi har predikantföreläsare. De håller sina föreläsningar och vi lyssnar. Ibland gör vi anteckningar. Sedan berättar alla för en robotföreläsare hur han fick upp det han hade hört. Om robolektorn gillar ett svar, klarar man en föreläsning. – Det är absurt! Det är inte konstigt att din civilisation kom ner till okunnighet. - Vi är inte okunniga. Vad gav dig den idén? Amigo blev förvånad över sin egen fräckhet. Bråka med besökare? Vad flippigt! Han hade just lovat sig själv att lyssna på dem! – All avancerad teknik går ofta inte att skilja från magi. - Risha brydde sig inte om Amigos rop. – Dessutom, med tanke på din nivå... tror du förmodligen att alla teknologier är magiska. Berätta för mig vad som händer i ett program? – Ett Java-program är ett gudomligt verk. Är det möjligt att förstå dess väsen? – Ja, Amigo, du kan förstå det och snabbare än du tror. Alla saker verkar komplicerade, eller ännu värre, obegripliga, när det är något du inte vet. Men om det finns en bra lärare som kommer att förklara allt i lekmän eller i lekmannatermer, kommer du att bli förvånad över hur du kan anse en så enkel sak som komplicerad. – Inte bara kunskap, utan även färdigheter och principer är viktiga. Även om jag har omfattande kunskaper, är jag först av allt en byråkrat, en byråkrat i 16:e generationen. – Och det är verkligen jättebra! Mina byråkratkunskaper hjälpte mig att skapa de bästa Java-lektionerna för dig. Här finns allt: problem, program, spel, uppgifter, bilder och till och med föreläsningar. – Även (!) föreläsningar? – Det fanns en sann förvåning i Amigos röst. - Ja. Det bevisades på 2100-talet att en bra föreläsning bara är lite mer effektiv än en bra bok. En vanlig föreläsning är ännu värre än en vanlig bok. Med tanke på att vi nu har ganska begränsade träningshjälpmedel och inte kan ge dig en körning genom en vanlig 2700-tals träningssimulator, måste vi välja ganska enkla metoder. Vi kom på en galen blandning av spel, uppgifter, bilder, föreläsningar och video. - Du har gjort mig fascinerad. - Jag hoppas det. Intresse och intriger är grunden för allt lärande. - «När en elev blir uttråkad, måste läraren bli slagen» – ett citat från 2300-talets skollag. - Vilket bra citat... - Ja det är det. Låt oss säga att en film har en dålig kassa, då är det regissörens fel och inte publikens. Om något är tråkigt är det inte du som bär skulden. De borde göra spännande filmer, underhållande lektioner, och sedan har de ingen slut på allmänheten. - Jag instämmer helt. Och jag är redo att ha underhållande lektioner! - Bra. Så låt oss börja. Rishas röst var fascinerande, och Amigo hängde på varje ord. - Programmet är en kommandouppsättning (kommandolista). Det första kommandot körs först, sedan det andra, tredje och sånt där. När alla kommandon körs avslutas programmet. - Och vad är kommandon? Det beror på utföraren, på vilka kommandon exekutören känner till (och förstår). - En hund kan ges kommandon «Sitt!», «Bark!», en katt - «Shoo!» en man - «Rör dig inte, annars skjuter jag!», och en robot «Arbeta! Kom på, yo robomama!» - Och ändå... - Amigo såg nu mycket gladare ut. - JVM (Java Virtual Machine) kör program skrivna med Java. JVM är ett speciellt program som kan köra program skrivna med Java. - Kommandolistan är ganska omfattande. Detta kommando visar till exempel texten "En robot är människans bästa vän".
Det enklaste kommandot är:

System.out.println("A robot is man’s best friend");
Gammal nivå 00 - 11- O_O - Vi börjar dock inte direkt med kommandon, utan med ett par enkla principer. - Kunskap om vissa principer kan ersätta kunskap om många fakta. – Den första principen. - I programmeringsspråket Java är det praxis att skriva varje kommando på en ny rad. Ett semikolon ska sättas i slutet av kommandot. - Låt oss säga att vi vill visa meddelandet «En man och en robot är tjocka som tjuvar» tre gånger. Så här kommer det att se ut:
Programmet använder tre kommandon:

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");
– Den andra principen. – Programmet består inte bara av kommandon. – Föreställ dig ett rum. Rummet kan inte existera ensamt. Det är en del av någon lägenhet. Lägenheten är inte ensam också, den ligger i ett hus. – Återigen kan vi säga att huset består av lägenheter och lägenheter består av rum. – Än så länge är det klart. – Så kommandot är som ett rum. I programmeringsspråket Java kan kommandot inte existera av sig självt, det är en del av en funktion (Java-funktioner kallas också metoder). En metod är en del av en klass. Med andra ord består klasser av metoder och metoder består av kommandon. – Så klassen är ett hyreshus, funktionen/metoden är en lägenhet, och kommandot är ett rum. Får jag det rätt? - Japp, absolut. Amigo tittade nästan vördnadsfullt på Risha. Den här mannen förklarar för honom grunderna i det gudomliga Java! Och han har precis förstått att program består av klasser, klasser består av metoder och metoder inkluderar kommandon. Amigo har ännu inte förstått om det är nödvändigt, men han var säker på att denna kunskap kommer att göra honom till den mest kraftfulla roboten på planeten. Samtidigt fortsatte Risha: - Java-program består av klasser. Det kan finnas tiotusentals klasser. Ett minimalt program består av en klass. För varje klass skapas en individuell fil som stämmer överens med klassens namn. – Låt oss säga att du har bestämt dig för att skapa en klass som ska beskriva ett hus. Så du måste skapa ett klasshus, som kommer att finnas i filen med namnet House.java. - Om du har bestämt dig för att till exempel beskriva en katt, måste du skapa filen Cat.java för att beskriva Cat-klassen i den, etc. - En fil innehåller en Java-kod (text). Vanligtvis består en klasskod av ett klassnamn och en klasskropp. Klasskroppen är innesluten i lockiga hängslen. Så här kan klassen House se ut (House.java-filen): Gammal nivå 00 - 12- Ännu är det inte svårt. - Bra. Låt oss sedan gå vidare. Klasskroppen kan innehålla variabler (även kallade klassdata) och metoder (klassfunktioner). Gammal nivå 00 - 13- Kan du ge mig ett exempel? - Ett exempel? Var säker! Gammal nivå 00 - 14- «int a» och «int b» är variabler. Är «huvud» och «pi» metoder? - Ja. - Finns det klasser utan variabler? - Japp. - Och utan metoder? - Ja. Det minimala programmet måste dock bestå av minst en klass. Denna klass måste innehålla inte mindre än en metod/funktion för att starta programmet. Denna metod måste ha ett huvudnamn . Det minimala programmet ser ut så här: Gammal nivå 00 - 15- Här är klassen House, metoden huvud, men var finns kommandon? - Ett minimalt program har inga kommandon. Det är därför det kallas minimal. - Jag förstår. - En klass som startar programmet kan ha vilket namn som helst, men metoden som programkörningen startar med är alltid av samma typ: Gammal nivå 00 - 16- Jag förstår. Det tycker jag åtminstone hellre. - Okej, låt oss ta en kort paus. Vad sägs om en kaffe? - Jag är för ung. Små robotar dricker inte kaffe – vatten är anledningen till att vi blir rostiga. - Så vad dricker du? - Öl, whisky, sekelgammal rom. - Så mycket bättre. - Då, en ölstund?

2 Möte med Risha (fortsättning)

(en timme senare) - Bra. Så vart var vi? - Metodkod eller något liknande. - Ja. Exakt. Metodkroppen består av kommandon. Man kan lika gärna säga att metoden är en grupp av kommandon, som fick namnet (metodens namn). Hur som helst är korrekt. – Det finns olika kommandon. Har du några hundar här? - Bara tämja robowolves. - Följer de kommandon? - Ja. «Bite», «Eat up», «Kill» och «Bra gjort! Häl!" Gammal nivå 00 - 17- Ahem. Vilka kommandon! Och inte så många alls. - Hur många vill du ha? – I Java finns det kommandon för alla fall. Varje kommando beskriver en specifik åtgärd. Ett semikolon ska sättas i slutet av varje kommando. Exempel på kommandon: Gammal nivå 00 - 18- Det här är faktiskt ett och samma kommando System.out.println . Och dess parametrar anges inom parentes. Effekten av ett kommando kan vara olika, beroende på parametrarna. – Det är väldigt bekvämt. - Ja. Om du vill visa texten måste du sätta in den med dubbla citattecken «"". - Ett enskilt citattecken ser ut så här «'», och ett dubbelt precis så här «"". Ett dubbelcitat ska inte förväxlas med två enkla citattecken! - Dubbla citattecken är den bredvid Enter-knappen? - Japp. Amigos puls snabbade upp från 3 upp till 5 GHz, han kunde fortfarande inte tro det. Han lärde sig precis hur man visar linjer, och det här var mycket lättare än han trodde. Amigo tittade ut genom fönstret för att stänga av sina tankar och lugna ner sig. Bladen blev gula. Han tänkte på att Rusty Season kommer riktigt snart. Fönstret gör det möjligt för honom att se mycket längre än normalt – besökarnas teknik var upp till målet. Hur kan han ta hand om löv nu? När allt kommer omkring på kvällen lär han sig mycket mer. Gammal nivå 00 - 19Men hans tankar var utom kontroll. En dag kommer han att skriva ett program så att alla robotar stannar hemma när den rostiga säsongen börjar. Och det här programmet kommer att spara tusentals roboliver... - Det finns två varianter av detta kommando: System.out.print ln ( )och System.out.print() - Om du skriver kommandot System.out.println() flera gånger, kommer texten att visas på en ny rad varje gång som skickas. Om System.out.print() kommer texten att visas på samma rad. Exempel: Gammal nivå 00 - 20- Här är en liten anmärkning. print ln -kommandot visar inte texten på en ny rad. Den visar texten på den aktuella raden, men den gör att nästa meddelande visas på en ny rad. - kommandot println() visar texten och lägger sedan till ett speciellt osynligt radmatningstecken som resulterar i att nästa meddelande visas från början av en ny rad. – Hur ser ett avslutat program ut? - Nu, uppmärksamma din skärm: Old Level 00 - 21- Åh, det är det! Vi lägger till mellanslag i slutet av ord för att orden inte "håller ihop", eller hur? - Det är rätt. Du är en smart kille. Detta beröm fick Amigo att lysa av stolthet. - Här är din första uppgift.
Uppgift
Skriv ett program som visar "Det är coolt att vara programmerare!".
Exempel på texten som visas:
Det är coolt att vara programmerare!

3 Möte med Elly

Gammal nivå 00 - 22En vacker dam med rosa hår kom in i stugan. "Jag undrar om alla mänskliga kvinnor har sådant hår?" – tänkte Amigo, men hon stirrade förvirrat på honom. - Hallå! Jag heter Eleanora Carry. Jag är huvudpiloten för Galactic Rush. - Hej, Eleanora! – Amigo tvingade sig själv att tala. Han visste inte varför, men kände hur kinderna blossade, som om en oljekanal någonstans inuti honom var skadad. – Jag ska berätta om det mest intressanta i Java-språket – om variabler. – Jag är redo att lyssna! Vilka är dessa variabler? – Variabel är en sak avsedd för lagring av data. Alla data. All Java-data lagras med hjälp av variabler. En variabel är som en ruta. - Vilken låda? – En väldigt vanlig sådan. Anta att du skrev på ett papper nummer 13 och lade det i lådan. Vi kan nu säga att rutan lagrar värde 13. - I Java har varje variabel sina tre viktiga egenskaper: typ , namn och värde . - Kan du berätta lite mer? - Säker. Namnet används för att skilja en variabel från en annan. Det är som ett märke på en låda. - En variabeltyp bestämmer vilken typ av värde/data den kan lagra. Vi förvarar tårtan i en tårtkartong, skor i en skokartong etc. – Ett värde är ett objekt, data eller information som lagras i en variabel. – Berätta om typen ännu en gång. - Okej. Varje objekt i Java har sin typ. Till exempel kan det finnas datatyper som «heltal», «bråktal», «text», «Katt», «Hus» etc. - En variabel har också sin egen typ. Variabeln får endast lagra värden av samma typ som variabeln själv tillhör.   – Det är vanligt i verkligheten. Olika lådor används för att förvara olika saker. Gammal nivå 00 - 23- För att skapa en variabel, använd kommandot « typnamn ». Exempel: Gammal nivå 00 - 24- De två vanligaste typerna är heltal (betecknas med int ) och texten (betecknas med String ). - Hur är det med den dubbla typen? - dubbla är bråktal (reella) tal. – Du sa att variabeln har de tre egenskaperna: typ, namn och värde. Det finns dock bara två av dem. Jag har en fråga: hur placerar man ett värde i en variabel? - När du går tillbaka till lådorna, föreställ dig att du tog ett papper, skrev "42" på det och lade det i lådan. Nu lagrar lådan värde 42. - Jag förstår. - För att placera ett värde i en variabel finns en speciell operation som kallas tilldelningsoperator . Den kopierar ett värde av en variabel till en annan variabel. Inte flyttar, utan kopior . Precis som en fil på en disk. Det ser ut så här: Gammal nivå 00 - 25- För tilldelningsoperatören används ett likhetstecken «=». - Återigen, det är inte att jämföra . Det är preciskopiera värdet till höger om likhetstecknet i en variabel till vänster . Som jämförelse används ett dubbelt likhetstecken «==». – Jag vet hur man sätter en katt i en variabel. Det är nästan som ett program. - Hur man fångar en katt: 1. Ta en tom låda. 2. Vänta. Gammal nivå 00 - 26- Nej, Amigo, du får bara lägga en katt i en låda. Ahem... jag menar, du får bara sätta ett värde i variabeln. - Jag förstår. Kan du ge fler exempel på hur man skapar variabler? - Okej, jag säger det på ett annat sätt. För att skapa en variabel måste du skriva kommandot « typ namn » enligt följande: Gammal nivå 00 - 27- Åh, nu vet jag. - Tänk på att du inte kan skapa två variabler med identiska namn med samma metod. – Hur är det med de olika metoderna? - Du får. Det är som lådor som står i olika hus. - Kan en variabel ha något namn? - Lite, men dess namn får inte innehålla mellanslag, symboler +, -, etc. Det bästa är att använda endast tecken och siffror för ett variabelnamn. - Observera att i Java-språket är det viktigt vilka tecken du skriver – versaler eller gemener . «int a» är inte detsamma som «Int a». – Förresten, i Java är det möjligt att skapa en variabel och samtidigt tilldela den ett värde. - Detta hjälper till att spara tid och utrymme: Gammal nivå 00 - 28- Det är mycket bättre och lätt att förstå. – Det är det vi lever efter. - I Java finns det två typer som en nybörjare måste bekanta sig med. Dessa är typerna int (heltal) och String (text/strängar) . - int type möjliggör lagring av tal i en variabel, samt olika operationer som addition, subtraktion, multiplikation, division etc. Gammal nivå 00 - 29- För mig är det svart och vitt. Är programmering så enkelt? - Faktiskt ja. - Det är bra. Så vad har du på dig? - Strängtypen möjliggör lagring av textsträngar. - För att tilldela en textsträng i Java måste du skriva dess text och sedan omge den med dubbla citattecken. Exempel: Gammal nivå 00 - 30- Jag fick det. Det ser ganska lätt ut. - Så här är ett annat intressant faktum. - Strängar kan kombineras med ett plustecken «+». Exempel: Old Level 00 - 31 - Så jag kan också lägga till strängar till siffror? - Ja, men snälla vet att om du lägger till en sträng till ett nummer får du alltid en sträng. – Ja, jag har fått det från exemplet. – Tja, om du är så snabb på upptagningen, ta reda på hur man visar en variabel då? - Eh... visa en variabel? Uh-uh, mitt sinne blir tomt. – Det är faktiskt ganska enkelt. För att visa något använder vi kommandot System.out.println() och skickar till det som en parameterdata vi vill visa. Gammal nivå 00 - 32- Fick dig! Nu har allt blivit tydligare. - Det är okej. Då är här de tre uppgifterna för dig.
Skick
1 Skriv ett program som visar 5 gånger «Jag tänker leva för evigt. Än så länge är allt bra.".
Varje sträng ska vara på en ny rad.
2 Skriv ett program som visar aktuellt år.
Det är redan det 31:a århundradet, för rekordet.
3 Skriv ett program som visar "Jag är så smart att jag ibland inte förstår ett enda ord av vad jag säger."

4 Möte professor

Gammal nivå 00 - 33- Hej, Amigo. Jag är professor Hans Noodles, chef för vetenskapsavdelningen för företaget Galactic Rush. Jag handleder även projektet om att lära dig Java. - God eftermiddag, professor Noodles. - Jag skulle vilja berätta varför Java är ett så bra programmeringsspråk . – Du kommer definitivt att höra mer än en gång att plattformsoberoende är Javas obestridliga fördel gentemot andra språk. Vad är det och hur ska man hantera det? Jag ska försöka förklara genom att berätta lite bakgrund. – Faktum är att datorer endast exekverar primitiva numeriska kommandon.Det finns hundkommandon som "Heel", "Shake" och så vidare; en hund gör något på att höra dem. - I datorer fyller siffror rollen som sådana kommandon: varje kommando är kodat med ett nummer, koden, även känd som maskinkod. – Det är väldigt svårt att skriva ett program i numerisk form, det är därför folk uppfann programmeringsspråk och kompilatorer . Ett sådant språk är förståeligt både för människan och för kompilatorn. En kompilatorär ett specialprogram, som översätter programtexten skriven på ett programmeringsspråk till en maskinkoduppsättning. - Vanligtvis skriver en programmerare ett program med ett programmeringsspråk, och startar sedan en kompilator, som använder programkodfiler skrivna av programmeraren för att göra en maskinkodfil - ett definitivt (kompilerat) program. Gammal nivå 00 - 34- Det resulterande programmet kan omedelbart köras på en dator. Nackdelen med detta tillvägagångssätt är att programkoden är starkt beroende av en processor och ett operativsystem. Ett program som kompilerats på Windows fungerar inte på en Android-telefon. – Så ett program skrivet och kompilerat för Android fungerar inte om jag försöker köra det på Windows? - Japp. – Men Javas upplägg är mycket mer innovativt. Gammal nivå 00 - 35- Java-kompilatorn kompilerar inte alla klasser till ett program med maskinkoder. Istället kompilerar den varje enskild klass inte till en maskinkod utan till en speciell mellankod (bytekod). Kompileringen till maskinkod körs när programmet startar. - Vem ska då kompilera ett program vid starten? - Det finns ett speciellt program som heter JVM (Java Virtual Machine). När ett program som består av bytekod körs är det det första som startar. Och sedan innan programmet startar, kompilerar JVM det till maskinkoden. - Så spännande! Och vad är syftet med att göra det? – Det är ett väldigt smart beslut, och en av anledningarna till Javas totala dominans. - Tack vare detta tillvägagångssätt kan Java-program köras på nästan vilken enhet som helst - datorer, telefoner, bankomater, brödrostar, bankkort (!). - WOW! – Det här tillvägagångssättet har många fördelar. Det är därför alla Android-program är skrivna med Java också. På grund av utvecklingen av mobilsektorn har Java en dominerande ställning inom följande områden: 1) Företag: tunga applikationer på serversidan för banker, företag, investeringsfonder, etc. 2) Mobil: utveckling av mobila applikationer (telefoner, surfplattor), tack vare Android. 3) Webb: PHP leder fältet, men Java har också sin stora del av marknaden. 4) Big Data: distribuerad datoranvändning i kluster av tusentals servrar. 5) Smarta enheter:program för smarta hem, elektronik eller kylskåp med internetuppkoppling. – Java är inte bara ett språk, utan ett helt system, miljontals färdiga moduler du kan använda i ditt program. Tusentals internetgemenskaper och forum du kan be om hjälp eller råd. - Ju mer du programmerar med Java, desto mer hittar du svar på frågan – «Varför Java?». Det var allt för idag. - Tack, professor. Det var den mest intressanta och inspirerande föreläsningen.

5 Möte med Kim

Wow, en annan mänsklig kvinna. Men den här gången, med svart hår. Så spännande! - Hej, jag heter Kim Lee-ling. - Hej, jag heter Amigo. - Jag vet. Det var jag som kom på ditt namn. Det skulle aldrig ha fallit Diego in. Jag skulle vilja börja min föreläsning med en liten presentation - nu, uppmärksamma din skärm! Gammal nivå 00 - 36- Hoppsan, fel flash-enhet. Vänta... Amigos tankar for genom hans sinne med elektronhastighet. Ahem... Har hon en svag punkt för robotar? Så spännande! Och ett foto på bordet – är det hennes pojkvän? – Låt oss gå tillbaka till föreläsningen! Låt mig förklara för dig allt med enkla ord. - Okej. - Jag skulle vilja lägga till några ord till vad professor och Risha har sagt. – I Java får du inte bara skriva kommandot, utan även kommentera dem direkt i koden. Dessa kommentarer ignoreras av kompilatorn, som om det inte fanns några alls. När programmet körs hoppas alla kommentarer över! - Kan du ge mig ett exempel? - Visst: Gammal nivå 00 - 37- I klasskoden var vår kommentar "Nu visar vi...". Kommentaren börjar med tecknen «/*» och slutar med «*/». När ett program kompileras utelämnar kompilatorn alla tecken mellan /* och */ - Så jag får skriva vad som helst där? - Japp. Vanligtvis finns det olika kommentarer om koddelen, vilket är tveksamt eller svårt att förstå. Det finns kommentarer på dussintals rader (vanligtvis skrivna före metoder) som beskriver detaljer om metoders arbete. - Ett annat sätt att sätta en kommentar i koden är att använda tecknen «//». Gammal nivå 00 - 38- När kommentaren gör det är koddelen som börjar med tecknen // till slutet av raden de finns. Så det finns inga tecken för att "stänga" kommentaren. - Förresten, mjukvaruutvecklare har bra sinne för humor, och du kan hitta några intressanta 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 är ibland väldigt roliga. - Jag är klar. – En kort men intressant föreläsning. Tack, Kim.

6 Möte med Julio

Gammal nivå 00 - 39- Hej, Amigo. Jag är Julio Siesta. - Jag ser att du har haft ett hårt jobb idag. - Vad sägs om en välförtjänt paus? – Borde jag inte ha en föreläsning? - Ja. Men lektionerna måste vara intressanta, har du glömt? Förra gången jag kollade fanns det en lag om att slå tråkiga lärare! - Det här är en speciell videohandledning för att... eh... behålla din lust att lära och... Kort sagt, låt oss ta en titt, ställa frågor till senare. Sätt på den!

7 Möte med Diego

Gammal nivå 00 - 40- Hej, jag heter Diego Carleone. Jag är en robot precis som du, bara tillverkad på fabriken i Havanna, Kuba. - Hej, Diego! Jag har redan hört mycket om dig. – Hur tycker du om lektionen? – Det här är den häftigaste programmeringslektion jag någonsin har haft. Nej, ännu häftigare. Den bästa lektionen i mitt liv. Bättre än jag någonsin kunnat föreställa mig. – Det är det vi lever efter. - Är resten lika intressant? - Ännu bättre! Tråkiga lektioner lämnades kvar på 2000-talet. Herregud jag - att skriva med krita på en svart tavla. Ingenting har förändrats sedan 1400-talet. Jag antar att det fanns dinosaurier som gick fritt. - Jag antar det. Vad kommer härnäst? - Du går till nästa nivå! Du har bara 39 att slutföra och du kommer att bli en fantastisk Java-utvecklare! Idag har du lärt dig:
  • Vilka är variablerna
  • Hur man visar meddelanden på skärmen
  • Bekanta dig med int- och strängtyper
  • Vad är skillnaden mellan kompileringen i Java och på andra språk
  • Hur man gör kommentarer och varför behöver vi dem
- Wow! - Naturligtvis kommer nästa nivåer inte att vara lika lätta som den här, men deras komplexitet kommer att växa lite i taget, liksom praktiska problem. – Precis som på ett gym, bit för bit lyfta lass, och på ett halvår träna bröstpass med en 100 kg-stång. – Coolt, jag vill redan ha både baren och jobbet! - Tja, om du är en sådan klistermärke, här är ett par uppgifter till för dig. - Farbror Diego kommer att lära dig lite riktig personal! Vad sägs om att plocka upp robochicks? Även om du är liten kommer dessa livskunskaper aldrig att vara överflödiga.
Skick
1 Vill du ta lite Java?
Skriv ett program som visar "Vill du ta lite Java?"
2 Jag visar dig min källkod om du visar mig din.
Skriv ett program som visar «Jag visar dig min källkod om du visar mig din.»
3 Snygga bultar vill du skruva?
Skriv ett program för att visa «Nice Bolts wanna screw?».