Liquid web applications : design and implementation of the decentralized cross-device web
      
      
        
      
      
      
      
      
      
      
      
      
      
      
      
        286 p
        
        
      
      
      
      
      
      
      
      Thèse de doctorat: Università della Svizzera italiana, 2020
      
      
      
      
      
      
      
       
      
      
      
        
        English
        
        
        
          Web applications are traditionally designed having in mind a server-centric  architecture, whereby the whole persistent data, dynamic state and logic of the  application are stored and running on a Web server. The clients running in the Web  browsers traditionally render only pre-computed views fetched from the server.  Nowadays this centralized approach does not fit well with the kind of interactions that  the users perform when they connect to a Web application. The users can access the  Web and fetch applications with much faster devices than the ones we owned thirty  years ago. Moreover the Web can now be accessed with devices of any shape, size,  and capability: ranging from desktop computers, to laptops, tablets, and smartphones.  Emerging smart and embedded devices in the Internet of Things are also able to  access the Web and interact with each other thanks to new emerging Web standards,  such as smart televisions, smart watches, or smart cars. The diversity in the devices  increased together with the average number of Web-enabled devices owned by a  single user. Today the average connected users access the Web with multiple devices  at the same time and expect that their applications, which are now deployed on all the  devices they own, can be seamlessly used on each one of them. In this dissertation  we discuss liquid Web applications: software that can be deployed in a cross-device  environment by exploiting the current HTML5 standards. In particular we design and  implement decentralized liquid Web software able to flow between different platforms.  Like liquid adapts its shape to its container, liquid Web applications adapt and can be  deployed on all available devices. The Web platform allows devices of different  manufactures to communicate, deploy, and distribute liquid applications among them,  even when they do not share a common operating system. With liquid Web  applications we seek to overcome the current stagnation in the traditional design of  solid Web applications in favor of an affordable cross-device solution. We present the  history and evolution of liquid applications and discuss why the Web is the best  platform for creating them. We show how to design liquid software by discussing how  to deploy the state, logic, and user interface of any Web application on multiple  devices. The design we present allows developers to create liquid Web applications  able to seamlessly flow between multiple devices following the attention of the users.  We also present the Liquid.js for Polymer framework, whose goal is to simplify the  creation of liquid Web applications by helping developers to create their own liquid  user experience. Our contribution in the design of liquid software presented in this  dissertation is decoupled from the framework implementation and can be re-used to  create new liquid frameworks.
        
        
       
      
      
      
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        - 
          Language
        
- 
          
        
- 
          Classification
        
- 
          
              
                
                  Computer science and technology
                
              
            
          
        
- 
          License
        
- 
          
        
- 
          Identifiers
        
- 
          
        
- 
          Persistent URL
        
- 
          https://n2t.net/ark:/12658/srd1319155