10 resultados para node.js
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:
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.