178 resultados para XCSubd refactoring fltk librerie grafiche


Relevância:

10.00% 10.00%

Publicador:

Resumo:

Negli ultimi decenni abbiamo assistito ad una graduale evoluzione delle interfacce utente e della tecnologia. Sono stati introdotti nuovi dispositivi mobile e wearable che negli ultimi anni hanno subito un incremento tecnologico esponenziale arrivando a fondersi con la vita di tutti i giorni. Le classiche interfacce grafiche WIMP, la metafora del desktop e le linee guida di progettazione fino ad ora sviluppate non risultano ideali per la nuova tecnologia di wearable computing. Il proposito che la tesi vuole andare ad affrontare è proprio quello di indagare lo sviluppo di nuove user inteface basate sulla tecnologia wearable ed in particolare per smart glasses.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

La tesi analizza lo stack di comunicazione Bluetooth e le possibili estensioni di TuCSoN per permettere il suo utilizzo. Come risultato di questo lavoro, sono state realizzate delle librerie software che permettono lo scambio di messaggi tra TuCSoN su Android e dispositivi Bluetooth.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Dopo una breve introduzione sulla realtà aumentata (definizione, storia e stato dell’arte) viene effettuata un'analisi delle librerie esistenti per l’implementazione su dispositivi mobile. Considerando compatibilità con i recenti SO, frequenza degli aggiornamenti, costi per le licenze e funzionalità offerte viene scelta la libreria Vuforia, originariamente sviluppata da Qualcomm e poi acquistata da PTC inc. Si conviene poi che le apps basate su realtà aumentata creano il contenuto “aumentato” in due maniere: o tramite riconoscimento di una specifica immagine oppure tramite localizzazione GPS. Di questi due metodi descritti, il primo risulta molto più affidabile e per questo viene sviluppata una app che crea un contenuto in 3D (aumentato) riconoscendo una immagine: funzionalità di Image Targeting. Il progetto considera le seguenti varianti: l’immagine da riconoscere, chiamata “target”, può essere in un database locale oppure cloud mentre il contenuto in 3D aumentato può essere sia statico che animato. Durante la fase di implementazione vengono fornite anche alcuni nozioni di base di Computer Graphic per il rendering del modello 3D. La tesi si conclude con una panoramica di apps presenti sullo store che funzionano secondo questo principio di Image Targeting, i possibili utilizzi in ambito educativo/ludico ed i costi di realizzazione.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

La programmazione aggregata è un paradigma che supporta la programmazione di sistemi di dispositivi, adattativi ed eventualmente a larga scala, nel loro insieme -- come aggregati. L'approccio prevalente in questo contesto è basato sul field calculus, un calcolo formale che consente di definire programmi aggregati attraverso la composizione funzionale di campi computazionali, creando i presupposti per la specifica di pattern di auto-organizzazione robusti. La programmazione aggregata è attualmente supportata, in modo più o meno parziale e principalmente per la simulazione, da DSL dedicati (cf., Protelis), ma non esistono framework per linguaggi mainstream finalizzati allo sviluppo di applicazioni. Eppure, un simile supporto sarebbe auspicabile per ridurre tempi e sforzi d'adozione e per semplificare l'accesso al paradigma nella costruzione di sistemi reali, nonché per favorire la ricerca stessa nel campo. Il presente lavoro consiste nello sviluppo, a partire da un prototipo della semantica operazionale del field calculus, di un framework per la programmazione aggregata in Scala. La scelta di Scala come linguaggio host nasce da motivi tecnici e pratici. Scala è un linguaggio moderno, interoperabile con Java, che ben integra i paradigmi ad oggetti e funzionale, ha un sistema di tipi espressivo, e fornisce funzionalità avanzate per lo sviluppo di librerie e DSL. Inoltre, la possibilità di appoggiarsi, su Scala, ad un framework ad attori solido come Akka, costituisce un altro fattore trainante, data la necessità di colmare l'abstraction gap inerente allo sviluppo di un middleware distribuito. Nell'elaborato di tesi si presenta un framework che raggiunge il triplice obiettivo: la costruzione di una libreria Scala che realizza la semantica del field calculus in modo corretto e completo, la realizzazione di una piattaforma distribuita Akka-based su cui sviluppare applicazioni, e l'esposizione di un'API generale e flessibile in grado di supportare diversi scenari.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

in questo elaborato sono trattati i temi delle Adaptive User Interface e dell'Internet Of Things nei sistemi mobili. Il primo attraverso l'orchestrazione e la definizione di un'architettura framework in grado di fornire allo sviluppatore tutti gli strumenti di base per la realizzazione di interfacce grafiche capaci di esibire un comportamento adattativo a livello di singoli componenti. il secondo,invece, attraverso lo studio della tecnologia DQuid applicata ad un caso d'uso reale nel quale si prevedeva la connessione di un applicazione mobile iOS con un sistema per il parcheggio in garage di un'autovettura ed il monitoraggio delle informazioni relative.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

L'argomento di questa tesi è l'architettura di rete Delay-/Disruption-Tolerant Networking (DTN), progettata per operare nelle reti “challenged”, dove la suite di protocolli TCP/IP risulta inefficace a causa di lunghi ritardi di propagazione del segnale, interruzioni e disturbi di canale, ecc. Esempi di reti “challenged” variano dalle reti interplanetarie alle Mobile Ad-Hoc Networks (MANETs). Le principali implementazioni dell'architettura DTN sono DTN2, implementazione di riferimento, e ION, sviluppata da NASA JPL per applicazioni spaziali. Una grande differenza tra reti spaziali e terrestri è che nello spazio i movimenti dei nodi sono deterministici, mentre non lo sono per i nodi mobili terrestri, i quali generalmente non conoscono la topologia della rete. Questo ha portato allo sviluppo di diversi algoritmi di routing: deterministici per le reti spaziali e opportunistici per quelle terrestri. NASA JPL ha recentemente deciso di estendere l'ambito di applicazione di ION per supportare anche scenari non deterministici. Durante la tesi, svolta presso NASA JPL, mi sono occupato di argomenti diversi, tutti finalizzati a questo obiettivo. Inizialmente ho testato la nuova implementazione dell'algoritmo IP Neighbor Discovery (IPND) di ION, corretti i bug e prodotta la documentazione ufficiale. Quindi ho contribuito ad integrare il Contact Graph Routing (CGR) di ION nel simulatore DTN “ONE” utilizzando la Java Native Interface (JNI) come ponte tra il codice Java di ONE e il codice C di ION. In particolare ho adattato tutte le librerie di ION necessarie per far funzionare CGR all'interno dell'ambiente di ONE. Infine, dopo aver analizzato un dataset di tracce reali di nodi mobili, ho contribuito a progettare e a sviluppare OCGR, estensione opportunistica del CGR, quindi ne ho curato l'integrazione in ONE. I risultati preliminari sembrano confermare la validità di OCGR che, una volta messo a punto, può diventare un valido concorrente ai più rinomati algoritmi opportunistici.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

L’applicazione dei metodi tradizionali dell’ingegneria del software non garantiscono il successo di un progetto, per questo motivo da circa quindici anni è emersa una nuova filosofia di sviluppo nota come Agile Software Development. In questa tesi è stata decritta una panoramica sulle metodologie agili, con particolare attenzione al framework Scrum e un caso di studio reale al quale Scrum è stato applicato. Il caso di studio riguarda l’implementazione di una applicazione web per la gestione del front-end di un Corporate Banking. L’applicazione di Scrum ha permesso di ottenere la soddisfazione del cliente finale, la crescita dello Scrum Team e un tasso di manutenzione correttiva accettabile.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Il presente elaborato tratta il lavoro di studio, analisi e sperimentazione effettuato dal sottoscritto, Giovanni Sitta, in conclusione al Corso di Laurea Magistrale in Informatica presso l'Università degli Studi di Bologna. Questo ha dapprima previsto un periodo di approfondimento di alcune architetture di supporto alla mobilità dei terminali di rete, in particolare di due protocolli allo stato dell'arte, Mobile IPv6 (MIPv6) e Locator/Identifier Separation Protocol (LISP), e di una terza architettura sperimentale denominata Always Best Packet Switching (ABPS). Sono stati in seguito esaminati tre simulatori, uno per ciascuna architettura di supporto alla mobilità considerata, realizzati come estensioni della libreria INET del framework OMNeT++, assicurandosi che fossero conformi alle specifiche del protocollo implementato (almeno entro i limiti di semplificazione rilevanti ai fini del lavoro), e correggendone eventuali problematiche, mancanze e anomalie in caso questi non le rispettassero. Sono poi stati configurati alcuni scenari simulativi utilizzando le tre librerie, in prima battuta di natura molto semplice, utilizzati per verificare il corretto funzionamento dei simulatori in condizioni ideali, e successivamente più complessi, allestendo un ambiente di esecuzione più verosimile, dotato di un maggior numero di host connessi alla rete e di ostacoli per i segnali radio usati nelle comunicazioni wireless. Tramite i risultati sperimentali ottenuti da queste simulazioni è stato infine possibili realizzare un confronto tra le prestazioni di MIPv6, LISP e ABPS.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

.NET Compiler Platform è un compilatore per i linguaggi C# e Visual Basic realizzato da Microsoft. L’innovazione apportata da tale strumento è l’introduzione di API che permettono di accedere al compilatore; in particolare, è possibile accedere alle strutture dati utilizzate al suo interno, quali simboli o AST, e controllare e/o modificare il processo di compilazione. Una parte di questo progetto, chiamato anche progetto Roslyn, è focalizzata sull’introduzione dello scripting per il linguaggio C#. In questa trattazione si è interessati a sperimentare le possibilità offerte da tale strumento nel campo dell’esecuzione dinamica di frammenti di codice. Gli obiettivi imposti si collocano nell’ambito della re-ingegnerizzazione e dello sviluppo di software. Tali obiettivi sono la re-implementazione dei filtri di selezione contenuti nel framework Phoenix, utilizzando le API di Roslyn per migliorarne le prestazioni, e la progettazione di un componente che realizzi una console per lo scripting C# dotata della possibilità di riferire dinamicamente librerie. Le API di compilazione si rivelano essere non propriamente adatte all’esecuzione immediata di frammenti di codice, nonostante ciò, è possibile, appoggiandosi alla reflection, utilizzarle per giungere a questo risultato. Lo scripting, invece, si rivela uno strumento dalle grandi potenzialità nel suddetto ambito.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

La tesi si occupa della creazione di una piattaforma virtuale, composta da un sito web e da una applicazione Android, a supporto di persone con handicap motori. La piattaforma e composta da una mappa interattiva che permette agli utenti di inserire nuovi locali o di commentarne esistenti, e di fare lo stesso per le barriere architettoniche. Per questi motivi il progetto e dettato da una continua comunicazione tra client e server, rendendo la piattaforma aggiornata e dinamica, anche alla vista degli utenti. La parte web viene implementata attraverso Spring MVC, utilizzando delle View .jsp ed AJAX per la comunicazione remota con il server. La parte mobile e stata implementata basandosi principalmente sulle classi di geolocalizzazione di Android, oltre alle librerie osmdroid ed osmbonuspack, fornendo compatitiblita con OSM. Questa fornisce anche un servizio di calcolo del percorso, cercando di evitare il numero maggiore di ostacoli. L'applicazione Android appoggia le proprie comunicazioni sulla libreria Robospice. La parte di persistenza e stata implementata adottando un approccio ad alto livello, grazie ad Hibernate e JPA.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Il presente progetto è stato svolto in collaborazione con la Cineteca di Bologna e verte sulla riprogettazione dell'odierna interfaccia Web, in funzione della sua visualizzazione mobile non considerata nella progettazione del 2008, in particolare nella sua parte che concerne la programmazione degli spettacoli in ambito cinematografico. Raccolti i suggerimenti degli utenti e approfondite le richieste della Cineteca, affrontando con i responsabili IT della Fondazione le criticità emerse, la ristrutturazione delle sezioni presenti e l'aggiunta di nuove funzionalità, si è impostato il lavoro come segue. In primis, si è eseguita una ricerca, avvalendosi di fonti autorevoli nella letteratura di settore, con un focus incentrato sull’Usabilità. Questa ha portato a presentare una panoramica di tale tematica, per concentrarsi poi sulle peculiarità dei dispositivi mobili, toccando vari aspetti: da un approfondimento dalle caratteristiche dell’uso fino una collocazione anche storica alla realtà mobile. Successivamente, si è proseguito analizzando nel dettaglio tutti i vari elementi da includere, sia dal punto di vista concettuale che posizionale, in riferimento a varie soluzioni proposte dalla letteratura di settore. Ciò preferendo i modelli principalmente utilizzati, dunque maggiormente familiari agli utenti, e i metodi normalizzati per la risoluzione di singole problematiche frequenti nella presentazione delle informazioni. Il risultato è un progetto di interfaccia più vicina all'esperienza quotidiana dell'utente, concretizzatosi con la realizzazione di un prototipo per mezzo di applicativi che simulano un device e mostrano anteprime grafiche dell'interfaccia medesima, nella fattispecie della natura e della collocazione dei singoli componenti sullo schermo. Il lavoro, pertanto, si pone l’obiettivo di rispondere a comuni e debite aspettative dell'utenza in fatto di comodità, efficienza e immediatezza di consultazione della Programmazione anche in mobilità.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Virtual machines (VMs) emulating hardware devices are generally implemented in low-level languages for performance reasons. This results in unmaintainable systems that are difficult to understand. In this paper we report on our experience using the PyPy toolchain to improve the portability and reduce the complexity of whole-system VM implementations. As a case study we implement a VM prototype for a Nintendo Game Boy, called PyGirl, in which the high-level model is separated from low-level VM implementation issues. We shed light on the process of refactoring from a low-level VM implementation in Java to a high-level model in RPython. We show that our whole-system VM written with PyPy is significantly less complex than standard implementations, without substantial loss in performance.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Mode of access: Internet.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Mode of access: Internet.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Mode of access: Internet.