API e socket per lo sviluppo di applicazioni Web Based



Похожие документы
Maschere di sottorete a lunghezza variabile

SERVICE MANAGER. Architettura Client-Server e Web based di Servizi Specializzati per la Gestione di Periferiche e Connettività

Introduzione alle applicazioni di rete

Creare una Rete Locale Lezione n. 1

Lo scenario: la definizione di Internet

VMware. Gestione dello shutdown con UPS MetaSystem

Cenni di programmazione distribuita in C++ Mauro Piccolo

Architetture Informatiche. Dal Mainframe al Personal Computer

Architetture Informatiche. Dal Mainframe al Personal Computer

Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete

Introduzione ai Web Services Alberto Polzonetti

Registratori di Cassa

MODELLISTICA DI IMPIANTI E SISTEMI 2

Informatica per la comunicazione" - lezione 8 -

Reti di Telecomunicazione Lezione 8

TERM TALK. software per la raccolta dati

SIMULAZIONE PROVA SCRITTA ESAME DI STATO. PER LA DISCIPLINA di SISTEMI

PORTALE CLIENTI Manuale utente

Reti di Telecomunicazione Lezione 6

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale

Il web server Apache Lezione n. 3. Introduzione

Protezione. Protezione. Protezione. Obiettivi della protezione

InitZero s.r.l. Via P. Calamandrei, Arezzo

Il Web Server e il protocollo HTTP

Database e reti. Piero Gallo Pasquale Sirsi

DINAMIC: gestione assistenza tecnica

I Socket. Laboratorio Software M. Grotto R. Farina

Introduzione al sistema operativo Il file system: file, directory,...

Servizi Remoti. Servizi Remoti. TeamPortal Servizi Remoti

Determinare la grandezza della sottorete

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni server

GUIDA ALLA REGISTRAZIONE DI UN DVR SU

Mac Application Manager 1.3 (SOLO PER TIGER)

Architettura di un sistema operativo

TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI

3 Automazione Web-based con Saia S-Web

Reti di Calcolatori. Vantaggi dell uso delle reti. Cosa è una rete? Punto di vista logico: sistema di dati ed utenti distribuito

Piattaforma Concorsi Interattivi

martedì 17 aprile 12 1

Si applica a: Windows Server 2008

VIRTUALIZZAZIONE. Docente: Marco Sechi Modulo 1

Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento

J+... J+3 J+2 J+1 K+1 K+2 K+3 K+...

Istruzioni. Il cuore del dispositivo è un Embedded PC Linux che raccoglie e gestisce tutte le funzioni dell' apparecchiatura.

BDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software. Caratteristiche fondamentali. Linguaggi utilizzati. Navigazione 3D

Software di interfacciamento sistemi gestionali Manuale di installazione, configurazione ed utilizzo

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base

Situazione Attuale. Le persone svolgono molte operazioni ripetitive ed occupano il proprio computer per le elaborazioni..

LaCie Ethernet Disk mini Domande frequenti (FAQ)

Vlan Relazione di Sistemi e Reti Cenni teorici

Agent, porte, connettività e reti L agent di Kaseya utilizza la porta 5721 per comunicare con il server, ma che tipo di porta è?...

TERMINE SUPPORTO DA PARTE DI MICROSOFT DEL SITEMA OPERATIVO WINDOWS XP: 8 Aprile 2014

-Fig.1-

Modulo InWEB di InFarmaClick. Specifiche tecniche per l interfacciamento con i software gestionali di farmacia. Livello API 2005.

HTTP adaptation layer per generico protocollo di scambio dati

Accesso Remoto: Che cos'è Q uali programmi si utilizzano Come si effettua (teoria) Q uando è utile

Si tratta di un programma per la gestione della messaggistica ( , pec, posta interna, spedizione fax).

Proposta UNIF Progetto: Portale delle fonti di energia rinnovabile. Obiettivi

RETI INFORMATICHE Client-Server e reti paritetiche

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

Reti di Calcolatori: una LAN

Punto Vendita. OBS Open Business Solutions

Note di rilascio. Aggiornamento disponibile tramite Live Update a partire dal. Il supporto per Windows XP e Office 2003 è terminato

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Guida alla registrazione on-line di un DataLogger

RICEZIONE AUTOMATICA DEI CERTIFICATI DI MALATTIA 1.1. MALATTIE GESTIONE IMPORT AUTOMATICO 1.2. ATTIVAZIONE DELLA RICEZIONE DEL FILE CON L INPS

Zeroshell: VPN Lan-to-Lan. Il sistema operativo multifunzionale. creato da

Gui Gu d i a d ra r p a i p d i a V d o a d f a one Int fone In e t r e net rnet Box Key Mini

C Cloud computing Cloud storage. Prof. Maurizio Naldi

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain.

Soluzioni per ridurre i costi di stampa e migliorare i processi.

Lezione II: Web server e ambiente di lavoro

Software LMV per la gestione degli strumenti

INDIRIZZI IP AUTORIZZATI

Oreste Signore, Responsabile Ufficio Italiano W3C Area della Ricerca CNR - via Moruzzi, Pisa

InfiXor. il programma facile e versatile per preventivi veloci e completi. il software di preventivazione per produttori e rivenditori di infissi

INFO TECNICA SATO Italia

ISTRUZIONI PER L INSTALLAZIONE DEL PROGRAMMA PER L INVIO AUTOMATICO DELLE FATTURE VIA

Hardware delle reti LAN

ELENCO CLIENTI FORNITORI Patch1

Le presenti note vengono rilasciate per presentare le principali novità della release 2010 Sp1 di Contact Pro.

C O M P U T E R. GMapsInterface. Tecnologie e sistemi elettronici Periferica GPS/GSM. INTERNET ADSL Connect. Modem gsm SOFTWARE GESTIONE GPS/GSM

Dal protocollo IP ai livelli superiori

UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database

Introduzione alla Virtualizzazione

La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net. di Emanuele Mattei (emanuele.mattei[at] .

Presentazione Photo Agency

10.1. Un indirizzo IP viene rappresentato in Java come un'istanza della classe InetAddress.

Scenario di Progettazione

L amministratore di dominio

Overview su Online Certificate Status Protocol (OCSP)

UDP. Livello di Trasporto. Demultiplexing dei Messaggi. Esempio di Demultiplexing

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione

Rapporto tecnico sulle tipologie di agenti software definiti e implementati nell ambito del progetto

CitySoftware SEGRETERIA DELIBERE DETERMINE ALBO PRETORIO. Info-Mark srl

Транскрипт:

API e socket per lo sviluppo di applicazioni Web Based

Cosa sono le API? Consideriamo il problema di un programmatore che voglia sviluppare un applicativo che faccia uso dei servizi messi a disposizione dalla rete. Il più diffuso modo per sfruttare, all interno delle applicazioni scritte dai normali programmatori, le potenzialità offerte dalle reti di calcolatori è appoggiarsi alle API. Le API non sono altro che librerie software, in genere rese disponibili al pubblico da chi possiede una data tecnologia per rendere possibile la scrittura di applicazioni che sfruttino quella particolare tecnologia. Tra gli esempi più comuni di API possiamo citare le Windows API, diffuse gratuitamente da Microsoft per la creazione di programmi per Windows, e lo standard POSIX per i sistemi Unix-like come, ad esempio, Linux.

Cosa sono le API? L impiego di API comuni libera il programmatore dalla necessità di conoscere e gestire tutto quello che si trova al di sotto del livello dell applicazione in cui si trova ad operare. Il programmatore, nello sviluppo della proprio programma, si limita a richiamare le opportune funzioni implementante nel linguaggio di alto livello che ha scelto per creare l applicazione. Tali funzioni richiamano le API gestendo la comunicazione tra l applicazione e la rete in maniera automatica e del tutto trasparente per il programmatore.

Cosa sono le API? L azione svolta dalle API, a livello astratto, teorico, à quella di creare un interfaccia virtuale (network-application interface) che consente alle applicazioni installate sugli host della rete (sia lato client che lato server), di dialogare tra di loro sfruttando la rete. Le applicazioni, dal loro punto di vista non vedono la rete ma, semplicemente, dialogano con l interfaccia verso la rete che viene loro fornita dallo strato software definito dalle API.

Cosa sono le API? Language reference: Network Application Interface Communicate via the local host Client Server Router Really shouldn t matter to the application... A very simple pattern... But a very important pattern... Our key pattern For instance Echoing

Per poter impiegare le API necessitiamo di un astrazione software che ci consenta di impiegarle in maniera facile e immediata. Tale astrazione viene chiamata socket Sviluppate originariamente per i sistemi UNIX nel 1983 le API Socket sono diventate una standard de facto, implementate, con scarse differenze tra una versione e l altra, in quasi tutti i sistemi operativi ed i linguaggi di alto livello (i quali le rendono usabili ai programmatori fornendo le opportune funzioni per richiamarle). Le API Socket forniscono due tipi di servizi: Streams: consente l invio in maniera affidabile di una sequenza di bit Datagram: consente l invio in maniera non sicura di una sequenza di messaggi separati.

Affinchè un applicazione che sta girando su un terminale possa accedere alla rete ed ai servizi che la rete mette a disposizione, il codice interno dell applicazione dovrà richiamare una funzione che crei un socket, ovvero un accesso virtuale all interfaccia di rete. Il socket non esiste fisicamente... Si tratta semplicemente di un astrazione software. Ogni socket creato avrà una numerazione interna differente, in modo tale da garantire la possibilità di far girare più applicazioni contemporaneamente sullo stesso host.

Una volta creato il socket, esso può essere utilizzato da parte dell applicazione per richedere alla rete una serie di servizi. Ogni richiesta viene fatta mediante l invio di una direttiva che, tramite il socket, verrà processata dai livelli inferiori della rete e produrrà, dal punto di vista dell applicazione, una risposta.

Un esempio di comunicazione web based tramite primitive socketo potrebbe essere il seguente:

Il codice, dal punto di vista del Client, per realizzare lo scambio precedente, potrebbe essere il seguente:

Il codice per il server, invece, potrebbe essere il seguente:

Language reference Slightly deep view of... Data structure (...To let an application attach to the network...) Port number (...It provides a form of addressing... ) Dotted Communication end point bookkeeping Loop structure I wanna point out... A lot of problems that could arise if something doesn t go smoothly

Homework Try to answer the following questions What is the meaning of the acronym API? Using API we can have more than one application running on the same host and using the same network. How is this possible? Explain the meaning of the following API calls: socket, listen, connect, send, receive. In the final minutes of the video the speaker cites some programming languages. Try to guess them.