|
|
(262 versioni intermedie di 20 utenti non mostrate) |
Riga 1: |
Riga 1: |
− | <!-- Allo staff: mi son portato avanti cominciando ad abbozzare la pagina :). Ho copiato e incollato la formattazione dal corso di bioinformatica per la specialistica -->
| + | {{introduzione}} |
| + | == Turni == |
| + | {{Turno|(Claudio Bettini)}} |
| | | |
− | == Mobile Computing, anno 2005/2006 == | + | == A.A. passati == |
| + | {{Annipassati|2006-2007|(Claudio Bettini)}} |
| + | {{Annipassati|2005-2006|(Claudio Bettini)}} |
| | | |
− | '''Mobile Computing''' è un corso complementare aperto alle lauree triennali e specialistiche.
| + | == Informazioni == |
| | | |
− | === Docenti === Claudio Bettini | + | === Docenti=== |
− | e-mail: mailto:bettini@dico.unimi.it
| |
| | | |
− | Pagina personale: [http://homes.dico.unimi.it/~bettini/ qui] | + | * Prof. Claudio Bettini |
| + | ** Email: bettini [AT] dico [DOT] unimi [DOT] it |
| + | ** Pagina personale sul DICo: http://homes.dico.unimi.it/~bettini/ |
| + | * Collaborazione di Daniele Riboni |
| + | ** riboni [AT] dico [DOT] unimi [DOT] it |
| | | |
− | === Orari delle lezioni === | + | === Modalità d'esame === |
| | | |
− | {| border=1
| + | * L'esame consiste in un test scritto durante il corso sugli argomenti affrontati (o alternativamente in un orale durante gli appelli) e nella realizzazione, presentazione e discussione di un progetto (che richiede programmazione su dispositivo e lato server). |
− | ! Martedì!! Venerdì
| + | * Informazioni dettagliate sullo svolgimento del progetto si trovano sulla pagina del corso |
− | |-
| |
− | | 15:45-17:15 Aula Alfa|| 09:00-10:30 Aula Alfa
| |
− | |}
| |
| | | |
− | === Orario di ricevimento dei docenti === | + | === Prerequisiti al corso === |
| | | |
− | Non è stato chiarito mi pare,quindi mandate una mail per appuntamento.
| + | * Indicato principalmente per studenti della laurea magistrale. Ammessi anche gli iscritti al terzo anno della triennale |
| + | * Esami di Programmazione (Java preferibilmente) e Sistemi operativi verbalizzati |
| + | * Nozioni di Reti di calcolatori e di Basi di dati (almeno corsi seguiti) |
| | | |
− | === Sito del corso === | + | === Giudizio sul corso === |
| + | {{Giudizio}} |
| + | {{Giudizio/Interesse}} |
| + | {{Giudizio/Difficoltà}} |
| + | {{Giudizio/Nonfrequentanti}} |
| + | {{Giudizio/Ore}} |
| | | |
− | Se andate [http://webdid.usr.dico.unimi.it/mobicomp/ qui] trovate il programma del corso e il materiale didattico,per cui si deve disporre della password.
| + | [[Categoria:Corsi Primo Semestre]] |
− | | |
− | === Materiale didattico ===
| |
− | | |
− | * Slides sul sito;
| |
− | * Libro: M. Mallick, ''Mobile and Wireless Design Essentials'', Wiley Technology Publishing, 2003.
| |
− | | |
− | === Modalità d'esame e prerequisiti ===
| |
− | | |
− | * E' utile avere almeno seguito i corsi di reti di calcolatori e basi di dati;
| |
− | * Si richiede la '''verbalizzazione''' dell'esame di informatica generale e programmazione java e dell'esame di Sistemi operativi: la questione non è burocratica ma atta a disincentivare la frequenza del corso a chi nn possiede certe conoscenze di base;
| |
− | * La penultima lezione ci sarà un compitino e nell'ultima la presentazione di un progetto,che andrebbe risolto e discusso entro un anno dalla presentazione;
| |
− | ** la validità dello scritto è permanente;
| |
− | ** in alternativa al compitino uno può decidere di fare lo scritto e poi portare il progetto,discuterlo e fare l'orale;
| |
− | * I probabili linguaggi di programmazione e mark-up usati saranno:
| |
− | ** XML;
| |
− | ** XSLT;
| |
− | ** HTML;
| |
− | ** C#.NET
| |
− | ** JAVA;
| |
− | ** probabilmente anche SQL o ASP per interazioni server/database;
| |
− | | |
− | == Diario del corso ==
| |
− | | |
− | === Lezione di Martedì 4-10-05 ===
| |
− | | |
− | '''Argomenti trattati nella lezione di oggi''':
| |
− | | |
− | * Abbiamo visto a grandi linee l'evoluzione dell'hardware ,che ha portato a:
| |
− | ** riduzione delle dimensioni delle macchine;
| |
− | ** evoluzione rapporto persona/macchina (molte persone singolarmente lavorano con un calcolatore,per approdare ai PC e infine più macchine al servizio di una sola persona);
| |
− | * Evoluzione di Internet;
| |
− | | |
− | Abbiamo definito:
| |
− | | |
− | * Traditional Computing;
| |
− | * Mobile Computing;
| |
− | * Pervasive Computing;
| |
− | * Ubiquitous Computing;
| |
− | * Disappearing Computing;
| |
− | | |
− | Il Mobile Computing,per sua natura,è e sarà oggetto di forti novità e sviluppo,sia per quanto riguarda sistemi operativi,linguaggi,protocolli,architetture,algoritmi ed interfacce;</BR>
| |
− | Parimenti presenta altresì difficoltà non indifferenti,quali la rapida evoluzione con il conseguente invecchiamento precoce delle tecnologie,notevole competizione,sistemi operativi immaturi e instabili e una grande eterogeneità hardware,software e di protocolli in circolo.
| |
− | | |
− | Abbiamo visto le sue applicazioni a livello lavorativo/aziendale/quotidiano e i ruoli professionali coinvolti in questo settore.
| |
− | | |
− | ----
| |
− | | |
− | === Lezione di Venerdì 7-10-05 ===
| |
− | | |
− | Abbiamo trattato la classificazione dei dispositivi secondo certe caratteristiche:
| |
− | | |
− | * I/O: schermo,touchscreen,tastiera,slot di espansione,ecc..
| |
− | * Connettività: globale,locale;
| |
− | * Risorse di calcolo: CPU,RAM,ecc..
| |
− | * Autonomia: batteria;
| |
− | * Supporto applicazioni: JVM,.NET Compact Framework,ecc..
| |
− | * Supporto multimediale: audio,video,ecc...
| |
− | | |
− | Abbiamo visto le caratteristiche dei '''PDA'''(Personal Digital Assistent):
| |
− | | |
− | * orientati alla gestione/scambio di dati;
| |
− | * supporta solo connettività locale;
| |
− | | |
− | '''PDA-phones''':
| |
− | | |
− | * supporto UMTS per scambio dati;
| |
− | * risorse di calcolo inferiori ai PDA;
| |
− | | |
− | '''Blackberry''':
| |
− | | |
− | * frequentemente utilizzati in USA;
| |
− | * usato molto e principalmente per e-mail;
| |
− | * ha una tastierina;
| |
− | | |
− | '''Tablet PC''':
| |
− | | |
− | * più vicini ai laptop che ai dispositivi mobili;
| |
− | * riconoscitore vocale e di scrittura;
| |
− | * costo elevato;
| |
− | * connessione locale integrata;
| |
− | * SO microsoft: il costo elevato e la mancanza di applicazioni utili non ha fatto decollare il loro sviluppo,deludendo Micro$oft(n.d.A.);
| |
− | | |
− | * Esempio di utilizzo di PDA-phones con riconoscimento vocale in aula;
| |
− | | |
− | * <u>analisi dei dispositivi in termini di vendite sul mercato</u>:
| |
− | ** frammentazione del mercato;
| |
− | ** assenza di un leader dominante;
| |
− | ** frequenti novità;
| |
− | ** convergenza tra PDA e smart-phones;
| |
− | ** supporto navigazione GPS,suite Office,ecc..
| |
− | ** si riduce il numero di Sistemi operativi e di piattaforme di sviluppo;
| |
− | | |
− | * Introduzione ai '''sistemi operativi''':
| |
− | | |
− | * differenze tra quelli generici e quelli per mobili;
| |
− | ** molto importante l'aspetto di risparmio delle risorse.
| |
− | * I più usati:
| |
− | *# PalmOS(più stabile secondo il prof);
| |
− | *# SymbianOS (orientato alla telefonia);
| |
− | *# Windows Mobile( - stabile);
| |
− | *# OS in java e Linux: percentuali ridotte sul mercato;
| |
− | | |
− | ----
| |
− | | |
− | === Lezione di Martedì 11-10-05 ===
| |
− | | |
− | * Osservazione dell'architettura dei sistemi operativi per mobili,in particolare:
| |
− | *# Windows Mobile;
| |
− | *# PalmOS
| |
− | *# Symbian
| |
− | * Descrizione delle caratteristiche delle tecnologie Bluetooth,IR e Wifi, e delle reti che la utilizzano,ossia WLAN e WPAN;
| |
− | | |
− | ----
| |
− | | |
− | === Lezione di Venerdì 14-10-05 ===
| |
− | | |
− | Pre-lezione: si è speso qualche parola in merito agli scioperi degli insegnanti riguardo la protesta su D.legisl. della Moratti:
| |
− | * [http://www.repubblica.it/2005/f/sezioni/scuola_e_universita/scioperofame/scioperofame/scioperofame.html Repubblica]
| |
− | * Posizione ricercatori DICO,ecc.. [http://www.sl-lab.it/cgi-bin/twiki/view/Main/DDLMoratti qui]
| |
− | | |
− | '''Reti geografiche wireless'''
| |
− | | |
− | * GSM: tre componenti principali:
| |
− | *# Mobile station(telefonino e SIM);
| |
− | *# BSS (Base Station Subsystem): a livello di cella,handover;
| |
− | *# Network Subsystem: realizza la comunicazione fra stazioni-mobili o fra mobili-mobili;
| |
− | | |
− | * Visione delle bande usate in europa e america,divisione dei canali in frequenze,uso degli slot di tempo;
| |
− | * evoluzione porta ad aumentare la banda di trasferimento dei dati,poichè GSM assolve il suo dovere per quanto riguarda la voce ma non per i dati(lentezza,costo);
| |
− | * HSCSD: circuit switched;
| |
− | * GGSN;
| |
− | | |
− | ----
| |
− | | |
− | === Lezione di Martedì 14-10-05 ===
| |
− | | |
− | * Descrizione dello stack di protocolli WAP,con raffronto al TCP/IP per la sua comprensione;
| |
− | | |
− | ----
| |
− | | |
− | === Lezione di Martedì 25-10-05 ===
| |
− | | |
− | * confronto fra architetture thin client e smart client;
| |
− | '''N.B.: la lezione di venerdì tratterà la programmazione lato server per queste architetture'''
| |
− | | |
− | ----
| |
− | | |
− | === Lezione di Venerdì 28-10-05 ===
| |
− | | |
− | * Meccanismi di richiesta dati da client a server,e sua risposta tramite due metodi principali:
| |
− | *# Uso di [http://it.wikipedia.org/wiki/CGI CGI] e simili: viene eseguito un processo separato per ogni richiesta, l'output del programma viene rispedito in rete al client;
| |
− | '''N.B.:'''CGI non è nè un protocollo di comunicazione nè tanto meno un linguaggio, ma un sistema per definire delle variabili d'ambiente utilizzate dai processi; posso utilizzare i linguaggi che voglio, fra i più utilizzati troviamo ''perl'';
| |
− | *# Uso di server [http://it.wikipedia.org/wiki/Application_programming_interface API]: si usano librerie dinamiche linkate al codice del server ed eseguito come un tutt'uno. Abbiamo vere e proprie applicazioni client e server. Il server non è iterativo ma multiconcorrente, più thread (processi leggeri) vengono lanciati per ogni richiesta;
| |
− | * Abbiamo visto cosa sono:
| |
− | ** [http://it.wikipedia.org/wiki/Servlet Java Servlet]: sono qualcosa di simile alle applet ma eseguite server-side;
| |
− | ** JSP (Java Server Page): le richieste di questi file producono la loro compilazione in una servlet;
| |
− | vedi [http://forum.java.sun.com/forum.jspa?forumID=45 forum] della sun per chiarimenti;
| |
− | ** [http://www.php.net PHP]: può essere usato per
| |
− | *## Server-side scripting
| |
− | *## Command line scripting
| |
− | *## Client-side GUI applications
| |
− | Tutorial su Java Servlet e JSP: [http://java.sun.com/products/jsp/docs.html qui]<br>
| |
− | Sito Apache: [http://www.apache.org/ qui]<br>
| |
− | Guida su Apache: [http://freephp.html.it/guide/lezioni.asp?idguida=6 HTML.it]<br>
| |
− | Installazione modulo PHP su Apache: [http://openskills.info/topic.php?ID=89 qui]
| |
− | Guida ad IIS: [http://www.html.it/iis/01.htm qui]
| |
− | PHP: [http://www.php.net/downloads.php download Zip package]
| |
− | | |
− | ----
| |