Over the past decade, we have witnessed one of the greatest revolutions in the history of information technology, which has led to redefining the ways a user interacts with his devices every day, creating a multitude of new opportunities for software developers but also new challenges. Now applications are becoming more and more complex and is required to develop them for a multitude of different devices in a short period of time. Many developers have therefore choose to move from a solution written in native code in favor of cheaper and faster solutions, such as web apps or using tools such as Xamarin for multi-platform development. The aim of this thesis project is to provide a tool for developers that enables them to speed up design and development without sacrificing the quality and the performance of native code. For this purpose two tools have been developed which target is to work in symbiosis assisting the developer in the two respective phases, Protocode and Mobile Code Generator. Protocode is a web application that allows the user to design the graphic components and the data model of the product he wants to implement. Subsequently is possible to download locally the meta-model of the project generated by the tool, which will serve as input for the next generation phase. Mobile Code Generator is a plugin for the Eclipse IDE that allows, from the file that describes the model, to automatically generate native code projects for the iOS and Android versions of the application. This solution not only allows to speed up the development phase, but also offers to programmers a unique tool to design the skeleton of their application for multiplatform devices and thus have a common structure in the Android and iOS versions, going de facto to halve the time of development in the prototyping phase. In the next chapters will be described in detail the tools implemented and will be shown an evaluation by comparing this approach with a real development process without the support of these tools.
Negli ultimi dieci anni abbiamo assistito a una delle più grandi rivoluzioni nella storia dell’informatica, che ha portato a ridefinire modalità e possibilità con cui un utente interagisce quotidianamente con i propri dispositivi, creando una moltitudine di nuove opportunità per gli sviluppatori software ma anche una serie di nuove sfide. Ora le applicazioni sono sempre più complesse e si richiede di svilupparle per molti dispositivi diversi e in breve tempo. Vari developers di conseguenza hanno avuto la tendenza ad abbandonare una soluzione volta a produrre app in codice nativo, in favore di soluzioni più economiche e rapide da realizzare, come web app o attraverso l’utilizzo di tool come Xamarin per lo sviluppo multipiattaforma. L’obbiettivo di questo lavoro di tesi è fornire uno strumento agli sviluppatori che consenta loro di velocizzare la fase di progettazione e sviluppo, senza rinunciare alla qualità e alle performance di un applicazione scritta in codice nativo. A questo scopo sono stati sviluppati due tool che lavorano in simbiosi e assistono il developer nelle due rispettive fasi, Protocode e Mobile Code Generator. Protocode è un’applicazione web che consente di progettare le componenti grafiche e il modello dei dati alla base del prodotto che si vuole realizzare. Successivamente il tool permette di generare il meta-modello del progetto, che servirà per la successiva fase di generazione. Mobile Code Generator è un plugin per l’IDE Eclipse e consente, a partire dal file che descrive il modello, di generare automaticamente i progetti in codice nativo per la versione iOS e Android dell’applicazione. Questa soluzione permette non solo di velocizzare la fase di sviluppo, ma anche di avere un tool unico in cui poter progettare lo scheletro della propria applicazione e così avere una struttura comune nella versione Android e in quella iOS, andando di fatto a dimezzare i tempi nella fase di prototipizzazione. Nei capitoli successivi verranno descritti nel dettaglio gli strumenti implementati e verrà mostrata una valutazione del risultato finale attraverso la comparazione con un processo di sviluppo reale senza il supporto di questi tool.
Prototipizzazione e generazione automatica della componente Model per applicazioni mobili multipiattaforma
ROSSOTTI, ALESSIO
2016/2017
Abstract
Over the past decade, we have witnessed one of the greatest revolutions in the history of information technology, which has led to redefining the ways a user interacts with his devices every day, creating a multitude of new opportunities for software developers but also new challenges. Now applications are becoming more and more complex and is required to develop them for a multitude of different devices in a short period of time. Many developers have therefore choose to move from a solution written in native code in favor of cheaper and faster solutions, such as web apps or using tools such as Xamarin for multi-platform development. The aim of this thesis project is to provide a tool for developers that enables them to speed up design and development without sacrificing the quality and the performance of native code. For this purpose two tools have been developed which target is to work in symbiosis assisting the developer in the two respective phases, Protocode and Mobile Code Generator. Protocode is a web application that allows the user to design the graphic components and the data model of the product he wants to implement. Subsequently is possible to download locally the meta-model of the project generated by the tool, which will serve as input for the next generation phase. Mobile Code Generator is a plugin for the Eclipse IDE that allows, from the file that describes the model, to automatically generate native code projects for the iOS and Android versions of the application. This solution not only allows to speed up the development phase, but also offers to programmers a unique tool to design the skeleton of their application for multiplatform devices and thus have a common structure in the Android and iOS versions, going de facto to halve the time of development in the prototyping phase. In the next chapters will be described in detail the tools implemented and will be shown an evaluation by comparing this approach with a real development process without the support of these tools.File | Dimensione | Formato | |
---|---|---|---|
2017_10_Rossotti.pdf
solo utenti autorizzati dal 11/09/2018
Descrizione: Testo della tesi
Dimensione
4.56 MB
Formato
Adobe PDF
|
4.56 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/135995