Code on demand: Difference between revisions

Content deleted Content added
m Reverted edits by 189.202.94.225 (talk) (AV)
AnomieBOT (talk | contribs)
m Dating maintenance tags: {{Clarify}}
 
(4 intermediate revisions by 2 users not shown)
Line 1:
{{More citations needed|date=February 2022}}
In [[distributed computing]], '''code on demand''' is any technology that sends executable software code from a server computer to a client computer upon request from the client's software. Some well-known examples of the code on demand paradigm on the web are [[Java applet]]s, Adobe's [[ActionScript]] language for the [[Adobe Flash Player|Flash Player]], and [[JavaScript]].<ref name="Is Code Still Moving Around">{{cite book|last= Carzaniga|first=Antonio|author2=Gian Pietro Picco |author3=Giovanni Vigna |yeartitle=200729th International Conference on Software Engineering (ICSE'07 Companion) |titlechapter=Is Code Still Moving Around? Looking Back at a Decade of Code Mobility |journalyear=ICSE COMPANION '07 Companion to the Proceedings of the 29th International Conference on Software Engineering2007|publisher=IEEE Computer Society|___location=Washington, DC, USAUS|pages=9–20|url=http://dl.acm.org/citation.cfm?id=1248922|doi=10.1109/ICSECOMPANION.2007.44|isbn=978-0-7695-2892-2|citeseerx=10.1.1.119.5295|s2cid=8728428 }}</ref>
 
The program code lies inactive on a [[web server]] until a user (client) requests a web page that contains a link to the code using the client's [[web browser]]. Upon this request, the web page and the program are transported to the user's machine using [[HTTP]]. When the page is displayed, the code is started in the browser and executes locally, inside the user's computer until it is stopped (e.g., by the user leaving the web page).
Line 7:
 
== Constraints ==
=== Client-Serverserver ===
The first constraint is that the system must be made up of clients and servers.
 
Line 25:
 
=== Code on demand ===
Code on demand (COD) is the only optional constraint in REST. It allows clients to improve their flexibility because it is the server whowhich decides how certain things will be done. For instance, with code on demand, a client can download a Javascript, Java applet or even a Flash application in order to encrypt communication so servers are not aware of any encryption routines / keys used in this process.{{Clarify|date=June 2024}}
 
However, using COD reduces visibility, whichhence isthe why this constraint is optionaloptionality. Also, not every API needs this kind of flexibility.
 
==See also==
Line 35:
== References ==
<references/>
 
{{Authority control}}
{{Use dmy dates|date=June 2024}}
 
{{DEFAULTSORT:Code On Demand}}