Le basi per imparare a programmare
Quando si inizia a cimentarsi con la programmazione, ci si ritrova davanti a molti interrogativi. Se non si ha esperienza, è difficile riuscire a capire subito come funzionano gli strumenti, quali metodi utilizzare e come districarsi tra i codici. Infatti imparare a programmare non è un'impresa facile, specialmente se ci si prefigge di apprendere le basi da autodidatta. In questo articolo vi chiariamo cosa serve per iniziare a programmare e per orientarsi tra codici, comandi e linguaggi di scripting.
Programmazione per principianti: la fase di ricerca e studio
Chi vuole imparare un linguaggio di programmazione deve leggere molto perché solo informandosi sui forum e sui libri si comincia a farsi una prima idea dell'argomento. Piano piano si comincerà ad assimilare i concetti essenziali, rivolgendosi ai forum esistenti per ogni linguaggio, dove sono già raccolte molte risposte alle più svariate domande o dove è comunque possibile saperne di più. Potete chiedere anche direttamente alla rispettiva community che in genere riesce a soddisfare la vostra brama di conoscenza. Vi consigliamo di annotarvi le vostre scoperte, in modo da creare un database personale di informazioni al quale accedere per risolvere più in fretta il problema e lavorare spediti.
Imparare a programmare: quali linguaggi esistono?
Una parte importante della fase iniziale di ricerca e orientamento consiste nel conoscere i linguaggi di programmazione esistenti e capire quale sia quello più adatto per realizzare il vostro progetto. Rientrano tra i più conosciuti e utilizzati:
- Java
- C
- C++
- C#
- Objective-C
- Python
- Visual Basic .NET
- PHP
- JavaScript
Ognuno di questi linguaggi presenta un diverso tipo di complessità, che renderà l'apprendimento del linguaggio scelto più facile o più difficile. Per questo è bene che sia chiaro sin dall'inizio il motivo per cui volete imparare a programmare: vorreste creare dei siti web? Siete interessati a sviluppare delle app per smartphone e tablet? O preferite forse programmare microcontrollori da inserire ad esempio nella vostra auto?
Programmare per il web
Se si vogliono creare dei siti o inventare un'applicazione web, è meglio cominciare dalle basi. I codici HTML e CSS non sono dei linguaggi di programmazione, ma costituiscono la base della maggior parte dei siti e dovrebbero per questo essere imparati per primi. Grazie all'HTML si creano gli elementi di un sito e si forma la struttura di base, poi con l'HTML5 è possibile arricchire le vostre pagine con file audio e video. Con i fogli di stile CSS (Cascading Style Sheets) si modella l'estetica di una pagina: tutte le proprietà degli elementi, come posizione o colore, sono stabilite in questo documento. Però con questi codici si creano solo delle pagine statiche, semplici ma funzionali. Una volta svolti questi primi passaggi, si può passare alla programmazione vera e propria. Per creare delle pagine dinamiche, si consiglia di cominciare con i linguaggi di scripting semplici come JavaScript, con il quale si possono impostare dei siti dinamici con la regolazione automatica delle dimensioni delle immagini o inserire semplicemente una galleria. PHP e SQL completano il quadro dei linguaggi di programmazione: PHP è un linguaggio di scripting open source che può essere integrato nei documenti HTML, mentre SQL è un linguaggio per i database con il quale si definiscono le strutture dei dati, si possono modificare e si interrogano le banche dati. Se si vogliono creare delle pagine più complesse, che prevedono ad esempio un'area utente, e si utilizza un CMS, un minimo di conoscenze di PHP e SQL sono indispensabili per facilitarvi il lavoro. Ovviamente qui sono stati esposti solo alcuni tra i molteplici linguaggi e script della rete. Però conoscendo i linguaggi HTML, CSS, JavaScript, SQL e PHP, si hanno le conoscenze essenziali per creare la maggior parte delle applicazioni web. Sul sito W3Schools.com si trova una ricca documentazione e tutorial su tutti gli script e i linguaggi citati, adatti anche ai principianti.
Programmare le applicazioni
Chi volesse programmare altre applicazioni come giochi, programmi di grafica o app, deve partire da altre basi. Assolutamente da conoscere sono i linguaggi C, C++ e Java, che hanno una sintassi simile e per questo chi ha già dimestichezza con C o C++, imparerà più facilmente Java. Per cominciare ad usare C, si consiglia la risorsa disponibile in rete sotto licenza Creative Commons, "Il linguaggio C: guida pratica alla programmazione 3^ edizione". In rete non mancano poi innumerevoli risorse gratuite per conoscere a fondo tutti i linguaggi, e tra questi segnaliamo l'ampia raccolta di Wikibooks.
App per iOS e OS X
Per programmare app e applicazioni per iPhone, iPad e altri dispositivi Apple si ricorre a Cocoa, che non è un linguaggio, bensì un'interfaccia di programmazione per il sistema operativo Apple Mac OS. Indispensabile per creare applicazioni per Mac e iOS è Xcode, un ambiente di sviluppo per Mac OS da utilizzare insieme a Cocoa. Si tratta in questo caso di un software per realizzare la grafica delle app, che si basa su linguaggi come Objective-C.
Apps für Android
Le app e le applicazioni per il sistema operativo Android sono scritte in Java. Grazie all'ambiente di sviluppo (IDE) Android Studio e al Java Development Kit di Oracle, unite alle proprie competenze, nascono così diverse app.
Imparare a programmare online
Oggigiorno chi sa programmare, ha una marcia in più da poter sfoggiare all'interno della propria azienda o nel momento in cui ci si candida per un posto di lavoro. Su Internet è possibile trovare molte risorse utili per riuscire a padroneggiare i linguaggi di programmazione e inoltre vengono offerti sempre più corsi online per imparare a programmare.
Code Academy
Code Academy offre dei corsi di programmazione interattivi, ad esempio per HTML, JavaScript e PHP. Non ci sono però solo corsi sui linguaggi di programmazione, ma se ne trovano anche altri su temi collegati, ad esempio su come creare siti web interattivi. Interessante è anche la scelta di Code Academy di offrire i suoi corsi gratuitamente.
- Lingua: inglese
- Requisiti: conoscenze di base
- Costi: nessuno
Udemy
La piattaforma online Udemy offre più di 40.000 corsi, che vanno dalla fotografia, passando per le lingue fino al design. Si trattano anche argomenti informatici, software e si spiega la programmazione di un sito con lezioni sia a pagamento sia gratuite. Ad esempio si trovano delle introduzioni gratuite a Java, HTML5 o PHP, mentre altri linguaggi di programmazione, altri corsi per creare app sui dispositivi mobili e per l'e-commerce sono disponibili a pagamento. E per gli imprenditori c'è anche un corso apposito di programmazione per le aziende.
- Lingua: inglese, ma ci sono anche corsi in italiano e in altre lingue
- Requisiti: a seconda del corso possono essere richieste conoscenze di base o meno
- Costi: corsi gratuiti, ma anche a pagamento a partire da circa 12 Euro
Code.org
Code.org è un portale online per principianti assoluti e per questo il migliore da cui cominciare. Ci sono innumerevoli tutorial con funzioni ludiche, che si basano ad esempio su famosi giochi online come Angry Birds. Su Code.org, un portale internazionale disponibile anche in italiano, si spiega la logica di base della programmazione. Gli utenti imparano a programmare grazie a giochi e all'assegnazione di piccoli compiti, durante i quali il codice creato rimane sempre visibile.
- Lingua: italiano, ma anche inglese
- Requisiti: adatto per i principianti assoluti
- Costi: nessuno
Molte possibilità per imparare a programmare
Chi ha scoperto quali linguaggi di programmazione e di scripting appartengono alla propria lista tra quelli da imparare, può contare su un'ampia selezione di tutorial online e altre preziose risorse. Non devono mancare anche un po' di pazienza, un computer e l'editor giusto. Tra gli editor c'è l'imbarazzo della scelta: i più comuni sono Notepad++ per gli utenti Windows, BBEdit e TextMate per Mac, mentre l'editor SublimeText funziona sia su Windows che su Mac. Particolarmente consigliato per i principianti è Brackets, disponibile anche in italiano. Per utilizzare i linguaggi come Java, C e gli altri della stessa famiglia, bisogna utilizzare un IDE (Integrated Development Environment), che comprende già un compilatore, come Eclipse, NetBeans, Visual Studie e XCode. I corsi online sono pratici e molto amati, ma non guasta anche controllare se ci sia qualche offerta a livello universitario, che accetta partecipanti esterni dietro pagamento di una quota.