Pentru cei care încep doar cu programarea, fie pe partea de server, fie pe partea clientului, este inevitabil că veți întâlni limbile de programare Java și JavaScript.
Dacă aveți vreun program de experiență într-unul sau altul, atunci știți că acestea nu sunt la fel, și probabil știți diferența dintre cele două. Dar, dacă începeți, acest lucru poate fi confuz din anumite motive, primul fiind modul în care sunt numite limbile.
Deși împărtășesc numele "Java" în numele lor, aceștia împart foarte puține atribute și caracteristici. În acest articol, vom examina unele dintre diferențele esențiale ale limbilor prin examinarea unora dintre atributele de nivel înalt pe care fiecare limbă le oferă.
În cele din urmă, căutăm să îi ajutăm pe cei dintre voi care sunt complet noi în programare și nu sunteți siguri în ce limbă doriți să învățați (sau să învățați mai întâi!). În acest articol, vom examina unele dintre diferențele cheie care există în limbile străine și în care fiecare dintre acestea este aplicabil unei încercări de a vă încuraja informațiile necesare pentru a vă ajuta să faceți următorul pas în carieră.
Poate că cel mai bun punct de făcut atunci când începem să distingem aceste două limbi este de a trage comparația după cum urmează:
Java este JavaScript, deoarece sunca este pentru hamster.
Din păcate, nu pot pretinde această analogie ca a mea. În schimb, este inventat de Jeremy Keith, dar face un excelent punct: Despre singurul lucru pe care limbile îl au în comun este faptul că ei împărtășesc numele "Java" în numele lor.
O similitudine este că limbile sunt ceea ce noi numim limbi în stil "C" în sensul că sintaxele lor sunt ca cele ale lui C. Acestea au ambele funcții, paranteze, paranteze și punct și virgulă.
În afară de asta, însă, există o similitudine foarte mică. În tot restul acestui articol, vom examina fiecare limbă la un nivel foarte înalt pentru a vă oferi o idee despre ceea ce oferă fiecare limbă și caracteristicile fiecărui.
După ce ați terminat, ar trebui să vedeți o diferență în cele două limbi și, deși sunt numite în mod similar și au niste similar sintaxei, este vorba despre singurul lucru pe care îl au în comun.
Deci sa începem.
Am acoperit Java în alte tutoriale de pe acest site și vom continua să facem acest lucru deoarece limba continuă să crească în timp.
Java a fost conceput sub ideea de a "scrie o dată, a alerga oriunde", ceea ce înseamnă că ați putea scrie un program pe un computer și apoi să-l implementați pe orice dispozitiv care a avut runtime Java.
Dar așteptați: Care este timpul de executare Java?
În primul rând, este important să înțelegeți că Java este un limbaj compilat, deși nu este compilat cu codul binar, executabil. În schimb, este compilat la bytecode.
Java bytecode este setul de instrucțiuni al mașinii virtuale Java. Fiecare octet este compus din unul sau, în unele cazuri, doi octeți care reprezintă instrucțiunea (opcode), împreună cu zero sau mai mulți octeți pentru trecerea parametrilor.
Sună mai puțin interesant, nu-i așa? Este în regulă! În calitate de dezvoltatori, nu suntem responsabili pentru scrierea bytecode. În schimb, compilatorul Java compilează codul nostru la bytecode.
Acest bytecode este executat în partea de sus a runtime-ului, care rulează în contextul unui alt sistem de operare. Acest sistem de operare poate funcționa pe un telefon mobil, poate funcționa pe un alt computer, poate funcționa pe Windows, OS X, Linux sau orice alt sistem pe care este compatibil. Puteți citi totul în această pagină.
Sună bine, nu? Lucrul este că nu este fără provocările sale. Se pare mult mai ușor decât este, și acesta este un lucru pe care dezvoltatorii Java mai avansați îl abordează. Este în afara domeniului de aplicare al acestui articol. În schimb, ne vom concentra pe atributele limbii astfel încât să putem compara și contrasta cu JavaScript.
Dar, mai întâi, să ne uităm la unele facultăți pe care trebuie să le lucrăm în Java. Este important să rețineți că lucrăm la un nivel mult mai înalt. De exemplu, lucrăm cu următorii constructori:
Fişier
ne poate permite să citim conținutul a ceea ce conține.Fişier
, de exemplu, pot avea permisiuni cum ar fi abilitatea de a citi sau scrie într-un sistem de fișiere. Poate avea și o cale reprezentând locul în care se află în sistemul de fișiere.Dacă nu ați scris niciodată codul, unele dintre acestea pot părea ca jargon. Destul de bine! Avem câteva resurse disponibile pentru a vă ajuta să vă învățați ce trebuie să știți:
Dar înainte de a sări prea mult în a lua o decizie cu privire la ceea ce vrei să înveți, să aruncăm o privire la JavaScript, de asemenea.
Am acoperit JavaScript cu mult mai multe detalii într-un articol anterior pe care îl puteți citi aici, dar voi acoperi punctele înalte, așa cum am menționat anterior, în acest articol. Pentru o scufundare mult mai adâncă, aruncați o privire la ceea ce este furnizat mai sus.
JavaScript, în centrul său, este un limbaj dinamic care este unic și interpretat. Asta înseamnă:
Şir
.Dacă sunteți confuz de oricare dintre acestea, nu vă faceți griji! Am fost toți acolo:
E mult. Stiu. Dar chestia frumoasă este aceea pe care o avem mulțime de resurse pentru a vă ajuta să accelerați cu JavaScript. Iar odată ce ați învățat nuanțele limbajului, devine mai ușor și mai ușor să lucrați în limitele sale.
Amintiți-vă, toate "nu sunt sigur ce fac" este natural și face parte din curba de învățare. Dacă ai făcut-o nu văzută orice programare legate de JavaScript, atunci vă recomand să verificați câteva dintre următoarele cursuri:
Odată ce vă familiarizați mai mult cu limba, este, de asemenea, important să utilizați instrumentele adecvate pentru dezvoltarea aplicațiilor. Aceasta include utilizarea unor instrumente cum ar fi un program de depanare (care include și cele mai moderne browsere). Cu toate acestea, acest lucru nu este valabil pentru acest articol special.
O altă deosebire importantă este că JavaScript și Java sunt ambele limbi orientate pe obiecte, dar din diferite motive.
Java ne permite să creăm instanțe de obiecte din clasele pe care le creăm. În schimb, totul în JavaScript este un obiect. Asta înseamnă că nu există clase. Și pentru că totul este un obiect, totul are metode și proprietăți pe care le putem folosi.
În Java, atunci când creați o instanță a unei clase, aveți acces la metodele și proprietățile pe care le expuneți prin definiția clasei. Dacă aveți proprietăți publice, funcții publice și așa mai departe, dezvoltatorul le poate folosi.
În JavaScript, atunci când creați o variabilă, un obiect sau chiar o funcție, aveți abilitatea de a apela funcții care există nu numai pe acest obiect, ci și pe obiectele din care obiectul dat își derivă proprietățile. Acest lucru are de a face cu natura prototipului moștenire a JavaScript, despre care puteți citi mai multe despre acest articol.
După cum puteți vedea din conținutul de mai sus, cele două limbi - deși ambele sunt inspirate de C în ceea ce privește sintaxa lor - sunt foarte diferite. Fiecare are de asemenea un scop diferit.
Deși puteți scrie JavaScript pe server cu tehnologii precum Node.js, acestea nu sunt aceleași tipuri de aplicații care sunt construite cu Java. În plus, deși puteți scrie aplicații de pe server cu Java, acestea nu sunt aceleași tipuri de aplicații pe care le scrieți de obicei cu JavaScript.
În schimb, este adesea util să vă gândiți că JavaScript este o limbă care este cea mai potrivită pentru dezvoltarea clientului, pentru aplicațiile care se vor executa într-un browser web sau pentru aplicațiile de o singură pagină. Iar cel mai bine este să vă gândiți la Java ca limbaj de programare care este cel mai bine folosit pentru scrierea de aplicații desktop sau desktop ce pot fi executate pe o varietate de sisteme și dispozitive de operare diferite.
Se pare că fiecare dintre aceste limbi oferă seturile lor unice de avantaje și dezavantaje. Sincer, cred că o mare parte din ceea ce ne determină să alegem o limbă în raport cu cealaltă are legătură cu ceea ce vrem să facem în ceea ce privește construirea de soluții pentru noi și pentru alții.
Dacă doriți să lucrați pe web, atunci JavaScript este probabil cea mai buna alegere. Dacă, pe de altă parte, doriți să scrieți aplicații desktop, atunci Java nu este o alegere proastă.
Pentru cei care sunt interesați, merită menționat faptul că JavaScript a devenit unul dintre limbile de-facto de lucru pe web. Nu este fără curbele de învățare și există o mulțime de cadre și biblioteci pentru a vă menține ocupați. Dacă sunteți în căutarea unor resurse suplimentare pentru a studia sau a utiliza în munca dvs., verificați ce avem la dispoziție pe piața Envato.
Eu petrec majoritatea timpului meu de lucru cu WordPress și construirea de soluții deasupra; cu toate acestea, sunt, de asemenea, un fan al JavaScript și blog despre asta din când în când. Dacă sunteți interesat de alte cursuri și tutoriale pe care le-am scris pentru Envato, vă rugăm să verificați pagina mea de profil. Mai mult, puteți citi mai multe articole despre WordPress și dezvoltarea JavaScript pe blogul meu. Simțiți-vă liber să urmați-mi și pe Twitter la @tommcfarlin.
Cu asta a spus, vă rugăm să lăsați orice feedback în Feed Feed de mai jos.
Aflați JavaScript: Ghidul complet
Am creat un ghid complet care vă ajută să învățați JavaScript, indiferent dacă începeți doar ca dezvoltator web sau doriți să explorați subiecte mai avansate.