Today, the world is getting more and more connected, fast, pervaded by the technology and in search of continuous innovation. Aside pervasion, the computer science today lives and faces up to the problem of velocity of change. Mobile application developers try to face this situation creating tools able to support variability and velocity of the market, allowing them to realize applications that are more scalable, more adaptable, richer in functionality and more attractive from a graphical point of view, and produced and released in the least possible time. Over the recent years, the trend is to create tools supporting the development of applications capable to adapt not only to different screen sizes or form factors, but also to different operative systems. Examples of this trend are the Xamarin framework, the ReactNative library, the Titanium software development kit and the Apache Cordova solution. This master thesis aims at providing tools to go beyond this point, further reducing the time necessary to transform an idea into a market ready mobile application. In order to achieve this, two tools have been developed: Protocode and MobileCodeGenerator. The former is a tool aimed at shaping an idea: just like a prototyping tool, it allows to model in a graphical fashion the different aspects of a mobile application, from views to required data, up to the logic that connects them. The shape given by Protocode to the idea is not that of a prototype, but of a structured model. The adoption of the model, in effect, enables the automatic generation the source code of the application using the MobileCodeGenerator tool. The conversion can target different languages, from Java for Android to Swift for iOS. This thesis work investigates the effectiveness of this toolchain applied to the generation of cross platform source code, in such a way to blend the benefits of automatic generation with a development flow, which is not specific to the target software platform, without sacrifice on performance
Il mondo di oggi è sempre più connesso, veloce, pervaso dalla tecnologia e dai servizi che questa può offrire e sempre in cerca di novità. Oltre alla pervasione, l’informatica di oggi affronta il problema della velocità del cambiamento. La risposta da parte degli sviluppatori di applicazioni mobili è sempre più orientata allo sviluppo di strumenti capaci di supportare la variabilità e la velocità del mercato, permettendo di realizzare applicazioni sempre più scalabili, più adattabili, ricche di funzionalità ed accattivanti nella grafica, e prodotte e immesse sul mercato nel minor tempo possibile. La tendenza degli ultimi anni è quella di creare strumenti a supporto dello sviluppo di applicazioni che possano adattarsi non solo a dispositivi diversi per dimensioni o per aspetto, ma anche per sistema operativo. Sono esempi di questa tendenza i framework Xamarin, ReactNative, Titanium e Cordova. Questo lavoro mira a fornire strumenti che consentano di andare oltre e di abbattere ulteriormente il tempo necessario a trasformare un’idea in un’app disponibile sul mercato. A questo scopo sono stati sviluppati due strumenti per assistere gli sviluppatori: Protocode e MobileCodeGenerator. Protocode è uno strumento dedicato a dare forma all’idea: esattamente come uno strumento di prototipizzazione, esso consente di modellare graficamente i diversi aspetti dell’applicazione, dalle viste ai dati richiesti, fino alla logica che li collega. La forma che Protocode mira a dare all’idea non è tanto quella del prototipo, ma quella del modello strutturato. L’adozione del modello strutturato consente, infatti, di generare automaticamente il codice dell’applicazione tramite lo strumento MobileCodeGenerator. La generazione può essere fatta per diversi linguaggi, da Java per Android a Swift per iOS. In questo lavoro di tesi si valuterà l’efficacia di questa toolchain applicata alla generazione di codice cross - platform, in modo da fondere i benefici di una generazione automatica e con quelli di uno sviluppo non specifico rispetto alla piattaforma software di destinazione, senza perdere di vista l’aspetto delle performance.
Prototipizzazione e generazione automatica della componente controller per applicazioni mobili cross-platform
OSIO, ALBERTO
2017/2018
Abstract
Today, the world is getting more and more connected, fast, pervaded by the technology and in search of continuous innovation. Aside pervasion, the computer science today lives and faces up to the problem of velocity of change. Mobile application developers try to face this situation creating tools able to support variability and velocity of the market, allowing them to realize applications that are more scalable, more adaptable, richer in functionality and more attractive from a graphical point of view, and produced and released in the least possible time. Over the recent years, the trend is to create tools supporting the development of applications capable to adapt not only to different screen sizes or form factors, but also to different operative systems. Examples of this trend are the Xamarin framework, the ReactNative library, the Titanium software development kit and the Apache Cordova solution. This master thesis aims at providing tools to go beyond this point, further reducing the time necessary to transform an idea into a market ready mobile application. In order to achieve this, two tools have been developed: Protocode and MobileCodeGenerator. The former is a tool aimed at shaping an idea: just like a prototyping tool, it allows to model in a graphical fashion the different aspects of a mobile application, from views to required data, up to the logic that connects them. The shape given by Protocode to the idea is not that of a prototype, but of a structured model. The adoption of the model, in effect, enables the automatic generation the source code of the application using the MobileCodeGenerator tool. The conversion can target different languages, from Java for Android to Swift for iOS. This thesis work investigates the effectiveness of this toolchain applied to the generation of cross platform source code, in such a way to blend the benefits of automatic generation with a development flow, which is not specific to the target software platform, without sacrifice on performanceCampo DC | Valore | Lingua |
---|---|---|
dc.collection.id.s | a81cb057-a56d-616b-e053-1605fe0a889a | * |
dc.collection.name | Tesi di laurea Magistrale | * |
dc.contributor.author | OSIO, ALBERTO | - |
dc.contributor.supervisor | BARESI, LUCIANO | - |
dc.date.issued | 2019-04-16 | - |
dc.description.abstracteng | Today, the world is getting more and more connected, fast, pervaded by the technology and in search of continuous innovation. Aside pervasion, the computer science today lives and faces up to the problem of velocity of change. Mobile application developers try to face this situation creating tools able to support variability and velocity of the market, allowing them to realize applications that are more scalable, more adaptable, richer in functionality and more attractive from a graphical point of view, and produced and released in the least possible time. Over the recent years, the trend is to create tools supporting the development of applications capable to adapt not only to different screen sizes or form factors, but also to different operative systems. Examples of this trend are the Xamarin framework, the ReactNative library, the Titanium software development kit and the Apache Cordova solution. This master thesis aims at providing tools to go beyond this point, further reducing the time necessary to transform an idea into a market ready mobile application. In order to achieve this, two tools have been developed: Protocode and MobileCodeGenerator. The former is a tool aimed at shaping an idea: just like a prototyping tool, it allows to model in a graphical fashion the different aspects of a mobile application, from views to required data, up to the logic that connects them. The shape given by Protocode to the idea is not that of a prototype, but of a structured model. The adoption of the model, in effect, enables the automatic generation the source code of the application using the MobileCodeGenerator tool. The conversion can target different languages, from Java for Android to Swift for iOS. This thesis work investigates the effectiveness of this toolchain applied to the generation of cross platform source code, in such a way to blend the benefits of automatic generation with a development flow, which is not specific to the target software platform, without sacrifice on performance | it_IT |
dc.description.abstractita | Il mondo di oggi è sempre più connesso, veloce, pervaso dalla tecnologia e dai servizi che questa può offrire e sempre in cerca di novità. Oltre alla pervasione, l’informatica di oggi affronta il problema della velocità del cambiamento. La risposta da parte degli sviluppatori di applicazioni mobili è sempre più orientata allo sviluppo di strumenti capaci di supportare la variabilità e la velocità del mercato, permettendo di realizzare applicazioni sempre più scalabili, più adattabili, ricche di funzionalità ed accattivanti nella grafica, e prodotte e immesse sul mercato nel minor tempo possibile. La tendenza degli ultimi anni è quella di creare strumenti a supporto dello sviluppo di applicazioni che possano adattarsi non solo a dispositivi diversi per dimensioni o per aspetto, ma anche per sistema operativo. Sono esempi di questa tendenza i framework Xamarin, ReactNative, Titanium e Cordova. Questo lavoro mira a fornire strumenti che consentano di andare oltre e di abbattere ulteriormente il tempo necessario a trasformare un’idea in un’app disponibile sul mercato. A questo scopo sono stati sviluppati due strumenti per assistere gli sviluppatori: Protocode e MobileCodeGenerator. Protocode è uno strumento dedicato a dare forma all’idea: esattamente come uno strumento di prototipizzazione, esso consente di modellare graficamente i diversi aspetti dell’applicazione, dalle viste ai dati richiesti, fino alla logica che li collega. La forma che Protocode mira a dare all’idea non è tanto quella del prototipo, ma quella del modello strutturato. L’adozione del modello strutturato consente, infatti, di generare automaticamente il codice dell’applicazione tramite lo strumento MobileCodeGenerator. La generazione può essere fatta per diversi linguaggi, da Java per Android a Swift per iOS. In questo lavoro di tesi si valuterà l’efficacia di questa toolchain applicata alla generazione di codice cross - platform, in modo da fondere i benefici di una generazione automatica e con quelli di uno sviluppo non specifico rispetto alla piattaforma software di destinazione, senza perdere di vista l’aspetto delle performance. | it_IT |
dc.description.tipolaurea | LAUREA MAGISTRALE | it_IT |
dc.identifier.uri | http://hdl.handle.net/10589/147436 | - |
dc.language.iso | ita | it_IT |
dc.publisher.country | Italy | it_IT |
dc.publisher.name | Politecnico di Milano | it_IT |
dc.relation.academicyear | 2017/2018 | it_IT |
dc.relation.course | COMPUTER SCIENCE AND ENGINEERING - INGEGNERIA INFORMATICA | it_IT |
dc.relation.school | ING - Scuola di Ingegneria Industriale e dell'Informazione | it_IT |
dc.subject.keywordseng | mobile applications; software development; prototipization; code generation; data model; mvc; model view controller | it_IT |
dc.subject.keywordsita | applicazioni mobili; sviluppo software; prototipizzazione; generazione di codice; modello dei dati; mvc; model view controller | it_IT |
dc.subject.miur | ING-INF/05 SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI | it_IT |
dc.subject.singlekeyword | mobile applications | * |
dc.subject.singlekeyword | software development | * |
dc.subject.singlekeyword | prototipization | * |
dc.subject.singlekeyword | code generation | * |
dc.subject.singlekeyword | data model | * |
dc.subject.singlekeyword | mvc | * |
dc.subject.singlekeyword | model view controller | * |
dc.subject.singlekeyword | applicazioni mobili | * |
dc.subject.singlekeyword | sviluppo software | * |
dc.subject.singlekeyword | prototipizzazione | * |
dc.subject.singlekeyword | generazione di codice | * |
dc.subject.singlekeyword | modello dei dati | * |
dc.subject.singlekeyword | mvc | * |
dc.subject.singlekeyword | model view controller | * |
dc.title | Prototipizzazione e generazione automatica della componente controller per applicazioni mobili cross-platform | it_IT |
dc.type | Tesi di laurea Magistrale | it_IT |
Appare nelle tipologie: | Tesi di laurea Magistrale |
File | Dimensione | Formato | |
---|---|---|---|
2019_04_Osio.pdf
accessibile in internet per tutti
Descrizione: Testo della tesi
Dimensione
4.35 MB
Formato
Adobe PDF
|
4.35 MB | Adobe PDF | Visualizza/Apri |
I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/10589/147436