z-logo
open-access-imgOpen Access
A Survey of Multitier Programming
Author(s) -
Pascal Weisenburger,
Johannes Wirth,
Guido Salvaneschi
Publication year - 2020
Publication title -
acm computing surveys
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 2.079
H-Index - 163
eISSN - 1557-7341
pISSN - 0360-0300
DOI - 10.1145/3397495
Subject(s) - computer science , javascript , programming language , codebase , compiler , program comprehension , context (archaeology) , just in time compilation , operating system , software engineering , source code , software , software system , paleontology , biology
Multitier programming deals with developing the components that pertain to different tiers in the system (e.g., client and server), mixing them in the same compilation unit. In this paradigm, the code for different tiers is then either generated at run time or it results from the compiler splitting the codebase into components that belong to different tiers based on user annotations, static analysis, types, or a combination of these. In the Web context, multitier languages aim at reducing the distinction between client and server code, by translating the code that is to be executed on the clients to JavaScript or by executing JavaScript on the server, too. Ultimately, the goal of the multitier approach is to improve program comprehension, simplify maintenance and enable formal reasoning about the properties of the whole distributed application. A number of multitier research languages have been proposed over the last decade, which support various degrees of multitier programming and explore different design tradeoffs. In this article, we provide an overview of the existing solutions, discuss their positioning in the design space, and outline open research problems.

The content you want is available to Zendy users.

Already have an account? Click here to sign in.
Having issues? You can contact us here
Accelerating Research

Address

John Eccles House
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom