Viitorul a venit
Atributele secolului al XX-lea au fost un hoover, o mașină de spălat, un televizor și o mașină. Dacă continuați să spălați rufele manual, să călăriți pe cal, să folosiți lumânări pentru iluminare, atunci, conform standardelor secolului al XX-lea, trăiți în al XIX-lea. Internetul, telefonul mobil, Skype, rețelele sociale, au devenit atributele secolului al XXI-lea. Prin intermediul internetului este posibil să obțineți acces la orice informație binecunoscută umanității.Este posibil să lucrezi și să faci afaceri, să obții educație și să predai pe web. Prin intermediul rețelelor sociale este posibil să găsești un prieten, un loc de muncă, o iubită, un grup după interese. Puteți face cunoștință practic cu orice persoană din lume, pentru a cere sfaturi sau ajutor de la persoana respectivă. Poți să te împrietenești cu oameni din întreaga lume și apoi să vii să-i vizitezi sau să-i inviti în locul tău sau să mergi undeva împreună. Prin intermediul Skype puteți comunica cu prietenii, frații, surorile, părinții, rudele și orice alte persoane din întreaga lume. Comunicare vizuală gratuită în orice loc al lumii. Oamenii nici nu îndrăzneau să viseze la asta acum 20 de ani.Acum este un fapt obișnuit. GoogleStreetView vă permite să „plimbați” pe străzile oricărui oraș din orice țară de pe pământ. Puteți alege un loc, unde ați dori să locuiți și să vă mutați acolo. Posesorul unui „telefon modern” poate: să vorbească, să scrie mesaje, să trimită poze, să navigheze pentru informații pe web, să instaleze sute de milioane de aplicații gratuite. Ce altceva? Faceți apeluri video, ascultați niște muzică, vizionați videoclipuri, faceți videoclipuri, faceți fotografii, vedeți locația pe o hartă, puneți semne de locație pe ea, utilizați organizatorul, comunicați în rețelele sociale și „apreciați” pisoi. Puteți învăța engleza într-un an (sau orice altă limbă), ascultând cursuri audio, când mergeți la serviciu și de la serviciu. Orice informație este accesibilă pe web, orice manuale.Vrei video-lectura a celor mai bune universități mondiale cu subtitrări? Acolo sunt și ei. Dacă vorbești engleză, poți scrie o carte, o publica pe Amazon și poți câștiga o avere. Puteți comanda un site web pentru câteva sute de dolari și puteți face afaceri pe internet în toată lumea. Nu mai trăiți în secolul 20 așteptând să vi se spună ce să învățați, cum să învățați, ce să faceți și unde să trăiți. Decideți singur. Oportunitățile de a-ți schimba viața te înconjoară la fiecare pas. Și ultimul lucru, este această glumă: S-a produs o inundație. Toți aleargă pentru viața lor, cu excepția unui evreu bătrân și foarte devotat, care stă și se roagă. Trece un camion, iar oamenii din el îi strigă evreului: - Haim, intră, salvează-te! - M-am rugat toată viața și am respectat toate tradițiile, Dumnezeu mă va mântui, - răspunde Haim. Apa este din ce în ce mai sus, până la ferestre. O barcă plutește. Aceeași întrebare, același răspuns. Apa continuă să devină mai sus, până la acoperiș. Haim stă și se roagă. Un elicopter zboară. Aceeași întrebare, același răspuns. Și Haim s-a înecat. Și în Lumea Cealaltă a început să-l mustre pe Dumnezeu: - M-am rugat toată viața și am respectat toate tradițiile, de ce nu m-ai salvat? - Ți-am trimis o mașină, o barcă și un elicopter, așa că de ce te plângi?Ai atins un nou nivel
Nivelul 1
- Felicitări pentru primul nivel! - Mulțumiri! A fost mai ușor decât credeam! - Și m-am distrat copios! - O să găsești și mai interesant. Acum, voi dovedi. Sunteţi gata? - Sa mergem!1 Risha, cunoștință cu programul.
1 Risha
- Bună, tânărul meu prieten. Sper că nu ați uitat că sunt birocrat în a 16-a generație. Nu aș avea niciodată atât de succes dacă nu mi-aș sistematiza toate cunoștințele. Am o mulțime de sfaturi utile care vă vor ajuta cu unele sarcini. Mai întâi, permiteți-mi să vă spun ce este un program Java obișnuit. - OK merge mai departe. - Faptul unu. Un program Java este format din clase. Fiecare clasă este stocată într-un fișier separat. Un nume de fișier se potrivește cu un nume de clasă; extensia de fișier este .java. - Programul constă dintr-un set de fișiere .java, în fiecare fișier există un cod dintr-o clasă, nu? - Absolut dreptate, Amigo! Dacă numele fișierului este MyCat.java, acesta conține clasa MyCat. - Faptul doi. Dacă avem o mulțime de fișiere cu clase, le grupăm în foldere și subdosare.Rețineți că clasele sunt grupate în pachete și subpachete. Numele pachetelor și subpachetelor trebuie specificate într-un cod de clasă. Acestea trebuie să se potrivească cu numele folderelor și subdosarelor de pe disc. - Deci avem fișiere aranjate în foldere pe de o parte și clase aranjate în pachete pe de altă parte. Numele clasei trebuie să se potrivească cu numele fișierului în care este descrisă clasa. Un nume de pachet se potrivește cu numele folderului pentru a stoca clasa. - Spune-mi mai multe despre asta. - Numele subpachetelor sunt descrise separate printr-un punct, aproape ca linkurile de pe Web. - Deci, dacă aveți o clasă Cat situată în pachetul „ animal.pets ”, înseamnă că A) Există folderul src pe disc. Toate fișierele de proiect sunt stocate în acest folder; B) Înăuntrul ei se află un folderanimale care cuprinde un folder numit pets , C) În folderul pets există un fișier Cat .java, care conține un cod de clasă Cat . - Cam înțeleg, dar nu sunt sigur. - Ei bine, atunci structura claselor și pachetelor este aceeași cu structura folderelor și fișierelor de pe disc. Dacă există un fișier House .java situat în folderul src/com/houses/ atunci înseamnă că există o clasă House , care se află în pachetul com.houses . - În acest context, numele complet al fișierului este «com/houses/ House .java», iar numele complet al clasei com.houses.House . - Am înţeles. - Bine, ești atât de inteligent. Acum urmăriți ecranul - iată un mic cod de clasă. Am marcat toate punctele cheie: - Totul este clar cât de mult poate fi din prima încercare. Heh, heh. - Bătăuș pentru tine! Nu trebuie să înțelegi mare lucru. Trucul este să prinzi ceva acum, vei înțelege totul mai târziu. Ei bine, atunci, am terminat pentru azi, lasă altcineva să aibă grijă de tine.2 John Squirrels, Cum se utilizează acest curs online
- O zi bună, Amigo. Sunt John Squirrels, căpitanul navei spațiale Galactic Rush. - Bună ziua, căpitane. - Astăzi am să vă explic cum este aranjat procesul nostru de învățare.Ghid CodeGym
Întotdeauna le-am spus studenților mei că programarea computerelor este ușoară și interesantă. Acum poți să te asiguri singur. Scopul cursului este să vă bucurați de studiu, să vă distrați și să obțineți abilități reale de programare în Java, care vă vor ajuta să obțineți un loc de muncă ca dezvoltator de software. De aceea există multe sarcini practice în curs. Complexitatea sarcinilor crește treptat de la cele simple la cele mai complexe.Cum este organizat cursul
Cursul este format din 40 de niveluri. Fiecare nivel conține 10-12 prelegeri și 20-30 de sarcini practice. Fiecare nivel corespunde unui sistem solar separat de pe harta stelară de mai jos, iar prelegerile de la nivel sunt planete ale sistemului solar. Fiecare prelegere deschisă este un zbor către o altă planetă. Când toate prelegerile sunt deschise, nava spațială zboară către următorul sistem stelar. Pentru rezolvarea sarcinilor practice, vizionarea videoclipurilor și multe alte lucruri primești o recompensă – câteva unități de „materie întunecată”. Pentru a trece la următorul curs sau nivel, trebuie să faceți „un zbor pe nava spațială”, care necesită „o navă de realimentare”: sunt necesare 5 unități de materie întunecată pentru a alimenta nava spațială.Trecerea la nivelul următor
Pentru a trece la nivelul următor, trebuie să parcurgeți toate prelegerile din nivelul actual. Pentru a trece la următoarea prelegere, trebuie să apăsați pe butonul verde mare: când treceți la următoarea lecție, nava voastră zboară pe o altă planetă. Dacă rămâneți fără combustibil sau nava nu este plină, butonul nu va putea apăsa și va arăta astfel: Puteți umple nava în secțiunea „Pagina mea”. Dacă nu puteți alimenta nava pentru că nu există materie întunecată, trebuie să rezolvați mai multe sarcini și să o câștigați. Pentru a rezolva o sarcină utilizați butonul galben, adică în stânga cursurilor, lângă sarcinile practice:Sarcini practice
Introducerea codului ca într-un eșantion - aceasta este cea mai simplă sarcină practică. Pentru a rezolva această sarcină, trebuie să introduceți codul Java în partea de jos a ferestrei. Codul trebuie să fie identic cu eșantionul (este în partea de sus a ferestrei). Scrieți un program - o sarcină practică de complexitate medie. Pentru a o rezolva, ar trebui să scrieți programul în Java. Trebuie să aflați cum să rezolvați sarcina și să introduceți soluția de cod în fereastra principală. Apoi apăsați butonul: Pentru a vă ușura studiul, precum și pentru a simplifica procesul de verificare a programului, codul trebuie scris doar în locul marcat de comentariul „Adăugați codul aici”. În cazul unei compilări reușite, programul va fi verificat automat- dacă sarcina curentă este rezolvată corect. Dacă programul afișează ceva pe ecran, există o fereastră specială dedesubt - fereastra de ieșire . Afișează tot ceea ce programul a afișat pe ecran la ultima rulare. Puteți oricând ascunde fereastra cu codul pentru a vedea ceva în prelegeri sau pentru a amâna rezolvarea sarcinii. Pur și simplu apăsați butonul din colțul din dreapta sus. Când reveniți la această sarcină din nou, codul dvs. anterior rămâne acolo. Butonul arată astfel: Dacă dimensiunea ferestrei cu cod este prea mică, o puteți maximiza făcând clic pe butonul de maximizare (disponibil de la nivelul 4): Sarcini de acasătrebuie rezolvat în Intellij IDEA (disponibil de la nivelul 3). Acesta este un program special pentru dezvoltatori (IDE) pentru a facilita codificarea. Am scris un plugin pentru IDEA, care vă va oferi posibilitatea de a verifica dacă programul dvs. este corect în mai puțin de o secundă. Pluginul este format din doar două butoane: Butonul din stânga arată lista sarcinilor disponibile pentru dvs.: Butonul din dreapta trimite sarcina către server pentru verificare: Puteți câștiga și „materie întunecată” vizionarea videoclipurilor:3 Risha, Bazele muncii de memorie
- Sunt din nou eu: am uitat să-ți explic ceva. Vreau să vă spun despre variabile și adresarea memoriei . Nu te gândi prea mult la asta, dar dacă îți amintești ceva - asta e o milă! - Îmi place abordarea ta. Bine, dacă este luat în considerare, dacă nu - bine, bine. - Dacă merge, merge, nu-l forța. Este evident. De ce, este diferit la tine? - Este. Avem o altă abordare a studiului: dacă nu vrei, trebuie. - Hmm, ce abordare învechită. Doar fantezie, pierzi mult timp și efort și aproape că nu există niciun rezultat. - Corect! Dar lasă asta să treacă. - În regulă. Imaginează-ți Excel. Toată lumea știe Excel. O foaie Excel este formată din celule, fiecare celulă are numărul său unic (A1, A2,...B1, B2).Puteți pune o valoare într-o celulă sau puteți obține o valoare stocată, atunci când știți numărul celulei. Memoria unui computer este aranjată aproape în același mod. - Până acum, e clar. - În timpul rulării programul și datele sale sunt stocate în memorie. Întreaga memorie a computerului este reprezentată de celule mici - octeți. Fiecare celulă are numărul său unic - 0,1,2,3, ... (începând cu zero). Dacă știți numărul celulei, putem salva acolo câteva date sau putem prelua datele din celulă . Unele celule stochează codul programului, un set de comenzi al procesorului, cealaltă stochează datele programului. Numărul fiecărei celule se mai numește și adresa sa. - Procesor, comenzi... - Profesorul mi-a spus ceva despre asta, dar doar puțin. - Procesorul este un lucru care poate rula comenzi dintr-un program adus în memorie. Aproape fiecare comandă a procesorului arată așa: „luați date din unele celule, faceți ceva cu ele și apoi puneți rezultatul în alte celule”. Combinând sute dintre ele, obținem astfel comenzi complexe și utile. - De ce naiba am nevoie de toate astea? - Când o variabilă este declarată într-un cod, i se dă o bucată de memorie neutilizată , de obicei câțiva octeți. Când declarați o variabilă, trebuie să specificați și tipul de informații pe care programul le va stoca într-o variabilă: numere, text sau alte date. Pentru comoditate, fiecărei variabile i se dă un nume unic . - Deci, o variabilă este un nume și un tip, sau o bucată de memorie și o valoare? - Toate combinate. Să aruncăm o privire la câteva exemple.4 Elly, Cunoștință cu tipurile de int și String
- Hei, Amigo. - Bună, Eleanora Carry. - Spune-mi doar Elly, așa că nu va suna chiar așa oficial. - Bine, Elly. - Cred că cu ajutorul meu vei deveni rapid unul dintre cei mai buni programatori. Am o mare experiență în predarea începătorilor. Urmează-mă și va merge ca un ceas. Să începem. - În Java există două tipuri de bază: String și int . În String stocăm șiruri de caractere/text și în numere int (întregi). Pentru a declara o variabilă nouă, trebuie să scrieți tipul și numele acesteia. Numele nu trebuie să se potrivească cu niciun alt nume de variabilă și/sau funcție. - Când declarați variabile, puteți introduce imediat valori pentru acestea. - Pentru a introduce o nouă valoare pentru o variabilă, trebuie să utilizați semnul egal „ = ”. Se mai numește și operator de atribuire . Atribuirea este punerea unei variabile a unei valori luate dintr-o altă variabilă sau calculată pe baza mai multor variabile. - O nouă valoare a unei variabile poate fi calculată pe baza expresiei din dreapta semnului «=». Expresia poate conține aceeași variabilă. - Puteți combina șiruri folosind semnul plus: - Uneori este convenabil să utilizați un șir format din unul sau mai multe spații: Acum vă explic cum să afișați textul și valoarea variabilei: - Apropo, Diego m-a rugat să-ți dau câteva sarcini. Nu fi surprins, sunt în stilul lui Diego:Sarcini | |
---|---|
1 | Scrieți un program care să afișeze „Dacă ceva nu merge bine la birou, dați vina pe tipul care nu poate vorbi engleza.” |
2 | Scrieți un program care să afișeze „Nu mă entuziasmează banii, ei mă liniștesc”. 10 ori. |
3 | Scrieți un program care să afișeze „Dacă nu vă place modul în care conduc, stați departe de trotuar.”. |
5 Diego, un sfat bun
- Hei amice! Sunt din nou eu, îți amintești? Cel care vă va învăța personalul potrivit! - Nimeni nu te înțelege mai bine decât mine, pentru că amândoi suntem roboți. Deci nu asculta teoria acelor „pungi de oase”. Eu sunt cel pe care ar trebui să-l asculți. Și spun: nimic nu poate înlocui practica. Nu vei învăța să înoți citind un ghid de înot, nu-i așa? Ha-ha. Cine exersează câștigă. Asta fac roboții. - Iată o sarcină nouă : scrieți un program care să afișeze „Sărută-mi fundul de metal strălucitor!”Sarcină: | |
---|---|
1 | O nouă sarcină de ieșire a textului Scrieți un program care să afișeze „Sărută-mi fundul de metal strălucitor!” |
6 Risha, Semnarea contractului
- Sunt eu din nou! Cred că știi deja suficient pentru a începe să iei decizii inteligente . Este timpul să semnezi un contract cu noul tău angajator. Trebuie să completați o cerere, iată un model de formular. Doar afișați textul pe ecran, asta e tot. Semnează orb, o fac mereu.Sarcină: afișarea textului |
---|
Numele meu este Amigo. Salariul meu pentru primul an va fi de 100 USD Mulțumesc pentru generozitate, prietene Risha! |
Sarcină nouă: CONTRACT. Scrieți un program pentru afișare: | |
---|---|
1 |
Numele meu este Amigo. Salariul meu pentru primul an va fi de 60.000 USD Sărută-mi fundul de metal strălucitor! |
7 Elly, Ieșire pe ecran
- Sunt eu din nou. Astăzi aveți trei lecții. Acesta este al doilea! Stați pe loc și ascultați, vă voi spune despre ieșirea pe ecran. Este simplu și ușor: - Îmi puteți spune încă o dată despre print() și println()? - Funcția de imprimare () afișează textul întreg literă cu literă . Când linia este plină, textul apare pe linia următoare. Puteți întrerupe ieșirea pe linia curentă și puteți face afișarea textului pe linia următoare dacă utilizați funcția println (). - Am înţeles. Și care este magia aceea de a adăuga șiruri la numere? - Dacă un număr este adăugat unui număr, rezultatul va fi un număr: 2+2 este egal cu 4. Dacă un șir este adăugat la un număr, atunci numărul este convertit într-un șir și apoi două șiruri sunt combinate. - Da. Am crezut că așa văd exemplele, dar nu se știe niciodată. Mulțumesc pentru prelegerea interesantă, Elly.8 Bilaabo, Comparație cu Pascal
- Bună! Sunt Dr. Laga Bilaabo, sunt un extraterestru, sper că vom fi prieteni. - Şi eu. - Pe planeta noastră natală, folosim limbajul de programare progresiv Pascal, în loc de Java învechit. Iată o mică comparație între Java și Pascal: - Este același program scris cu diferite limbaje. După cum puteți vedea, în Pascal este nevoie de mai puține linii; este un semn al progresivității lui Pascal. - Cred că această comparație vă poate îmbunătăți înțelegerea Java, dacă ați văzut vreodată Pascal. - Nu, nu am. Dar ar fi totuși interesant să ne uităm la compararea a două limbaje de programare diferite. - Da, ai dreptate. Hai sa continuăm. - În Pascal, punem codul scris în corpul programului, proceduri sau funcții. În Java, totul a fost foarte simplificat: corpul programului, procedurile și funcțiile au fost înlocuite cu funcții, iar funcțiile numite metode. - În coloana Pascal, văd «corp program», «funcție» și «procedură», iar în coloana Java sunt doar funcții. Pare un pic ciudat. - Da, pare foarte ciudat tuturor de pe planeta mea, dar oamenilor le place să simplifice totul. - În Java, tot codul este în funcții, așa că, pentru a declara o funcție, nici măcar nu trebuie să scrieți o funcție, așa cum faceți în Pascal . - Este atât de simplu: dacă linia de cod este de forma „Tip + nume” , este o declarație fie a unei funcții, fie a unei variabile.Dacă parantezele urmează după nume, atunci este o declarație a unei noi funcții. Dacă nu există paranteze, atunci este declarată o nouă variabilă. - Declarația de variabile și funcții în Java este foarte asemănătoare, să comparăm: O funcție are numele getName și tipul de returnare String. - Mai mult decât atât, funcțiile Java nu pot exista de la sine. Ei trebuie să fie în interiorul unei anumite clase. Prin urmare, atunci când oamenii trebuie să scrie un program mic în Java, trebuie mai întâi să creeze o clasă , apoi să scrie funcția main în interiorul acestuia și apoi să își scrie codul în ea .Pământenii sunt astfel de ciudați. - Deci, după cum vezi, Pascal este mult mai bun. Și dacă aș putea alege, te-aș învăța pe Pascal. Dar echipa mea m-a forțat să-ți dau niște sarcini pe Java. Măcar voi încerca să vă ofer o motivație bună:Sarcini | |
---|---|
1 | Scrieți un program care să afișeze de 9 ori: „Viața nu este corectă - obișnuiește-te.”. |
2 | Scrieți un program care să afișeze de 4 ori: „Cea mai importantă parte interesată din viața ta ești Tu.”. |
3 | Scrieți un program care să afișeze de 16 ori: «Ceea ce plantezi acum, vei recolta mai târziu.». |