PHP e JavaScript sono entrambi linguaggi di scripting che chi lavora nello sviluppo web usa frequentemente. Eppure ognuno di loro presenta le sue peculiarità e i suoi casi d’uso.

In questo articolo, esploreremo le differenze tra i due, e gli scenari in cui usare i due linguaggi per i progetti di sviluppo.

Cominciamo a vedere come sono nate questi due linguaggi.

Preferite guardare la versione video?

PHP vs JavaScript: Origini

PHP è un linguaggio open source creato nel 1995 da Rasmus Lerdorf. Il nome deriva da Personal Home Page Tools, un insieme di script usati da Rasmus per tracciare le visite al suo sito.

Con il lancio di PHP 3.0, l’acronimo che dà il nome al linguaggio si è invertito: PHP: Hypertext Preprocessor. Ora è semplicemente conosciuto come PHP.

JavaScript è stato creato nel 1995 da Brendan Eich di Netscape per portare l’interattività nel web. Originariamente noto come Mocha, il nome è stato cambiato in LiveScript, e successivamente JavaScript per sfruttare la popolarità del linguaggio Java.

Oggi JavaScript è ufficialmente conosciuto come ECMAScript, ma JavaScript è il nome che la maggior parte delle persone continua a usare.

Quindi, entrambe i linguaggi sono in giro da un po’ di tempo.

Ora esamineremo alcune delle loro altre similitudini.

Similitudini tra PHP e JavaScript

Tipo di Linguaggio

PHP e JavaScript sono entrambi linguaggi di scripting. Questo è in contrasto con i linguaggi di programmazione “puri” come Java o C++.

I linguaggi di scrittura tendono a essere interpretati piuttosto che compilati. Ciò significa che vengono tradotti in codice macchina tramite una terza parte piuttosto che direttamente. Questo ha un impatto sul loro tempo di esecuzione.

Pensatela in questo modo: immaginate di voler tradurre una pagina web dalla vostra lingua madre al navajo. Se non conosceste la lingua navajo avreste bisogno di un interprete che vi aiuti, e la traduzione richiederebbe più tempo.

Per questo motivo i linguaggi compilati tendono a essere più veloci dei linguaggi interpretati.

Tipizzazione delle Variabili

Un’altra caratteristica comune è che PHP e JavaScript sono debolmente digitati.

Ciò significa che quando si crea una variabile in una delle due lingue, non è necessario assegnare il suo tipo di dati: si presume.

Quindi, è possibile scrivere quanto segue in PHP:

$x = 'Hello world';

$y = 'Bonjour le monde';

Oppure in JavaScript:

var x = 'Coding is fun';

let y = 'No, honestly';

In entrambe le lingue, queste variabili saranno riconosciute come stringhe (set di caratteri).

Questo si oppone a un linguaggio fortemente tipizzato come Java, dove si deve dire che tipo di variabile si sta usando quando la si dichiara:

int x = 5;

Sia PHP che JavaScript sono digitati dinamicamente: in altre parole, è possibile cambiare il tipo facilmente ridefinendolo nel proprio codice:

$x = 5;

In PHP, $x è ora un numero intero.

x = 3.14195;

In JavaScript, x è ora un numero.

Poiché i tipi non sono definiti esplicitamente in PHP o JavaScript, sono necessarie delle funzioni che vi dicano con quale tipo di dati state lavorando.

JavaScript ha la funzione typeof per specificarlo.

PHP ha la funzione gettype per restituire il tipo di variabile. Una nuova versione migliorata di gettype, get_debug_type, fa parte della release di PHP 8.

Classi e Oggetti

Né PHP né JavaScript erano originariamente orientati agli oggetti. L’orientamento agli oggetti è stato integrato con l’evoluzione dei linguaggi.

La possibilità di creare oggetti e classi è arrivata con PHP 5, nel 2004.

JavaScript non ha usato oggetti o classi fino a molto più tardi, e precisamente nel 2015, con l’introduzione di ES6.

Una classe è un generico raggruppamento di oggetti.

Un oggetto è un’entità con proprietà (caratteristiche) e metodi (comportamenti).

Il gioco Dungeons and Dragons (D&D) fornisce una buona analogia.

Un personaggio del giocatore corrisponde a un oggetto. Ogni personaggio appartiene a una classe di personaggi, come ad esempio un Barbaro, un Furfante o un Mago.

Gli oggetti possono avere un numero qualsiasi di proprietà che si desidera definire.

Quindi, le proprietà di un personaggio possono includere:

  • nome
  • gara
  • capacità (Forza, Intelligenza, Saggezza, Destrezza, Costituzione e Carisma)
  • tipo di personalità (ad es. audace, timido, curioso)
  • allineamento (legale, caotico, buono, cattivo)

È possibile usate metodi a oggetti per recuperare informazioni sull’oggetto.

Ecco un esempio di codice PHP di una definizione di classe e di oggetto:


<?php

class Sorcerer {

// Define properties

public $name;

public $race;

public $intelligence;

// Constructor function for the object

// takes 3 arguments, name, race and intelligence

function __construct($name, $race, $intelligence) {

$this->name = $name;

$this->race = $race;

$this->intelligence = $intelligence;

}

# Define object methods

// Get the name

function get_name() {

return $this->name;

}

// Get the race

function get_race() {

return $this->race;

}

// Get intelligence

function get_intelligence() {

return $this->intelligence;

}

} // end Sorcerer class

// Create a Sorcerer

$yensid = new Sorcerer("Yen Sid", "Human", 18);

# Output the object properties in the browser

echo $yensid->get_name();

echo "<br>";

echo $yensid->get_race();

echo "<br>";

echo 'Intelligence: ';

echo $yensid->get_intelligence();

?>

Quando questo codice viene aggiunto a un file HTML, l’output nel browser dovrebbe essere il seguente:

Yen Sid

Umano

Intelligence: 18

Si possono anche definire metodi che sono azioni che gli oggetti compiono o hanno compiuto su di essi.

In D&D, potrebbero essere:

  • surpriseAttack()
  • disarmTrap()
  • castSpell()
  • resistPoison()

Quando un metodo viene eseguito su un oggetto, il risultato può dipendere dalle proprietà dell’oggetto. Quindi l’oggetto apprendista di uno stregone non sarà in grado di lanciare incantesimi con la stessa efficacia di un oggetto mago esperto.

Domanda di Mercato

Un’altra cosa che PHP e JavaScript hanno in comune è che gli sviluppatori di entrambi i linguaggi sono molto richiesti.

Anche gli sviluppatori che usano JavaScript e PHP sono ben compensati.

Negli Stati Uniti, guadagnano in media circa 80.000 dollari all’anno.

Stipendi degli sviluppatori PHP, Glassdoor.com
Stipendi degli sviluppatori PHP, Glassdoor.com
Stipendi per sviluppatori JavaScript, Glassdoor.com
Stipendi per sviluppatori JavaScript, Glassdoor.com

Documentazione

La notizia meno buona per i nuovi arrivati in PHP o JavaScript è che la documentazione ufficiale per entrambi i linguaggi non è molto user-friendly. È stata scritta per sviluppatori esperti piuttosto che per principianti.

Qui potete consultare la documentazione per ogni linguaggio:

L’insegnante di JavaScript Chris Ferdinandi lamenta la mancanza di una buona documentazione JavaScript, dicendo che è stato uno dei motivi per cui ci ha messo tanto a padroneggiare il linguaggio.

A questo punto, ci si potrebbe chiedere: “Qual è la differenza tra PHP e JavaScript? In realtà, ce ne sono diverse.

Quali Sono le Differenze tra PHP e JavaScript?

Scripting Lato server vs. Lato Client

Il PHP è un linguaggio di scripting lato server. Ciò significa che funziona sul server web al contrario di una macchina client.

La programmazione lato server è utile per fornire agli utenti contenuti dinamici (tipicamente da un database), come ad esempio un messaggio di benvenuto (“Ciao, Claire!”) quando un utente effettua il login.

Più seriamente, lo scripting lato server è usato nel commercio elettronico. Ad esempio, ci sono oltre 100 estensioni WooCommerce che si collegano tramite API (application programming interface) a diversi fornitori di pagamento per elaborare le transazioni.

JavaScript è un linguaggio lato client, quindi funziona sul portatile, sul telefono o sul tablet di un utente.

JavaScript può manipolare il DOM che sta per Document Object Model e si potrebbe pensare ad esso come a una struttura ad albero formata dall’HTML di una pagina web.

Se vi siete mai imbattuti in una fisarmonica o in un toggle, magari come parte di un plugin per le FAQ, avete visto JavaScript lato client in azione. Quando fate clic o tap su una domanda, i gestori di eventi JavaScript attivano o disattivano le proprietà di visualizzazione o visibilità dei CSS, mostrando o nascondendo la relativa risposta.

Front end vs Back end

Il PHP funziona nel back end di un sito web, cioè nella parte che i visitatori non vedono! In WordPress, ciò significa che PHP fa tutto il suo lavoro sul server web e nell’admin di WordPress.

Tradizionalmente, JavaScript funzionava sul front end, ma la situazione è cambiata nel 2009 quando è stato lanciato Node.js, un runtime back end. Oggi JavaScript è veramente un linguaggio full stack.

Combinazione con Altre Lingue

Essendo il PHP un linguaggio back end, fa parte dello stack LAMP (Linux, Apache, MySQL, PHP).

PHP può fondersi con l’HTML. Lo vedrete esaminando il codice di molte applicazioni web, tra cui WordPress.

Ecco un esempio dal file index.php del tema Twenty Twenty:


<header class="archive-header has-text-align-center header-footer-group">

<div class="archive-header-inner section-inner medium">

<?php if ( $archive_title ) { ?>

<h1 class="archive-title"><?php echo wp_kses_post( $archive_title ); ?></h1>

<?php } ?>

<?php if ( $archive_subtitle ) { ?>

<div class="archive-subtitle section-inner thin max-percentage intro-text"><?php echo wp_kses_post( wpautop( $archive_subtitle ) ); ?></div>

<?php } ?>

</div><!-- .archive-header-inner -->

</header><!-- .archive-header -->

Tuttavia, se unite il PHP ad altri linguaggi back end nelle applicazioni web, è più difficile mantenerli. Inoltre, non solo bisogna conoscere il PHP, ma anche studiare ed essere competenti in questi altri linguaggi!

Gli sviluppatori JavaScript hanno un po’ più di libertà nella scrittura del loro codice. Possono usare il linguaggio con HTML, XML e Ajax.

Case Sensitivity: Differenza tra Maiuscole e Minuscole

Con case sensitivity si intende la distinzione tra lettere maiuscole e minuscole quando si nominano le entità nel linguaggio.

Il PHP è parzialmente sensibile alle maiuscole e minuscole. La differenza è importante per alcune cose e non per altre.

Le variabili PHP fanno differenza tra maiuscole e minuscole.

Quindi, se create una variabile in PHP:

$dog = "chihuahua";

e cercate di ottenere il valore di $DOG in una parte successiva del vostro codice, non funzionerà.

Le funzioni PHP, tuttavia, non fanno differenza tra maiuscole e minuscole.

Se create questa funzione in PHP:

function dogFetch() {

// your code to run when the function is called

}

e poi richiamate DogFetch() nel vostro codice, la vostra funzione sarà ancora attiva.

Tuttavia, questa non è una buona pratica di programmazione perché incoerente.

JavaScript, invece, è totalmente case sensitive quindi fa sempre differenza tra maiuscole e minuscole.
Così le variabili chiamate beagle, BEAGLE e Beagle sarebbero tutte distinte l’una dall’altra.

Sintassi

La sintassi è l’insieme delle regole che governano una lingua. Questo include l’ordine delle parole, la grammatica e la punteggiatura.

In italiano, potremmo dire:

Ho mangiato la mia zuppa lentamente.

Ma se voi foste Yoda, direste:

La mia zuppa lentamente ho mangiato.

Perché? La sintassi è diversa. Stesse parole, ordine diverso.

The Yoda-Speak Generator
The Yoda-Speak Generator

Alcune lingue usano parole che appaiono uguali, ma hanno un significato diverso.

Lui in francese significa "him" in inglese
Lui in francese significa “him” in inglese
Lui in italiano significa "he" in inglese
Lui in italiano significa “he” in inglese

Mentre gli esseri umani sono comprensivi se usiamo la parola sbagliata, i computer non perdonano e sono molto letterali. Se commettiamo un errore nella nostra sintassi di programmazione, un computer spesso non sa cosa volevamo dire, il che di solito si traduce in un errore.

Sia JavaScript che PHP usano la stessa sintassi a doppia barra per i commenti del codice a riga singola:

// Questo è un commento

Ma il PHP ha anche un’altra forma di sintassi per i commenti:

# Questo è un commento

Se tentate di usare la sintassi dei commenti PHP in JavaScript, otterrete un errore:

# Questo È un Commento

Uncaught SyntaxError: private fields are not currently supported
JavaScript Uncaught SyntaxError
JavaScript Uncaught SyntaxError

Altri errori di sintassi sono comuni sia a JavaScript che a PHP, come ad esempio:

  • Manca un punto e virgola (;) alla fine di una riga di codice.
  • Non usare un paio di parentesi graffe {} per le dichiarazioni condizionali.

Definizioni Variabili e Costanti

Come abbiamo visto in precedenza, JavaScript e PHP hanno modi diversi di dichiarare le variabili.

Definiscono anche le costanti in modo diverso.

JavaScript usa questa sintassi:

const x = 6;

Per una costante semplice come questa, il suo valore non può essere cambiato in seguito.

Mentre PHP usa la funzione define() per le costanti.

define(name, value, case-insensitive)

Per convenzione, le costanti di PHP sono scritte in maiuscolo. Un esempio è:

define('MONSTER', 'Sulley');

I primi due parametri tra parentesi sono autoesplicativi.

Il terzo, case-insensitive, ha il valore predefinito di false. Solo se è impostato su true la costante sarà insensibile alle maiuscole e minuscole.

Cioè:

define('MONSTER', 'Sulley', true);

Array

Gli array sono variabili che possono memorizzare più di una cosa.

In PHP, gli array sono array associativi o mappe ordinate. Vuol dire che gli elementi all’interno dell’array hanno coppie di chiavi e valori correlati.

<?php

$array(

key => value,

key2 => value2,

...

)

Un esempio meno astratto è il seguente, dove la chiave è il nome e il valore il cognome.

<?php

$array = array(

"Frodo" => "Baggins",

"Sam" => "Gamgee",

"Merry" => "Brandybuck",

"Pippin" => "Took",

);

Per facilità d’uso, è possibile convertire oggetti PHP in array e convertire gli array in oggetti.

Tuttavia, JavaScript può avere solo array che hanno indici numerati.
Per esempio:

var mountains = [

"Everest",

"Kilimanjaro",

"Fuji"

];

Per recuperare un valore si deve fare riferimento all’indice della matrice, che inizia con 0:

var mountain = mountains[1];

Gli array associativi con i loro indici nominativi non sono supportati in JavaScript.

Integrazione del Database

Una cosa che PHP può fare brillantemente è connettersi ai database.
Il PHP si integra particolarmente bene con MySQL o MariaDB, entrambi usati da WordPress. Diversi framework PHP offrono inoltre facili integrazioni di database.

Usare un database è utile per la ricerca, l’ordinamento e il filtraggio delle informazioni da presentare a un utente, come ad esempio i prodotti in un negozio online.

Storicamente, JavaScript non si integra con i database, anche se questo sta cominciando a cambiare.

PouchDB è un esempio di un database JavaScript.

Database open source JavaScript PouchDB - php vs javascript
Database open source JavaScript PouchDB – php vs javascript

Threading

Il threading si riferisce alle istruzioni che un linguaggio di programmazione è in grado di gestire.

PHP è multi-threaded, il che significa che può elaborare più istruzioni in parallelo.

Il converse è un linguaggio a un solo thread come JavaScript, che può gestire un solo comando alla volta.

Per illustrare il threading, lo sviluppatore Samim Yaquby usa l’analogia di del servizio clienti in una caffetteria.

Per una piccola caffetteria in cui lavora un solo barista, è più facile ed efficiente che il barista serva prima i clienti con ordini più semplici, uno alla volta. Un comportamento che ricorda il threading singolo di JavaScript.

Al contrario, uno Starbucks di grandi dimensioni avrebbe molto probabilmente più persone al banco che eseguono gli stessi ordini contemporaneamente. Ciò ricorda l’approccio multithreaded di PHP.

Velocità

In generale, JavaScript viene eseguito più velocemente di PHP sullo stesso hardware. Tuttavia, poiché JavaScript viene eseguito sul client, se la macchina client è vecchia e lenta, ciò avrà un effetto a catena sul tempo di esecuzione.

La velocità di PHP è migliorata a passi da gigante dal rilascio di PHP 7, grazie a un nuovo motore che ha raddoppiato le prestazioni e migliorato il consumo di memoria. Rispetto a PHP 5.6, PHP 7.0 è in grado di gestire più del doppio delle richieste, e le prestazioni sono ulteriormente migliorate a ogni release successiva alla 7.x.

Il PHP funziona meglio di JavaScript anche quando si costruiscono applicazioni in tempo reale come chatbot o giochi.

Si prevede che il rilascio di PHP 8 con il Just in Time Compiler renderà il PHP ancora più veloce.

Gestione dei Pacchetti

Ogni linguaggio ha il proprio gestore di pacchetti, cioè i moduli di codice riutilizzabili di terze parti che aggiungono funzionalità extra a un progetto. Alcuni pacchetti dipendono da altri per poter funzionare, quindi sono chiamati dependencies (dipendenze).

Il PHP ha due gestori di pacchetti, PEAR e Composer, che possono scaricare i pacchetti PHP sul repository Packagist.

JavaScript ha diversi gestori di pacchetti ben noti, tra cui npm, Yarn e Bower.

Gestione dei pacchetti JavaScript
Gestione dei pacchetti JavaScript

Tra questi, npm è il più popolare, con più di 11 milioni di sviluppatori che lo usano a livello globale.

Utilizzo sul Web

Il PHP è il linguaggio server-side più usato oggi sul web, battendo facilmente la concorrenza con quasi l’80% dei siti web che lo utilizzano.

Linguaggi di programmazione lato server secondo W3Techs
Linguaggi di programmazione lato server secondo W3Techs

 

Mentre il PHP è molto popolare, JavaScript è quasi-ubiquo sui siti web, visto che il 97% dei siti web lo utilizzano.

Linguaggi di programmazione lato client secondo W3Techs - php vs javascript
Linguaggi di programmazione lato client secondo W3Techs

A Cosa Serve il PHP?

Il PHP ha una vasta gamma di utilizzi.

Probabilmente è meglio conosciuto per la creazione di pagine web dinamiche. Secondo BuiltWith, PHP viene usato da oltre 34 milioni di siti web, e alimenta alcuni dei siti più noti e più redditizi del mondo, tra cui Nike, Salesforce e Walmart.

Siti web che usano PHP con un fatturato stimato di oltre 1 milione di dollari
Siti web che usano PHP con un fatturato stimato di oltre 1 milione di dollari

Il PHP è perfetto se il vostro progetto ha bisogno di un’autenticazione sicura per gli utenti. Questo include la gestione dei cookie e delle sessioni, l’autenticazione del nome utente e della password e l’autenticazione a due fattori.

Come già detto in precedenza, PHP è ottimo per lavorare con i database perché può interfacciarsi con una vasta gamma di essi. Ha anche una sicurezza dei dati integrata per la gestione degli input degli utenti e per proteggersi da minacce come gli attacchi SQL injection.

Il PHP è anche comunemente usato per costruire applicazioni in tempo reale come la messaggistica istantanea.

Infine, anche se fate la maggior parte del vostro lavoro sul front end, avrete bisogno di un back end per il server. Il PHP è una scelta ideale, perché è per questo che è stato creato.

Per Cosa Viene Usato JavaScript?

JavaScript è diventato così popolare che forse la domanda giusta è: “Per cosa non viene usato JavaScript?

A parte i siti web e le applicazioni web, JavaScript è stato usato per costruire cose come:

  • Applicazioni per cellulari
  • Server web
  • Giochi
  • Slide deck
  • Chatbot
  • …e anche droni programmabili
Super Chrono Portal Maker, un gioco in HTML5 e JavaScript
Super Chrono Portal Maker, un gioco in HTML5 e JavaScript

JavaScript Può Essere Usato Insieme al PHP?

La risposta è sì, assolutamente.

Un esempio comune è quello dei moduli web, dove è utile convalidare l’input dell’utente prima che venga salvato in un database.

È possibile usare JavaScript per la convalida lato client, ad esempio per verificare che un’email sia nel formato corretto. In seguito, è possibile usare PHP per la validazione lato server, ad esempio per verificare che l’email esista nel vostro database.

Come WordPress Usa JavaScript e PHP

Tradizionalmente, WordPress ha usato entrambi i linguaggi, ma molto più PHP che JavaScript. Questo ha iniziato a cambiare con l’introduzione dell’editor di Gutenberg.

Durante lo State of the Word al WordCamp US nel 2015, Matt Mullenweg ha dato un’idea di quanto importante JavaScript sarebbe diventato, sollecitando il pubblico a

“Imparare JavaScript a fondo”.

Per come stanno le cose, ecco come vengono usati entrambi i linguaggi in WordPress.

Il PHP è usato per i file template dei temi, il loop, l’autenticazione, la validazione e l’accesso al database.

JavaScript alimenta il tema e l’interattività dei plugin, la validazione lato client e la gestione degli eventi. In particolare, una certa conoscenza di JavaScript è richiesta per lo sviluppo di blocchi, in quanto i blocchi dipendono dal framework React JS.

Imparare PHP vs JavaScript

Poiché sono entrambi abbastanza facili da imparare, non c’è ragione per cui non si possa studiare sia PHP che JavaScript.

I due linguaggi si basano su alcuni fondamentali della programmazione, come variabili, loop, istruzioni condizionali, ambito e oggetti.

Essendo un linguaggio così affermato e popolare, è facile imparare il PHP.

Poiché il PHP è un linguaggio lato server, è necessario un server per scrivere il codice. Potrebbe essere un vero e proprio server web, o un’emulazione di uno, come ad esempio un ambiente di sviluppo locale. Alcuni esempi sono DevKinsta, XAMPP, WAMP o MAMP.

È possibile iniziare a imparare JavaScript con relativa facilità esercitandosi nella console del browser.

Sul browser Chrome, potete accedere alla console tramite la scorciatoia Control+Shift+J su Windows, o Command+Option+J su Mac.

Un semplice programma Hello World nella console JavaScript di Chrome
Un semplice programma Hello World nella console JavaScript di Chrome

Il punto in cui JavaScript diventa più difficile da padroneggiare è la dimensione del suo ecosistema.

Il linguaggio JavaScript si è espanso da vanilla JavaScript a una pletora di altri framework. Angular, Vue, jQuery e React sono solo alcuni dei tanti che ora esistono.

Alcuni framework JavaScript
Alcuni framework JavaScript

Una buona risorsa per principianti proviene da MDN Web Docs nella loro documentazione JavaScript.

Chris Ferdinandi, che si è fatto un nome educando la gente su vanilla JavaScript, dice che il click con JavaScript per lui è avvenuto solo dopo aver imparato jQuery.

Il suo consiglio per neofiti di JS è:

“Non ti preoccupare di quale sia l’ordine in cui imparare le cose. Non perdere tempo a cercare di scegliere la cosa perfetta, perché non esiste la cosa perfetta”.

Basta che siate consapevoli della “sindrome degli oggetti luccicanti” che spesso prende chi usa i framework JavaScript senza aver prima compreso i fondamenti dell’HTML e del CSS. L’HTML è alla base di tutto sul web, e può rompersi se viene gestito male da uno sviluppatore JavaScript troppo impaziente.

PHP vs JavaScript – Tabella di Confronto

PHP JavaScript
Scripting lato server Sceneggiatura lato cliente
Utilizzato sul back end Utilizzato sul front end (ora full stack con Node.js)
Si combina solo con HTML Combinato con più linguaggi
Parzialmente case sensitive Completamente case sensitive
Differenze di sintassi, ad es. # per i commenti ammessi Differenze di sintassi, ad esempio # per i commenti non ammessi
Variabili dichiarate con prefisso $ Variabili dichiarate con var o parole chiave let
Ha array associativi Nessun array associativo
Si integra con molti database Supporto di database scarso o inesistente
Multi-threaded Single-threaded
Veloce (se PHP 7.0 o superiore) Più veloce di PHP (di solito)
Usa i gestori di pacchetti PEAR e Composer Usa npm, Yarn e gestori di pacchetti Bower
Veloce da eseguire se la versione di PHP > 7.x Generalmente più veloce di PHP
Usato su circa l’80% dei siti web Usato su quasi tutti i siti web

 

Riepilogo

In questo approfondimento su PHP vs JavaScript, non c’è davvero un vincitore. Entrambi hanno i loro punti di forza e le loro debolezze.

PHP è stabile e affidabile, mentre JavaScript è diventato più di moda. Ma questo non significa che uno sia migliore dell’altro.

Qualunque sia quello che scegliete per il vostro prossimo progetto – e potrebbero essere entrambi! – se vi prendete il tempo di capire il linguaggio, potete essere sicuri che costruirete un sito web o un’applicazione che delizierà i vostri utenti.

Claire Brotherton

Claire Brotherton is a WordPress web developer, blog writer and accessibility advocate based in Edinburgh, Scotland. She works with businesses, nonprofits and entrepreneurs who are passionate about access and inclusion, and blogs regularly on her website, A Bright Clear Web. Tweet her at @abrightclearweb.