CodeGym /Java Blog /Random-IT /Divertiti con Java e JavaScript
John Squirrels
Livello 41
San Francisco

Divertiti con Java e JavaScript

Pubblicato nel gruppo Random-IT

COS'È JAVA?

Java è un linguaggio di programmazione generico progettato con un mantra in mente: " scrivi una volta, esegui ovunque ". Le applicazioni Java sono compilate in bytecode che possono essere eseguite su implementazioni della Java Virtual Machine (JVM). JVM aiuta a colmare il divario tra il codice sorgente e gli 1 e gli 0 che il computer comprende. Qualsiasi macchina su cui è installata la JVM può eseguire Java. Nello sviluppo web, Java è particolarmente importante come linguaggio lato server e linguaggio di programmazione preferito per le app mobili sulla piattaforma Android. Ha anche ancora una presenza decente sul front-end come applet Java, anche se questo sta cadendo in disgrazia a causa di problemi di sicurezza.

CHE COS'È JAVASCRIPT?

Accanto a HTML e CSS, JavaScript (standardizzato come ECMAScript) è considerato uno dei tre grandi componenti principali del web. Utilizzato dalla maggior parte dei siti Web, JavaScript è un linguaggio di scripting che in genere viene eseguito nel browser e rende le pagine Web dinamiche e interattive. Oggi JavaScript sta crescendo rapidamente anche come tecnologia lato server dal rilascio di Node.js nel 2009.

JAVA VS. JAVASCRIPT: GRANDI SIMILITà

Per quanto siano diversi, ci sono alcune somiglianze di primo livello che vale la pena considerare, specialmente se stai guardando allo sviluppo web quando confronti Java con JavaScript. Programmazione orientata agli oggetti (OOP) . Entrambi i linguaggi richiedono allo sviluppatore di codificare in termini di oggetti e delle loro relazioni reciproche. Per estensione, ciò consente a entrambi i linguaggi di accedere a tecniche come l'ereditarietà, l'incapsulamento e il polimorfismo. Sviluppo front-end . Entrambi i linguaggi possono essere utilizzati negli aspetti dello sviluppo front-end. JavaScript può essere incorporato direttamente in HTML, implementato come framework o libreria; Java può essere utilizzato come applet Java. Sviluppo back-end. Entrambe le lingue possono essere utilizzate sul lato server. Java è stato a lungo utilizzato per alimentare tecnologie di back-end come Apache, JBoss e WebSphere. Node.js è diventato un trampolino di lancio per i server basati su JavaScript

JAVA VS. JAVASCRIPT: GRANDI DIFFERENZE

È importante ricordare che Java e JavaScript sono stati sviluppati per scopi completamente diversi. Java è stato progettato come linguaggio di programmazione generico per la creazione di applicazioni autonome, mentre JavaScript è un linguaggio di scripting creato appositamente per interfacciarsi con le tecnologie Web, vale a dire HTML. Quando Java è stato rilasciato da Sun nel 1991, inizialmente veniva utilizzato per programmare l'elettronica di consumo come i videoregistratori. JavaScript è stato introdotto per essere utilizzato con Java come linguaggio di scripting lato client che può essere eseguito nel browser senza dover essere compilato. Diamo un'occhiata più da vicino ad alcune delle principali differenze tra queste due lingue. Compilato vs. Interpretato.Java è considerato un linguaggio di programmazione compilato. JavaScript è considerato un linguaggio di scripting interpretato. La differenza sta nell'implementazione: Java è compilato in bytecode ed eseguito su una macchina virtuale, mentre JavaScript può essere interpretato direttamente da un browser nella sintassi in cui è scritto (sebbene di solito sia minimizzato nella pratica). Controllo del tipo statico e dinamico. Java utilizza il controllo del tipo statico, in cui il tipo di una variabile viene controllato in fase di compilazione. Il programmatore deve specificare il tipo (intero, doppio, stringa, ecc.) di qualsiasi variabile creata. JavaScript, come la maggior parte dei linguaggi di scripting, utilizza la tipizzazione dinamica, in cui l'indipendenza dai tipi viene verificata in fase di esecuzione. Non è necessario che un programmatore specifichi il tipo di qualsiasi variabile che crea. Esistono molti pro e contro per questi due paradigmi, ma il vantaggio principale del controllo del tipo statico è che gli errori di tipo vengono rilevati all'inizio dello sviluppo e poiché il compilatore sa esattamente quali tipi di dati vengono utilizzati, il codice in genere viene eseguito più velocemente o utilizza meno memoria . Il vantaggio principale del controllo dinamico dei tipi è la produttività del programmatore: sei libero di assegnare i tipi a tuo piacimento. Concorrenza. La capacità di gestire l'esecuzione di più sequenze di istruzioni contemporaneamente è gestita in modo molto diverso tra Java e JavaScript. Java utilizza più thread per eseguire attività in parallelo. JavaScript, in particolare poiché esiste come Node.js nelle applicazioni lato server, gestisce la concorrenza su un thread principale di esecuzione tramite un sistema di code chiamato ciclo di eventi e un sistema di fork chiamato Node Clustering. Per la maggior parte dei casi d'uso, entrambi i metodi funzionano bene, ma Java è generalmente più veloce perché thread to threadless-Basedaring molto più veloce della comunicazione interprocesso (IPC). Basato sulla classe vs basato sul prototipo. Java segue l'ereditarietà basata sulla classe, una relazione dall'alto verso il basso, gerarchica, basata sulla classe in cui le proprietà sono definite in una classe ed ereditate da un'istanza di quella classe (uno dei suoi membri). In JavaScript, l'ereditarietà è prototipale: tutti gli oggetti possono ereditare direttamente da altri oggetti. La gerarchia viene realizzata in JavaScript assegnando un oggetto come prototipo con una funzione di costruzione.

DEVO USARE JAVASCRIPT O JAVA PER IL MIO PROSSIMO PROGETTO?

Come con tutte le lingue, la scelta si riduce davvero a cosa stai cercando di costruire e quali risorse hai a tua disposizione. JavaScript è ancora una tecnologia web, mentre Java è un linguaggio generico che può costruire qualsiasi cosa. Dovresti prendere in considerazione Java se il tuo progetto prevede...
  • Applicazioni Android
  • Software aziendale
  • Calcolo scientifico
  • Analisi dei Big Data
  • Programmazione generica dell'hardware
  • Tecnologie lato server come Apache, JBoss, Geronimo, GlassFish, ecc.
Dovresti considerare JavaScript se il tuo progetto prevede...
  • Applicazioni dinamiche a pagina singola (SPA)
  • Tecnologie front-end come jQuery, AngularJS, Backbone.js, Ember.js, ReactJS ecc.
  • Tecnologie lato server come Node.js, MongoDB, Express.js, ecc.
  • Sviluppo di app mobili tramite PhoneGap, React Native, ecc.
  • Tieni presente che nessuno dei due elenchi è ampio, questi sono intesi solo come punto di partenza per aiutarti a farti un'idea di cosa puoi aspettarti e quali parole chiave puoi utilizzare per valutare la lingua migliore per le tue esigenze
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION