首页    期刊浏览 2024年09月29日 星期日
登录注册

文章基本信息

  • 标题:How can the expected interactions between caller and implementation be guaranteed?
  • 本地全文:下载
  • 作者:Rober t F. Sproull ; Jim Waldo
  • 期刊名称:ACM Queue (Online): tomorrow's computing today
  • 电子版ISSN:1542-7749
  • 出版年度:2014
  • 卷号:12
  • 期号:1
  • 语种:English
  • 出版社:Association for Computing Machinery
  • 摘要:Robert F. Sproull and Jim Waldo When you call functions in an API, you expect them to work correctly; sometimes this expectation is called a contract between the caller and the implementation. Callers also have performance expectations about these functions, and often the success of a software system depends on the API meeting these expectations. So there's a performance contract as well as a correctness contract. The performance contract is usually implicit, often vague, and sometimes breached (by caller or implementation). How can this aspect of API design and documentation be improved? Any significant software system today depends on the work of others: sure, you write some code, but you call functions in the operating system and in a variety of software packages through APIs that cut down on the amount of code that you must write. In some cases you even outsource work to distant servers connected to you by cranky networks. You depend on these functions and services for correct operation, but you also depend on them performing well enough that the overall system performs well. There is bound to be performance variation in complex systems that involve paging, network delays, sharing resources such as disks, and so on. Even in simple setups such as a stand-alone computer with all program and data in memory, however, you can be surprised when an API or operating system doesn't meet performance expectations.
国家哲学社会科学文献中心版权所有