Linguaggi di programmazione

C

Linguaggio C
Nato in ambiente universitario per merito di due ricercatori americani (Brian Kernighan e Dennis Ritchie), considerato un linguaggio di “medio” livello dagli esperti perchè con esso si possono affrontare e risolvere problemi sia a basso livello che più astratti e generali, il linguaggio C è diventato subito famoso perchè con esso è stato scritto il sistema operativo Unix, un sistema operativo, multitasking, multiutente e multiprocesso. Il C si caratterizza per la sua compattezza a livello di codice macchina, per le sue performance e per la sua estrema flessibilità nell’adattarsi ai problemi più disparati. Alcuni aspetti negativi sono talvolta un codice sorgente non facilmente leggibile e una notazione sintattica poco adatta ai principianti.

Java

Linguaggio Java
Il linguaggio di programmazione Java nacque nel 1991 inizialmente come parte di un progetto di ricerca per sviluppare un linguaggio di programmazione, chiamato “Oak,” che colmasse le lacune di comunicazione fra molti dispositivi di consumo, come per esempio la comunicazione fra i videoregistratori (VCRs) e le televisioni. Il progetto iniziale purtroppo naufragò ma il suo team di sviluppo (il Green Team) capì subito che il linguaggio di programmazione (battezzato poi Java come l’omonima località dove si produce anche una varietà di caffè) era perfetto per lo sviluppo di componenti web multimediali e per il potenziamento delle pagine Web. Queste piccole applicazioni, chiamate Applets, furono l’uso iniziale del linguaggio. Ora Java gioca un ruolo importante anche e soprattutto nello sviluppo di applicazioni server-side (con la tecnologia delle Servlet e delle JavaServer Pages).
Tra le caratteristiche più importanti del linguaggio di programmazione Java, ricordiamo le seguenti:
Orientato agli oggetti
Distribuito
Semplice
Multithreaded
Sicuro
Piattaforma-independente

Php

Php
Php (acronimo ricorsivo di “PHP: Hypertext Preprocessor”) è un linguaggio di programmazione lato server molto diffuso, facile da imparare, gratuito, con una sintassi simile al C. Php può essere usato su un’ampia varietà di sistemi (incluso Linux, molte varianti di Unix come HP-UX, Solaris e OpenBSD), Microsoft Windows, Mac OS X, RISC OS, e probabilmente molti altri. PHP ha anche il supporto per molti web server odierni. Questi includono Apache, Microsoft Internet Information Server, Personal Web Server, Netscape e iPlanet servers, Oreilly Website Pro server, Caudium, Xitami e OmniHTTPd. Fornisce supporto inoltre a molti database server come Mysql, probabilmente il più diffuso, ma anche Oracle, Postgres, ODBC ecc. Gli utenti possono inoltre accedere a mille altre funzionalità sotto forma di librerie messe a disposizione da una folta comunità di sviluppatori (ricordiamo ad esempio le librerie PEAR, http://pear.php.net).

Jsp

j2ee
In sintesi, Jsp [JavaServer Pages] è una tecnologia inclusa nella Java Platform Enterprise Edition [J2EE] per lo sviluppo di pagine web che includono contenuti dinamici. E’ possibile pertanto realizzare applicazioni web come siti di e-commerce, di catalogazione e contenuti personalizzati e internazionalizzati. All’alba dell’era del Web, i CGI [ i Common Gateway Interface] rappresentavano l’unico strumento a disposizione per lo sviluppo di contenuti web dinamici ma non risultavano efficienti a causa del fatto che il server doveva caricare in memoria un nuovo processo, caricare un interprete e uno script ed eseguire lo script; poi liberare tutte queste risorse. Questa procedura è molto pesante per il server e non è facilmente scalabile all’aumentare del traffico. Nel corso degli anni, diversi miglioramenti sono stati ideati, incluse tecnologie come FastCGI, mod_perl di Apache e le servlet di Java. Jsp rappresentano un miglioramento delle servlet, su cui si fondano, ma sono molto più semplici da usare ripetto alle servlet che invece richiedono personale tecnicamente preparato su Java.

C#

Visual Studio 2008 Express Logo
Il C# è un linguaggio di programmazione semplice, moderno, orientato agli oggetti progettato specificatamente per il .NET Framework. E’ stato pensato avendo in mente la potenza del C++ (ma è molto, molto più facile da imparare), la semplicità d’uso del Visual Basic e l’eleganza di Java, da cui mutua molti concetti e riuscendo sotto certi aspetti persino a superarlo.
Il .NET è in sintesi due cose: un “framework” e una “macchina virtuale”. Si immagini il framework come un contenitore di oggetti ognuno dei quali è adatto a svolgere determinati compiti. Questi oggetti, per facilitare il lavoro dello sviluppatore, sono organizzati in namespace (spazi dei nomi) e classi. Una “macchina virtuale” invece funziona come una CPU virtuale con un proprio linguaggio macchina e regole di gestione della memoria. I programmi scritti in C# vengono appunto tradotti nel linguaggio della CLR [Common Language Runtime], la macchina virtuale di .NET.