3. 3/25
Hardware e Software
•Come sono strutturati i computer al loro interno?
•Le componenti presenti nel computer possono
essere suddivise in due categorie:
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
4. 4/25
Hardware e Software
•Come sono strutturati i computer al loro interno?
•Le componenti presenti nel computer possono essere
suddivise in due categorie:
•Hardware
•Software
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
5. 5/25
Hardware e Software
• Come sono strutturati i computer al loro interno?
• Le componenti presenti nel computer possono essere suddivise in due categorie:
• Hardware
• Le componenti “fisiche” di un computer
• Tutto ciò che è “collegato” al computer
• Software
• I “programmi”
• La componente “intangibile” del computer
• Quella che utilizziamo concretamente quando interagiamo con il PC
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
6. 6/25
Software
•Cosa è il software?
• I cosiddetti “programmi” che l’utente utilizza quando
interagisce con il PC
• Come possiamo classificarlo?
• In funzione dello scopo
• In funzione della tipologia di licenza
• In funzione della tipologia di installazione
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
7. 7/25
Software | Programmazione
• Facciamo però un passo indietro.
• Come si realizzano questi software?
• Il software si realizza con un’attività che prende il nome di
programmazione
• Come abbiamo studiato, già dai tempi della Macchina di Babbage
abbiamo imparato che le macchine possono essere programmate
• Programmare: impartire istruzioni , dire alla macchina che tipo di
operazioni deve compiere
• Programmare una macchina significa quindi imparare a
comunicare con la macchina, adottando un linguaggio
adeguato attraverso cui impartirle le istruzioni
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
8. 8/25
Programmazione
Per comunicare con la
macchina abbiamo
bisogno di individuare un
linguaggio comune
Ma qual è il
linguaggio delle
macchine?
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
9. 9/25
Linguaggio binario
•Il linguaggio delle macchine è il linguaggio
binario
•Comunicare con la macchina direttamente
in binario sarebbe un’operazione troppo
complessa e dispendiosa per l’uomo
•Nel corso del tempo, per facilitare l’attività
del programmatore è nato il concetto di
linguaggio di programmazione
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
10. 10/25
Linguaggio di programmazione
• Un linguaggio di programmazione è un linguaggio a tutti gli effetti, come
l’italiano, il latino, l’inglese, ecc.
• Ogni linguaggio è caratterizzato da:
• Una sintassi
• La sintassi definisce delle regole con cui costruire delle frasi del
linguaggio che siano corrette (ad esempio, in italiano, una regola
sintattica prevede che l’articolo debba concordare con il genere del
sostantivo)
• Una semantica
• La semantica definisce qual è il significato delle frasi
• Una frase può essere sintatticamente errata ma con una semantica ben
definita (esempio: “passami il bottiglia”)
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
11. 11/25
Linguaggio di programmazione
• Nei linguaggi di programmazione avviene la stessa cosa
• La sintassi definisce come dobbiamo impartire le istruzioni al computer
• La semantica definisce quale sarà il significato dell’istruzione (cosa il computer
“capirà dell’istruzione. Esempio: chiudi la finestra se premo sulla X, aprimi un
menu se faccio doppio click su un bottone, ecc.)
• Problema: uomo e macchina usano due linguaggi diversi. Come si può definire la
sintassi di un linguaggio di programmazione? Deve essere più vicina al linguaggio
della macchina (il binario) o più vicina a quella dell’uomo?
• I linguaggi di programmazione, in base alla differente sintassi, si dividono in due
categorie
• Linguaggi di alto livello
• Linguaggi di basso livello
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
12. 12/25
Linguaggio di programmazione
•I linguaggi di basso livello sono quelli con una
sintassi più vicina a quella della macchina
•I linguaggi di alto livello sono quelli con una
sintassi più vicina a quella dell’uomo
•I primi linguaggi di programmazione erano
tutti di basso livello. I linguaggi di
programmazione più moderni tendono a
essere tutti di livello alto.
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
13. 13/25
Esempi | Linguaggi di Programmazione
• Linguaggi di basso livello
• Assembly (1950) - Il primo linguaggio di programmazione
• Linguaggi di alto livello
• Fortran (1956) - Usato per applicazioni scientifiche
• Pascal (1971) - Linguaggio ancora oggi utilizzato per scopi
didattici
• C (1974) - Linguaggio utilizzato per lo sviluppo del software e dei
sistemi operativi
• Java (1995) - Utilizzato per realizzare applicazioni per dispositivi
mobili e per Internet
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
14. 14/25
Esempi | Linguaggi di Programmazione
Questi programmi scrivono sullo
schermo la scritta “ciao”. Si può notare
l’enorme differenza tra linguaggi di alto
e di basso livello!
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
15. 15/25
Software | Classificazione 1: lo scopo
• Software di produttività
• Word, Excel, Powerpoint
• Software multimediali
• Audio/Video Player (VLC, Windows
Media Player)
• Audio/Video Editing (Windows
Movie Maker, ecc.)
• Grafica e Fotoritocco (Gimp, Adobe
Photoshop, Paint)
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
17. 17/25
Software | Classificazione 2: la licenza
•Software licenziati
•Acquistati in negozio o via web sotto il rilascio di
una licenza, un codice che identifica la nostra
copia e prova l’acquisto del prodotto
•Software freeware
•Scaricati da Internet o installati dai CD/DVD che
possono trovarsi nelle riviste di informatica. Sono
programmi gratuiti, utilizzabili senza vincoli
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
18. 18/25
Software | Classificazione 2: la licenza
• Software shareware/demo
• Scaricabile da Internet o anche in questo caso da CD/DVD, si tratta
di software con delle limitazioni. Limitazioni temporali nel caso del
software shareware (generalmente dopo 15 o 30 giorni la licenza
scade ed è necessario acquistarlo) , limitazioni nelle funzionalità nel
caso delle demo. A volte le limitazioni possono essere combinate.
Per questi software è possibile scaricare una licenza d’uso
• Software open source
• Software gratuito, di cui viene messo a disposizione il codice
sorgente. Si tratta di sistemi che possono essere modificati a
piacimento (a patto di saperlo fare) e nuovamente rilasciati in forma
diversa o con più funzionalità
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
19. 19/25
Importante !
Non dimenticate la differenza tra freeware e
open-source
Quasi tutti gli Non tutti i
open-source freeware sono
sono freeware open source!
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
20. 20/25
Software | Open Source
• Quasi tutti i software commerciali esistenti hanno un equivalente open source o persino gratuito. Esempi:
• Browser
• Integrato con il sistema operativo: Internet Explorer
• Open Source: Mozilla Firefox , Google Chrome (http://www.google.com/chrome/)
• Fotoritocco
• A pagamento: Adobe Photoshop
• Open Source: The Gimp (www.gimp.org)
• Produttività
• A pagamento: Microsoft Office
• Open Source: Open Office (www.openoffice.org)
• Sistema Operativo
• A pagamento: Microsoft Windows , Mac Os
• Gratuito: Linux, nelle sue varie distribuzioni (http://www.ubuntu-it.org/)
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
21. 21/25
Software | Open Source (2)
• Quali sono i vantaggi del software open source?
• Il codice sorgente è liberamente disponibile. Dunque:
• Chiunque può modificare il sofware e renderlo
disponibile alla comunità.
• Modificare significa
• Aggiungere nuove funzionalità
• Eliminare errori
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
22. 22/25
Software | Open Source (3)
• Quali sono i vantaggi del software open source?
• E’ gratuito
• L’adozione del software libero può portare enormi vantaggi, ad esempio nella
Pubblica Amministrazione (scuole, uffici comunali, ecc.)
• Esempio:
• 1 licenza di Office costa 100 euro. 25 licenze costano 2500 euro. Utilizzando Open
Office invece di Microsoft Office le finanze della scuola risparmierebbero 2500
euro da reinvestire in altre attività :-)
• Recentemente sono nate numerose iniziative per spingere il software Open
Source
• Approfondimento
• Breve storia dell’open source: http://it.wikipedia.org/wiki/Open_source
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
23. 23/25
Software | Classificazione 3
• L’ultima classificazione riguarda in che modo il software viene installato sul PC
• Software integrati
• I software che si trovano già installati sul PC al momento dell’acquisto
• Software installati
• I software che si acquisiscono secondo una delle modalità viste in
precedenza e si installano successivamente
• Software non installati
• I software (detti “web-based”) che non si installano perchè sono
accessibili e utilizzabili attraverso un browser
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
24. 24/25
Applicazioni web-based
• Le applicazioni web-based rappresentano il futuro dei PC. La tendenza è quella di mettere a disposizione su Internet
versioni “semplificate” dei software in modo totalmente gratuito.
• Il vantaggio è quello di poter accedere ai propri dati da qualunque postazione collegata a Internet,
svincolandosi dal concetto di “computer”.
• Esempi
• Caselle di posta elettronica
• GMail (www.gmail.com), Hotmail (www.hotmail.it)
• Condivisione di documenti e oggetti multimediali
• PicasaWeb (http://picasaweb.google.it) , Google Docs (http://docs.google.com)
• Fotoritocco
• Picnik (http://www.picnik.com)
• Calendario
• Google Calendar (http://calendar.google.com)
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
25. 25/25
Applicazioni web-based | 2
• La diffusione delle applicazioni web-based è cresciuta tantissimo negli ultimi anni
• Se ci pensate, fino a un paio d’anni fa tutti questi servizi non esistevano!
• Questa tendenza si chiama “cloud computing” (tradotto: computazione, cioè calcolo, “sulle
nuvole”)
• Significa che quando utilizziamo queste applicazioni stiamo utilizzando qualcosa che non è
“fisicamente” sul nostro computer ma si tratta di servizi offerti
• Generalmente le compagnie (Google, Picnik) ci offrono gratuitamente servizi che altri
(pensiamo al confronto tra Office e Google Docs) ci offrono a pagamento.
• Perchè lo fanno? Cosa ci guadagnano?
• Google acquisisce informazioni sugli utenti, su cosa fanno, su come occupano il loro
tempo al PC. Queste informazioni vengono analizzate e vengono sfruttate per scopi
commerciali. Quando accettiamo la licenza d’uso di Google acconsentiamo a questo!
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto
26. Fine
Domande?
Laboratorio di Informatica - Liceo Classico “A.Oriani” (Corato) - A.S. 2010/2011 - docente: Cataldo Musto