Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
Linguaggi di programmazione
END IF• Linguaggi descrittivi (SQL)Es: estrai dalla tabella Studenti quelli il cui cognome inizia per M (Sql)
SELECT Cognome
FROM Studenti
WHERE Cognome Like 'M%';
• Linguaggi orientati alle conoscenze(dipendono dalla piattaforma utilizzata)
Es: applica la regola 'se un cliente ha più di 40 anni e uno stipendio superiore a 60K€ allora ha un basso rischio di credito'
IF Età > 40 AND Stipendio > 60.000 THEN Rischio = Basso
(esempio ricavato da un algoritmo di classificazione della piattaforma di Data Mining Weka)
• Linguaggi orientati agli oggetti(C++, Java)
Sono più complessi da esemplificare. Si basano su un approccio che consente di definire oggetti software in grado di interagire attraverso lo scambio di messaggi. Tali oggetti (classi) sono descritti da strutture dati (attributi) e procedure (metodi) ad essi applicabili. Un esempio di oggetto aziendale può essere una fattura, descritta da una struttura dati e dai trattamenti ai quali è sottoposta.
può essere sottoposta.
Programmi traduttori
Le istruzioni scritte in un linguaggio di programmazione di alto livello (ovvero vicino all'linguaggio umano) come quelli descritti, richiedono di essere tradotte in codice macchina (sequenze di 0 e 1) per essere eseguite sotto la supervisione di un particolare sistema operativo.
Ne consegue (nota bene) che tale processo di traduzione, sarà specifico per le diverse piattaforme operative (Windows, MacOS, Linux, Unix ecc.).
I programmi traduttori possono essere classificati in:
- Compilatori: Traducono l'intero programma (detto codice sorgente) in linguaggio macchina, generando il cosiddetto eseguibile (detto codice oggetto) nel quale risultano integrate le necessarie funzionalità di sistema operativo. A seguito di questa operazione, il programma applicativo può essere memorizzato nella piattaforma operativa target per essere eseguito senza ulteriori interventi.
- Codice sorgente: è un file contenente un insieme
di istruzioni scritte in un linguaggio di programmazione che, per essere eseguite, devono essere tradotte da un programma traduttore.
Il codice sorgente può essere letto, corretto o modificato.
Codice oggetto: è un file contenente la traduzione del codice sorgente in linguaggio macchina (binario), comprensibile solo all'elaboratore. Il codice oggetto è generato automaticamente da un programma traduttore ed è immodificabile.
- Interpreti
A differenza dei compilatori non generano alcun codice oggetto archiviabile per l'esecuzione. Ogni istruzione del codice sorgente viene interpretata ed eseguita singolarmente ogni volta che l'utente lancia il programma.
Vantaggi: eventuali modifiche del codice sorgente non richiedono una nuova compilazione per la rigenerazione del codice oggetto.
Svantaggi: esecuzione più lenta rispetto ai compilatori.
Tendenze infrastruttura software
Open source (software libero)
È una filosofia che promuove
l'accesso di sviluppatori e utenti alla sorgente di un prodotto o di un'idea. Il movimento open source (https://opensource.org) si è diffuso con l'avvento di Internet, che ha consentito a individui di ogni parte del mondo di collaborare nello sviluppo e nel miglioramento di sistemi operativi e software applicativo, grazie al libero accesso al codice sorgente. Il software rilasciato con una licenza che permette a chiunque di utilizzarlo per le sue caratteristiche, si contrappone al software proprietario ed è differente dalla concezione open source, incentrandosi sulla libertà dell'utente e non solo sull'apertura del codice sorgente. Un software libero deve garantire quattro "libertà fondamentali": - Libertà di eseguire il programma, per qualsiasi scopo (libertà 0). - Libertà di studiare come funziona il programma e adattarlo alle proprie necessità (libertà 1). L'accesso al codice sorgentesorgente è un prerequisito. Libertà di ridistribuire copie in modo da aiutare il prossimo (libertà 2). • Libertà di migliorare il programma e distribuirne pubblicamente i miglioramenti, in modo tale che tutta la comunità ne tragga beneficio (libertà 3). L'accesso al codice sorgente è un prerequisito. Infrastruttura di comunicazione Uno dei motivi per i quali i sistemi informativi nelle organizzazioni sono diventati così importanti è la capacità di interconnessione, che consente ai componenti interni ed esterni di comunicare e collaborare. L'infrastruttura che consente tutto ciò è costituita dall'hardware e dal software di rete. Una rete informatica è la condivisione di informazioni o servizi. Come nel caso della comunicazione umana, sono richiesti tre elementi: un computer mittente e uno destinatario che abbiano qualcosa da condividere; • un mezzo o linea dicomunicazione per l'invio del messaggio (cavi fisici o tecnologia wireless); un protocollo che definisca le regole della comunicazione tra il mittente e il destinatario (modalità e standard adottati dai computer nella comunicazione). Reti di computer La velocità di trasmissione dei dati sulla rete, indicata come ampiezza di banda nelle comunicazioni digitali, è misurata in Mbps (milioni di bit per secondo) o Gbps (miliardi di bit per secondo). Le tipiche reti locali hanno ampiezza di banda compresa tra 10 e 100 Mbps ma possono arrivare anche a 1Gbps e oltre. Per avere un'idea dei tempi, si pensi che la trasmissione di un testo di 2Mb (come quello in adozione) su una rete a 10Mbps richiederebbe un tempo pari a 1,6 secondi. Server, client e peer Una rete è costituita da tre componenti distinti: server, client e peer. Un client è un computer che può solo richiedere servizi ad un server. Un server è un computer che erogaServizi a più client. Un peer è un computer che può comportarsi da client e da server, richiedendo o erogando servizi.
Tipi di reti. Le reti sono classificate in base alla dimensione, alla distanza coperta e alla struttura. Per connettere tra loro reti diverse si utilizzano dei dispositivi detti router. I router domestici incorporano funzionalità di access point per accedere alla rete Internet.
Mezzi di trasmissione. Ogni rete può utilizzare uno o più mezzi di trasmissione per inviare messaggi sotto forma di onde elettromagnetiche (flussi di corrente elettrica). La trasmissione via cavo viene presa in considerazione quando la mobilità non costituisce un problema e la larghezza di banda rappresenta un requisito cruciale. Nelle trasmissioni wireless i segnali elettromagnetici sono trasmessi e ricevuti utilizzando mezzi quali i raggi infrarossi, la trasmissione radio ad alta frequenza (WiFi, BlueTooth, telefonia cellulare), i sistemi a microonde.
terrestri o satellitari (Gps).Internet e il protocollo TCP/IP
L'idea di Internet (il cui nome deriva da internetworking, termine che sta a significare l'interconnessione di diversi computer in modo da formare reti sempre più estese) si sviluppa a partire dal 1969 nell'ambito di un progetto del dipartimento della difesa americano.
Nasce così ARPANET (Advanced Research Projects Agency Network), una rete geografica (WAN) che collegava università e centri di ricerca e, nel 1974, il protocollo TCP/IP (Transmission Control Protocol/Internet Protocol).
Internet si affida alla tecnologia denominata a commutazione di pacchetto (packet switching) per trasmettere i dati e le informazioni tra le reti.
A differenza della rete telefonica dove una specifica linea fisica viene dedicata alla comunicazione tra un mittente e un destinatario (commutazione di circuito o circuit switching), la commutazione di pacchetto (packet switching) si basa su un concetto di comunicazione
aturno e consente a milioni di utenti di inviare dati su Internet in contemporanea.
Rete telefonica fissa
La commutazione di circuito
A due utenti comunicanti viene assegnato un circuito (circuito fisico effettivo o porzione di banda) per tutta la durata del collegamento e nessun altro utente può utilizzarlo in quel periodo.
Protocollo Internet TCP/IP
La commutazione di pacchetto
I computer A e B utilizzano la commutazione di pacchetto (ovvero un invio a turno temporizzato) per inviare messaggi o file ai computer C e D. L'instradamento dei messaggi tra i diversi computer è reso possibile perché ad ogni dispositivo connesso a Internet viene assegnato un indirizzo IP univoco (quattro numeri separati da un punto, ad es. 193.168.1.23).
Per facilitare utenti e applicazioni, all'indirizzo di rete viene normalmente associato un nome di dominio (ad es. www.miodominio.it o luca@miaposta.it). Tale associazione è effettuata tramite il servizio DNS (Domain Name System).
che funziona grazie ad un database distribuito a livello mondiale nel quale sono presenti tutte le associazioni tra domini e indirizzi IP. Il World Wide Web (WWW) Una delle applicazioni più popolari di Internet è il World Wide Web, un sistema di distribuzione di documenti sulla rete creato intorno al 1990 presso il CERN di Ginevra dal ricercatore Tim Berners Lee, pensato per supportare le ricerche degli scienziati di fisica delle particelle grazie alla condivisione di dati e informazioni. Nel 1993 il CERN decise di rendere pubblica la tecnologia alla base del Web e nacque così il primo browser dal nome MOSAIC per opera dell'università dell'Illinois (NCSA). La nascita del Web portò ad un notevole sviluppo di Internet grazie all'introduzione dell'ipertesto. Un documento ipertestuale, noto come pagina web, contiene non solo informazioni ma anche collegamenti ipertestuali ossia riferimenti (link) ad altri documenti. Il formato delle pagine webè definito mediante un linguaggio noto come HTML (HyperText Markup Language). La sua evoluzione, in chiave di complementarietà, è il linguaggio XML (eXtensible Markup Language) in grado di gestire formati, tipi di informazioni e relazioni più complessi rispetto a HTML. Le pagine web sono memorizzate su server web che elaborano le richieste degli utenti mediante il protocollo HTTP (HyperText Transfer Protocol) o HTTPS (HTTP Over Secure Socket Layer) per comunicazioni sicure. Per connettersi ad un sito web un browser deve conoscere il suo indirizzo URL (Unique Resource Locator), costituito da protocollo, nome host ovvero del server (che comprende il nome di dominio il quale, a sua volta, è associato ad un indirizzo IP), percorso della risorsa da recuperare (che comprende la directory e il file da recuperare). Architettura del Web Il Web utilizza i browser web, i server web e il protocollo di rete TCP/IP per agevolare la comunicazione tra client e server.