A Survey of Multitier Programming
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...
Gespeichert in:
Veröffentlicht in: | ACM computing surveys 2020-09, Vol.53 (4), p.1-35 |
---|---|
Hauptverfasser: | , , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | 35 |
---|---|
container_issue | 4 |
container_start_page | 1 |
container_title | ACM computing surveys |
container_volume | 53 |
creator | Weisenburger, Pascal Wirth, Johannes Salvaneschi, Guido |
description | 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. |
doi_str_mv | 10.1145/3397495 |
format | Article |
fullrecord | <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_journals_2501492152</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2501492152</sourcerecordid><originalsourceid>FETCH-LOGICAL-c286t-72534503ecc306a6c58359b64a31911a3f1149f19d65a8e4a071391b2cb706cf3</originalsourceid><addsrcrecordid>eNotj8tKAzEUhoMoOFbxFUZcuBo9JyeXybIUq0JFQV2HTEzKlLZTkxmhb-9Iu_o3339j7BrhHlHIByKjhZEnrEApdaVJ4CkrgBRUQADn7CLnFQBwgapgN9PyY0i_YV92sXwd1n3btyGV76lbJrfZtNvlJTuLbp3D1VEn7Gv--Dl7rhZvTy-z6aLyvFZ9pbkkIYGC9wTKKS9rkqZRwhEaREdxXGcimm8lXR2EA41ksOG-0aB8pAm7PeTuUvczhNzbVTek7VhpuYTRy1Hykbo7UD51OacQ7S61G5f2FsH-_7fH__QHh4RI3w</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2501492152</pqid></control><display><type>article</type><title>A Survey of Multitier Programming</title><source>ACM Digital Library Complete</source><creator>Weisenburger, Pascal ; Wirth, Johannes ; Salvaneschi, Guido</creator><creatorcontrib>Weisenburger, Pascal ; Wirth, Johannes ; Salvaneschi, Guido</creatorcontrib><description>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.</description><identifier>ISSN: 0360-0300</identifier><identifier>EISSN: 1557-7341</identifier><identifier>DOI: 10.1145/3397495</identifier><language>eng</language><publisher>Baltimore: Association for Computing Machinery</publisher><subject>Annotations ; Computer science ; Languages ; Servers</subject><ispartof>ACM computing surveys, 2020-09, Vol.53 (4), p.1-35</ispartof><rights>Copyright Association for Computing Machinery Sep 2020</rights><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c286t-72534503ecc306a6c58359b64a31911a3f1149f19d65a8e4a071391b2cb706cf3</citedby><cites>FETCH-LOGICAL-c286t-72534503ecc306a6c58359b64a31911a3f1149f19d65a8e4a071391b2cb706cf3</cites><orcidid>0000-0003-1288-1485</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,780,784,27915,27916</link.rule.ids></links><search><creatorcontrib>Weisenburger, Pascal</creatorcontrib><creatorcontrib>Wirth, Johannes</creatorcontrib><creatorcontrib>Salvaneschi, Guido</creatorcontrib><title>A Survey of Multitier Programming</title><title>ACM computing surveys</title><description>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.</description><subject>Annotations</subject><subject>Computer science</subject><subject>Languages</subject><subject>Servers</subject><issn>0360-0300</issn><issn>1557-7341</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2020</creationdate><recordtype>article</recordtype><recordid>eNotj8tKAzEUhoMoOFbxFUZcuBo9JyeXybIUq0JFQV2HTEzKlLZTkxmhb-9Iu_o3339j7BrhHlHIByKjhZEnrEApdaVJ4CkrgBRUQADn7CLnFQBwgapgN9PyY0i_YV92sXwd1n3btyGV76lbJrfZtNvlJTuLbp3D1VEn7Gv--Dl7rhZvTy-z6aLyvFZ9pbkkIYGC9wTKKS9rkqZRwhEaREdxXGcimm8lXR2EA41ksOG-0aB8pAm7PeTuUvczhNzbVTek7VhpuYTRy1Hykbo7UD51OacQ7S61G5f2FsH-_7fH__QHh4RI3w</recordid><startdate>20200901</startdate><enddate>20200901</enddate><creator>Weisenburger, Pascal</creator><creator>Wirth, Johannes</creator><creator>Salvaneschi, Guido</creator><general>Association for Computing Machinery</general><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope><orcidid>https://orcid.org/0000-0003-1288-1485</orcidid></search><sort><creationdate>20200901</creationdate><title>A Survey of Multitier Programming</title><author>Weisenburger, Pascal ; Wirth, Johannes ; Salvaneschi, Guido</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c286t-72534503ecc306a6c58359b64a31911a3f1149f19d65a8e4a071391b2cb706cf3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2020</creationdate><topic>Annotations</topic><topic>Computer science</topic><topic>Languages</topic><topic>Servers</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Weisenburger, Pascal</creatorcontrib><creatorcontrib>Wirth, Johannes</creatorcontrib><creatorcontrib>Salvaneschi, Guido</creatorcontrib><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>ACM computing surveys</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Weisenburger, Pascal</au><au>Wirth, Johannes</au><au>Salvaneschi, Guido</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>A Survey of Multitier Programming</atitle><jtitle>ACM computing surveys</jtitle><date>2020-09-01</date><risdate>2020</risdate><volume>53</volume><issue>4</issue><spage>1</spage><epage>35</epage><pages>1-35</pages><issn>0360-0300</issn><eissn>1557-7341</eissn><abstract>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.</abstract><cop>Baltimore</cop><pub>Association for Computing Machinery</pub><doi>10.1145/3397495</doi><tpages>35</tpages><orcidid>https://orcid.org/0000-0003-1288-1485</orcidid><oa>free_for_read</oa></addata></record> |
fulltext | fulltext |
identifier | ISSN: 0360-0300 |
ispartof | ACM computing surveys, 2020-09, Vol.53 (4), p.1-35 |
issn | 0360-0300 1557-7341 |
language | eng |
recordid | cdi_proquest_journals_2501492152 |
source | ACM Digital Library Complete |
subjects | Annotations Computer science Languages Servers |
title | A Survey of Multitier Programming |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-15T01%3A54%3A36IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=A%20Survey%20of%20Multitier%20Programming&rft.jtitle=ACM%20computing%20surveys&rft.au=Weisenburger,%20Pascal&rft.date=2020-09-01&rft.volume=53&rft.issue=4&rft.spage=1&rft.epage=35&rft.pages=1-35&rft.issn=0360-0300&rft.eissn=1557-7341&rft_id=info:doi/10.1145/3397495&rft_dat=%3Cproquest_cross%3E2501492152%3C/proquest_cross%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2501492152&rft_id=info:pmid/&rfr_iscdi=true |