15 resultados para Websocket, Node.js, JSON
em AMS Tesi di Laurea - Alm@DL - Università di Bologna
Resumo:
L'obbiettivo di questa tesi è dimostrare che è attualmente possibile realizzare un sistema di aggregazione dati in grado di gestire un numero elevato di connessioni contemporanee con relativamente poco sforzo per lo sviluppatore grazie all'utilizzo di Node JS, piattaforma che utilizza internamente una gestione a eventi a livello di linguaggio di programmazione.
Resumo:
La tesi illustra le funzionalita e l'architettura di Node.js elencando e analizzando le caratteristiche che lo rendono un framework vincente nella sfida che il web attuale pone. La tesi comprende l'analisi e la descrizione del lavoro svolto per creare una libreria HTTP/ File system, integrata nel sistema di sviluppo cloud proprietario: Instant Developer , funzionante sia su Node.JS che sui browser che supportano appieno le nuove API File system di HTML 5. Particolare attenzione viene riservata per la descrizione della struttura della libreria, pensata per permettere all'utente dell'IDE di utilizzarla indifferentemente su server/browser senza preoccuparsi di chiamare metodi diversi. Fs.js permette di operare con file/cartelle, richieste HTTP in modo semplificato rispetto alle API Ufficiali dei rispettivi ambienti.
Resumo:
Il Web ha subito numerose trasformazioni rispetto al passato. Si è passati da un Web statico, in cui l'unica possibilità era quella di leggere i contenuti della pagina, ad un Web dinamico e interattivo come quello dei social network. Il Web moderno è, ancora oggi, un universo in espansione. La possibilità di arricchire le pagine con contenuti interattivi, video, foto e molto altro, rende l'esperienza web sempre più coinvolgente. Inoltre la diffusione sempre più ampia di mobile device ha reso necessaria l'introduzione di nuovi strumenti per sfruttare al meglio le funzionalità di tali dispositivi. Esistono al momento tantissimi linguaggi di scripting e di programmazione, ma anche CMS che offrono a chiunque la possibilità di scrivere e amministrare siti web. Nonostante le grandi potenzialità che offrono, spesso queste tecnologie si occupano di ambiti specifici e non permettono di creare sistemi omogenei che comprendano sia client che server. Dart si inserisce proprio in questo contesto. Tale linguaggio dà a i programmatori la possibilità di poter sviluppare sia lato client sia lato server. L'obiettivo principale di questo linguaggio è infatti la risoluzione di alcune problematiche comuni a molti programmatori web. Importante in questo senso è il fatto di rendere strutturata la costruzione di programmi web attraverso l'uso di interfacce e classi. Fornisce inoltre un supporto per l'integrazione di svariate funzionalità che allo stato attuale sono gestite da differenti tecnologie. L'obiettivo della presente tesi è quello di mettere a confronto Dart con alcune delle tecnologie più utilizzate al giorno d'oggi per la programmazione web-based. In particolare si prenderanno in considerazione JavaScript, jQuery, node.js e CoffeeScript.
Resumo:
L’obiettivo della tesi è esplorare gli aspetti fondamentali che riguardano la programmazione asincrona, in particolare in JavaScript, analizzando le librerie e i metodi piu` diffusi per risolvere problemi tipici di asincronicità. Il motivo dello studio di JavaScript è il grande utilizzo di tale linguaggio per la costruzione delle moderne web-app. Per la realizzazione di questo elaborato si è partiti dallo studio dell’evoluzione del web, dal Web 1.0 al web 2.0 e dall’evoluzione delle web app in questo contesto, successivamente si è raffinata la ricerca allo studio più specifico di JavaScript e, di conseguenza, ai suoi costrutti ed ai suoi stili di programmazione, come la programmazione asincrona e la programmazione ad eventi.
Resumo:
Questo elaborato tratta della progettazione e dell'implementazione di una piattaforma social, destinata alla commercializzazione, per creare, gestire, condividere un insieme di liste organizzate di oggetti. La piattaforma è di tipo client-server, dove il client consiste in un'applicazione Android e il server in un'applicazione Node.js e un database MySQL che offrono un'API RESTful. Nello specifico è stata trattata l'implementazione delle notifiche push (anche geolocalizzate) e la sincronizzazione dei dati per l'utilizzo offline.
Resumo:
Questa tesi ha come scopo principale l'analisi delle diverse tecnologie di localizzazione in ambito indoor, analizzando in particolare l'utilizzo del Wifi RSS Fingerprinting. La tecnica del Wifi RSS Fingerprinting è una tecnica per la localizzazione all'interno di ambienti chiusi, che consiste nella definizione di un 'impronta'(fingerprint) in un punto preciso dell'ambiente(definito reference point), andando a inserire in un database i valori di potenza del segnale ricevuto(RSS) da ogni access point rilevato all'interno di quel determinato reference point. Per l'implementazione di questa tecnica è stato sviluppato un applicativo con un architettura client-server. Il client è stato sviluppato in ambiente Android, realizzando una applicazione per la gestione della fase di salvataggio di nuovi fingerprint e per la fase di localizzazione della posizione corrente, tramite l'utilizzo dei vari fingerprint precedentemente inseriti all'interno del DB. Il server, sviluppato in Node.js(framework Javascript), gestirà le diverse richieste ricevute dal client tramite delle chiamate AJAX, prelevando le informazioni richieste direttamente dal database. All'interno delle applicativo sono stati implementati diversi algoritmi per la localizzazione indoor, in modo da poter verificare l'applicabilità di questo sistema in un ambito reale. Questi algoritmi sono stati in seguito testati per valutare l'accuratezza e la precisione di ciascuno, andando ad individuare gli algoritmi migliori da utilizzare in base a scenari diversi.
Resumo:
Piattaforma di raccolta e analisi dei dati ambientali, raccolti da vari dispositivi. Server in node.js per ricevere e salvare i dati, client android per catturare i dati, client web per analizzare i dati attraverso una mappa e dei grafici.
Resumo:
Panoramica del contesto storico focalizzato sullo sviluppo del Web e del contesto sociale. Panorama del modello a Threads con analisi delle tecniche di concorrenza applicabili. Panoramica del modello ad Attori focalizzandosi sull'implementazione di Akka e di alcuni patterns di comunicazione. Analisi dell'architettura event-driven e di Node.js. Esposizione di un caso di studio per la programmazione Web comparando modello a Thread e modello ad Attori.
Resumo:
Nella tesi, inizialmente, viene introdotto il concetto di Big Data, descrivendo le caratteristiche principali, il loro utilizzo, la provenienza e le opportunità che possono apportare. Successivamente, si sono spiegati i motivi che hanno portato alla nascita del movimento NoSQL, come la necessità di dover gestire i Big Data pur mantenendo una struttura flessibile nel tempo. Inoltre, dopo un confronto con i sistemi tradizionali, si è passati al classificare questi DBMS in diverse famiglie, accennando ai concetti strutturali sulle quali si basano, per poi spiegare il funzionamento. In seguito è stato descritto il database MongoDB orientato ai documenti. Sono stati approfonditi i dettagli strutturali, i concetti sui quali si basa e gli obbiettivi che si pone, per poi andare ad analizzare nello specifico importanti funzioni, come le operazioni di inserimento e cancellazione, ma anche il modo di interrogare il database. Grazie alla sue caratteristiche che lo rendono molto performante, MonogDB, è stato utilizzato come supporto di base di dati per la realizzazione di un applicazione web che permette di mostrare la mappa della connettività urbana.
Resumo:
La Brain Computer Interface, con l’acronimo BCI, è un mezzo per la comunicazione tra cervello e macchina. La comunicazione si basa sulla emanazione di segnali elettrici del cervello che vengono rilevati da un dispositivo, il quale invia i segnali digitalizzati ad un elaboratore. I segnali elettrici, chiamati EEG, permettono al cervello di regolare la comunicazione tra le diverse cellule neurali. La BCI intercetta questi segnali e, previa elaborazione, permette di ottenere diversi diagrammi, detti metriche, per poter misurare, sotto svariati aspetti, il funzionamento del cervello. Le ricerche scientifiche sulle EEG hanno rilevato una correlazione tra i segnali elettrici nel cervello di un soggetto con il suo livello di performance e stato emotivo. È quindi possibile comprendere, tramite una serie di parametri, come la mente dei soggetti reagisce a stimoli esterni di svariata tipologia durante lo svolgimento di un’attività. L’elaboratore, che riceve il segnale dalla BCI, è il componente che si occupa di trasformare i segnali elettrici, generati dal cervello e digitalizzati, in risultati facilmente interpretabili dall’utente. Elaborare i segnali EEG in tempo reale porta a dover utilizzare algoritmi creati appositamente per questo scopo e specifici perle metriche preposte. Lo scopo di questa tesi è quello di presentare un progetto sullo sviluppo della fase di smistamento dei dati ricevuti dall’elaboratore. Nel contempo si fornirà una conoscenza scientifica minima per comprendere le scelte fatte. Tale progetto è stato reso possibile dalla collaborazione con l’azienda Vibre, che si dedica allo sviluppo di un sistema comprendente BCI ed elaboratore.
Resumo:
Al giorno d’oggi il World Wide Web non è più un semplice strumento per la condivisione di informazioni. Le tecnologie nate nel corso dell’ultimo decennio hanno permesso lo sviluppo di vere e proprie applicazioni Web (Web App) complesse, indipendenti e multi-utente in grado di fornire le stesse funzionalità delle normali applicazioni desktop. In questa tesi verranno trattate le caratteristiche di una Web App moderna, analizzandone l’evoluzione e il processo produttivo. Particolare attenzione sarà posta alle Web App distribuite e ai meccanismi di comunicazione client-server che queste nuove tecnologie hanno reso disponibili. I WebSocket, la tecnologia di riferimento di HTML5, saranno riportati come caso di studio e relazionati allo standard precedente ad HTML5, cioè Ajax e Long Polling.
Resumo:
Lo scopo della tesi è quello di descrivere e mettere a confronto tre diversi linguaggi, e quindi approcci, alla programmazione server-side e di back-end, ovvero il linguaggio PHP, il linguaggio Python ed il linguaggio Javascript, utilizzato però per una programmazione “Server Side”, e quindi associato al framework NodeJS. Questo confronto si pone l’obiettivo di sottolineare le differenti caratteristiche di ogni linguaggio, gli scopi a cui esso maggiormente si addice e di fornire una sorta di guida per far in modo che si possa comprendere al meglio quale dei tre linguaggi maggiormente usati per la programmazione backend si conformi meglio all’obiettivo prepostosi.
Resumo:
Il sistema presentato all'interno di questo documento di tesi ha come obiettivo quello di essere un supporto all'analisi di genere, che risulta fondamentale per la risoluzione delle situazioni laddove il genere ancora rappresenta condizione di differenza. Attraverso l’utilizzo di un dizionario dati, costruito per contenere parole chiave su cui l’analisi si basa, è possibile effettuare lo studio dei contenuti di documenti strutturati. Il sistema è stato sviluppato mediante l'utilizzo di Nova Framework, jQuery, Bootstrap e Morris.js. Per quanto riguarda la gestione e memorizzazione dei dati sono stati utilizzati un database relazionale MySQL ed un insieme di file XML e JSON.
Resumo:
Questo lavoro di tesi studia e analizza le prestazioni di applicazioni basate sui protocolli HTTP/2 e WebSocket, affrontando, anche in maniera sperimentale, due differenti tecniche: polling e push.
Resumo:
Additive Manufacturing (AM), also known as “3D printing”, is a recent production technique that allows the creation of three-dimensional elements by depositing multiple layers of material. This technology is widely used in various industrial sectors, such as automotive, aerospace and aviation. With AM, it is possible to produce particularly complex elements for which traditional techniques cannot be used. These technologies are not yet widespread in the civil engineering sector, which is slowly changing thanks to the advantages of AM, such as the possibility of realizing elements without geometric restrictions, with less material usage and a higher efficiency, in particular employing Wire-and-Arc Additive Manufacturing (WAAM) technology. Buildings that benefit most from AM are all those structures designed using form-finding and free-form techniques. These include gridshells, where joints are the most critical and difficult elements to design, as the overall behaviour of the structure depends on them. It must also be considered that, during the design, the engineer must try to minimize the structure's own weight. Self-weight reductions can be achieved by Topological Optimization (TO) of the joint itself, which generates complex geometries that could not be made using traditional techniques. To sum up, weight reductions through TO combined with AM allow for several potential benefits, including economic ones. In this thesis, the roof of the British Museum is considered as a case study, analysing the gridshell structure of which a joint will be chosen to be designed and manufactured, using TO and WAAM techniques. Then, the designed joint will be studied in order to understand its structural behaviour in terms of stiffness and strength. Finally, a printing test will be performed to assess the production feasibility using WAAM technology. The computational design and fabrication stages were carried out at Technische Universität Braunschweig in Germany.