domenica 8 aprile 2018

Quale Linguaggio Di Programmazione Conviene Imparare?

Nonostante la grande varietà di linguaggi di programmazione disponibili, la maggior parte delle posizioni lavorative aperte richiede la conoscenza di uno (o più) tra i seguenti cinque linguaggi: Java, Javascript, C#, Python, PHP, C e C++.
Tuttavia ogni linguaggio di programmazione è più adatto di altri in un certo settore.
Ad esempio HTML/CSS e JavaScript per il lato client, ovvero l’interfaccia del sito.
Per il lato server, quindi per le varie operazioni a livello di database, la scrittura su file e tutte le operazioni più “classiche”, conviene imparare il PHP.


Applicazioni Matematiche, Fisiche, Chimiche e Ricerca
I linguaggi più adatti sono ancora il Fortran (77) e l’Algol perché dalla loro creazione è stato scritto ogni genere di programma matematico e quindi non è economicamente pensabile convertire tutto il codice già esistente per un altro linguaggio di programmazione.
Ad oggi esistono però molti applicativi (il più famoso di tutti è il Matlab) usati in ambito universitario che hanno potenzialità maggiori in termini di prestazioni e di rappresentazione grafica, ma rimangono solamente ad uso e consumo dei pochi interessati che studiano materie scientifiche/ingegneristiche. Molto usato anche il C++, Delphi, R e Python (ad oggi il linguaggio più usato per l'analisi di dati, grazie ad importanti librerie di matematica, fisica, ingegneria, GIS, machine learning, computer vision, scienza computazionale).


Applicazioni Mobili, Videogame, Smartwatch, Smart TV e Dispositivi Indossabili
Lo sviluppo di videogiochi avviene principalmente utilizzando il C++ (per i motori dei giochi, per gli strumenti audio e l'elaborazione di immagini) e in alcune occasioni (per migliorare la velocità della grafica) anche l’ostico Assembler (usato anche per i dispositivi indossabili).
Bisogna dire però che possono essere creati semplici videogiochi anche utilizzando il Java ed il Flash, anche se quest’ultimo non può essere considerato un vero linguaggio di programmazione.
Altri gettonati sono: Javascript (sia app ibride che native, sviluppo di software multipiattaforma e nell'Internet degli oggetti IoT), Java (Android), Kotlin (Android), C# (e il suo Unity 3D per i Videogames).
Objective-C sino a qualche anno fa era molto usato per la costruzione di applicazioni per OS X e iOS ed era lo strumento principale per gli sviluppatori per dispositivi iPhone e iPad, prima dell'avvento di Swift (usato anche per Smartwatch ed Smart TV).


Programmi Gestionali
La programmazione di database è implementata tramite Visual Basic e C/C++ anche su sistemi operativi Unix (o come si chiama ora, OpenServer) o Linux.
Per banche dati molto importante il PERL e SQL.
Anche il datato Cobol era molto usato.
La scelta su quale linguaggio usare è totalmente libera, bisogna però considerare quale sistema operativo useranno maggiormente i nostri clienti.


Big Data
Il re indiscusso è Java, infatti i principali strumenti di questo settore usano proprio questo linguaggio (Hadoop, HBase, Accumulo, ElasticSearch).
In rampa di lancio anche Scala.


Programmi per Windows
Oggi per creare un programma Windows esistono molti linguaggi, primo tra tutti il Visual Basic, i più famosi poi sono il Visual C++, C# (lanciato da Microsoft nel 2000), Delphi (l’evoluzione visuale del Pascal), Ruby e Java.


Programmi MultiPiattaforma
Java, pur con le sue pecche, permette di creare programmi che possono girare indistintamente su Windows, su Mac, su Linux, in remoto su pagine internet o, addirittura, su elettrodomestici o cellulari.
Il punto di forza di Java rimane la Java Virtual Machine che, una volta installata su una periferica o un sistema operativo permette di eseguire i programmi Java senza problemi legati all’hardware o alla diversa impostazione dei sistemi operativi.


Programmi di Apprendimento
Sono molto usati l’HTML, il Pascal e il C++.
Si può dire che questi linguaggi sono ottimi per imparare a programmare, soprattutto il Pascal, che rappresenta le basi della programmazione.


Sviluppo Siti Dinamici e Statici
Per lo sviluppo di siti dinamici (in HTML) si possono utilizzare molti linguaggi, come il Perl o l’Asp.
PHP è molto usato in tutti i siti web (ad esempio Facebook). La sua ubiquità e la distribuzione attraverso provider di hosting, oltre al la perfetta integrazione con il MySQL RDBMS e applicazioni di avvio hanno portato ad una massiccia domanda di sviluppatori web PHP in tutto il mondo.
Recentemente stanno emergendo anche Python (utilizzato dalla NASA, da Instagram, Reddit, Quora, pitnerest), Zope (che utilizza il Python) e Jsp, un linguaggio di scripting che utilizza le librerie di Java.
Ad esempio Netflix e LinkedIn implementano Java.
Javascript invece è usato per creare pagine interattive.


Sistemi Operativi
La programmazione di un sistema operativo richiede il controllo di tutte le risorse del computer e ciò è possibile solamente scrivendo il motore del sistema operativo nel linguaggio più vicino al linguaggio macchina, ovvero l’Assembler il quale però è estremamente difficile da imparare.
Per l’interfaccia utente si usa il C e il C++.


Di seguito invece alcuni siti che permettono di imparare a programmare online e in modo gratuito:
CodeAcademy
FreeCodeCamp
Udacity
Developer Mozilla
Pluralsight

2 commenti:

  1. Ciao, interessante.
    Io stavo pensando di imparare un linguaggio per reinserirmi nel mondo del lavoro cambiando totalmente ambiente,sono un fonico, mi interessa molto l'aspetto della comunicazione tra macchine che mi sembra possa essere gestita molto bene con Python, giusto?
    Inoltre mi puoi aiutare a capire se volessi programmmare software per catene di montaggio industriali cosa dovrei imparare? grazie

    RispondiElimina
    Risposte
    1. Ciao, si Python va bene...poi si tratta di un linguaggio molto moderno e per molte applicazioni web.
      A livello di montaggio industriale direi che dovresti specializzarti sull'Automazione...se poi il riferimento è anche all'IOT be i soliti C, C++, Java...

      Elimina