Deși au nume similare, și ambele au apărut în anii 1990, limbajele Java și JavaScript sunt foarte mult diferite.
Capitolul 3: Comparații cu alte limbajeMiorița și alte limbaje
În realitate, calculatoarele sunt niște circuite electrice foarte complexe.
Pentru a putea lucra cu ele, se abstractizează. Primul nivel de abstractizare este să folosim 1
și 0
, numiți biți, pentru a reprezenta dacă trece sau nu curent. Putem spune că instrucțiunile pe care le rulează un calculator sunt înșiruiri de 1
și 0
, cu care ne-ar fi foarte greu să lucrăm, așa că se abstractizează și mai mult.
Următorul nivel de abstractizare îl reprezintă limbajele de asamblare, unde se lucrează direct cu adrese de memorie și regiștri din procesor. Deși mai ușor decât să lucrezi cu biți, tot este destul de complicat, așa că ne ajută să fie și mai multă abstractizare.
Cu cât un limbaj este mai aproape de biți și limbaje de asamblare, se spune că este de nivel scăzut. Acestea sunt și mai greu de învățat și folosit.
În schimb, dacă limbajul este mai aproape de vorbirea curentă, se spune că este de nivel înalt. De asemenea, ce înseamnă înalt și scăzut a evoluat în timp.
Limbajul înțeles de Miorița este unul de nivel foarte înalt.
Alt mod de diferențiere este între modul în care declarăm variabile. În limbajul cu care am lucrat, nu a fost nevoie să specificăm dacă o variabilă va ține un număr, un string, sau alt tip de date. În plus, teoretic putem da unei variabile valoare numerică acum, iar câteva linii mai în jos aceeași variabilă să primească un string. Se spune că aceste limbaje suportă tipuri de date dinamice.
Alte limbaje, în schimb, te obligă să specifici tipul de date la declararea variabilei.
JavaScript
Limbajul JavaScript (prescurtat JS) este un limbaj de nivel foarte înalt, folosit pentru a crea aplicații web dinamice, dar a ajuns să fie folosit și pentru alte tipuri de aplicații.
Limbajul Miorița este bazat pe JavaScript. Am ales asta pentru că JavaScript este cel mai folosit limbaj de programare, dar și pentru că transpunerea din codul scris în aplicație în cod JS este destul de ușoară. Totuși, există diferențe între limbajul JS modern și cel înțeles de Miorița.
Trecerea de la Miorița la JS ar trebui să fie destul de ușoară.
TypesScript
Limbajul TypeScript (TS) este JavaScript la care se adaugă tipuri de date. Nu e obligatoriu să le folosim, așa că orice cod JS este automat valid în TS.
Este folosit în general pentru a fi transformat în JS, dar faptul că are tipuri de date ajută programatorii să găsească potențiale probleme în timp ce scriu codul.
Python
Limbajul Python este un limbaj de nivel foarte înalt, care poate fi folosit în mai multe feluri, dar cel mai des în aplicații de Inteligență Artificială.
Sintaxa Python este aparent foarte diferită de cea pe care am învățat-o. Odată ce înveți, s-ar putea să nu ți se mai pară atât de ciudat. Singura mare diferență este faptul că blocurile de instrucțiuni nu sunt delimitate de acolade, ci de numărul de spații de la începutul liniei de cod.
Python folosește tipuri de date dinamice. Vom intra în câteva detalii într-o lecție viitoare.
PHP
Limbajul PHP (nu e acronim) este un limbaj de nivel foarte înalt, care este folosit pentru logica de pe server a unei aplicații sau site web (back-end). Este tot mai puțin folosit, dar încă beneficiază de faptul că Wordpress este făcut în PHP. Wordpress este cea mai mare și cunoscută platformă pentru crearea de site-uri web, și încă este foarte căutat.
Sintaxa PHP seamănă foarte mult cu JavaScript, și deci și cu Limbajul Miorița, cu marea diferență că variabilele sunt prefixate mereu cu semnul $
.
Java și C#
Deși sunt limbaje total diferite, mie mi se pare că Java și C# (C-Sharp) seamănă foarte mult. Ambele sunt limbaje de nivel înalt, care folosesc tipuri de date statice. Sunt întrebuințate în diferite tipuri de aplicații.
Ambele sunt folosite pentru aplicații web (back-end).
Java era limbajul în care se făceau aplicații pentru telefoane înainte să apară smartphone-uri, dar și acum se folosește pentru aplicații Android.
C# este folosit pentru a crea aplicații pentru Windows, inclusiv jocuri 3D.
Sintaxele Java și C# seamănă destul de mult cu cel pe care l-am văzut la Miorița, dar va trebui să te familiarizezi cu conceptul de „clasă” și Programarea-Orientată-pe-Obiecte (OOP).
C și C++
Limbajul C are peste 50 de ani de existență, și încă este folosit. Este de nivel mediu. Folosește if
, while
, for
, cam ce am învățat. Are tipuri de date statice, și trebuie să ne gândim mai mult la cum sunt stocate acestea în memorie.
Pentru lucrurile mai simple, sintaxa seamănă cu cea am învățat, dar pentru a folosi C la potențial maxim, trebuie să intri în unele lucruri mai dubioase.
C++ este o evoluție a C, care introduce clase și OOP, și câteva alte îmbunătățiri. Codul C este în general compatibil cu C++.
Alte limbaje
Swift este un limbaj de nivel înalt, cu tipuri de date statice, folosit pentru a crea aplicații pentru platformele Apple (MacOS, iOS, iPadOS). Are destul de multe similitudini cu limbajul Mioriței.
Ruby este un limbaj de nivel înalt, cu tipuri de date dinamice. Are sintaxă uneori diferită de Miorița.
Bash/Shell este un limbaj de nivel mediu, folosit pentru terminalul de Linux și MacOS. Diferă foarte mult de Miorița.
Rust este un limbaj de nivel mediu, văzut uneori ca o alternativă mai modernă la C. Sintaxa seamănă uneori cu Miorița.
Lua este un limbaj de nivel înalt, cu tipuri de date dinamice. Sintaxa diferă destul de mult de Miorița.
Kotlin este un limbaj de nivel înalt, cu tipuri de date dinamice. Încet-încet înlocuiește Java ca limbaj pentru aplicațiile Android. Sintaxa este apropiată de Miorița.