Strumenti Utente

Strumenti Sito


unita_c1

unità C1 - Informatica: evoluzione e software

Premessa: il tema di questa unità è l'evoluzione dell'informatica, sia dal punto di vista dell'hardware che del software. Questo argomento, molto importante per gli studenti dell'indirizzo Informatica, interessa solo marginalmente gli studenti diElettronica. Per questo motivo la sua trattazione su questi appunti sarà molto veloce.

C1.1 Informatica ed energia

L'informatica studia l'elaborazione automatica delle informazioni.

In questa definizione:

  • informazioni significa un insieme di dati
  • elaborazione significa trasformazione dei dati
  • automatica significa senza l'intervento dell'uomo

C1.2 L'evoluzione dell'informatica

Fin dall'antichità sono state costruite macchine in grado di aiutare, e in seguito sostituire, l'uomo nell'elaborazione delle informazioni. Ad esempio per eseguire calcoli matematici si è passati dall'abaco alle calcolatrici meccaniche di Pascal e Leibnitz. In seguito si è ipotizzato di creare delle macchine programmabili il cui comportamento poteva essere modificato per svolgere compiti diversi. La realizzazione di queste macchine non è stata possibile fino all'avvento dell'elettronica quando, utilizzando le valvole termoioniche, sono stati costruiti i primi computer:

  • il Colossus, costruito dagli inglesi al termine della seconda guerra mondiale per decifrare il codice Enigma utilizzato dai nazisti
  • l'ENIAC, utilizzato negli Stati Uniti per calcoli balistici

Questi primi computer avevano molti difetti:

  • erano enormi e costosissimi
  • consumavano moltissimo
  • si rompevano in continuazione
  • venivano programmati utilizzando schede perforate o spostando interruttori

Negli anni successivi l'enorme progresso nel campo dell'elettronica ha rivoluzionato il mondo dei computer:

  • i transistor hanno sostituito le valvole permettendo di ridurre costi, ingombri e consumi e aumentando l'affidabilità
  • i supporti magnetici (dischi e nastri) sono stati utilizzati per memorizzare grandissime quantità di dati in poco spazio
  • i circuiti integrati (chip) hanno permesso di miniaturizzare i componenti elettronici e diminuire drasticamente il costo dei dispositivi elettronici

I computer, un tempo prodotti in esemplari unici ed utilizzati solo in ambito militare, sono diventati prodotti commerciali introdotti prima nelle aziende e nelle istituzioni e infine, dagli anni '80, nelle nostre case con i personal computer.

C1.3 I linguaggi informatici

Un algoritmo è il procedimento con cui si risolve un problema. Un algoritmo può essere espresso con un linguaggio di programmazione per essere eseguito da un computer; questa operazione si chiama codifica.

Si distingue tra linguaggi di programmazione:

  • di basso livello, come il linguaggio macchina fatto di soli 0e 1 e direttamente eseguibile dal computer o come il linguaggio assembly, che sono difficilmente interpretabili dalle persone
  • di alto livello, più simili al linguaggio umano ma che devono essere tradotti o interpretati per essere eseguiti dal computer (ad esempio Java, C, Pascal, C#, Python)

C1.4 L'evoluzione dei linguaggi di programmazione

I primi computer venivano programmati in linguaggio macchina o in assembly. In seguito hanno preso piede i linguaggi di alto livello, in particolare:

  • il Fortran per le applicazioni scientifiche
  • il Cobol per quelle finanziarie
  • il C per i sistemi operativi
  • Pascal e Basic per la didattica
  • C++, C# e altri per le applicazioni desktop
  • Java e Objective-C per gli smartphone
  • Java, Javascript, PHP, Python e altri per le applicazioni web

C1.5 Le fasi di creazione di un programma

Il codice sorgente è un normale file di testo e contiene la serie di istruzioni che formano il programma. Per ottenere il programma eseguibile sul computer bisogna usare un programma detto compilatore che traduce il codice sorgente nel linguaggio macchina.

C1.6 Gli ambienti di sviluppo

I programmatori utilizzano:

  • gli IDE o ambienti di sviluppo integrati, un tipo di software che permette di scrivere, compilare e testare agevolmente i programmi
  • i framework, che permettono di creare rapidamente del software riutilizzando codice già scritto per realizzare quelle funzioni comuni a tutti i programmi
  • gli SDK (pacchetti di sviluppo per applicazioni), che contengono tutti gli strumenti per sviluppare del software per una certa piattaforma (ad es. SDK Android, SDK iOS)

C1.7 Ciclo di vita del software

Ci sono varie fasi nella realizzazione di un software: pianificazione → analisi → progettazione → codifica → debug → installazione → manutenzione

Torna all'indice.

Questo sito Web utilizza i cookie. Utilizzando il sito Web, l'utente accetta la memorizzazione dei cookie sul proprio computer. Inoltre riconosci di aver letto e compreso la nostra Informativa sulla privacy. Se non sei d'accordo, lascia il sito.Maggiori informazioni sui cookie
unita_c1.txt · Ultima modifica: 2020/07/03 15:56 da 127.0.0.1