首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在软件工程中使用提示的意思是什么?

在软件工程中使用提示的意思是什么?
EN

Software Engineering用户
提问于 2012-05-12 21:30:14
回答 3查看 2.4K关注 0票数 4

我现在已经在很多地方和很多上下文中看到了这种情况,例如在SQL中。

我不能定义“提示”的含义,因为它显然有一些应用程序,或者是更大的设计模式/技术的一部分。

在软件工程中使用的提示究竟是什么?

EN

回答 3

Software Engineering用户

发布于 2012-05-12 22:44:10

提示的概念是表示特定API 合同的一种特殊方式,或者更准确地说,是缺少提示。基本思想是,应用程序开发人员将一些信息传递给底层系统/库,而不保证会考虑到这些信息。

我个人喜欢在用于OpenGL API的glHint文档中描述这一点的方式:

指定具体的实现提示.指示所需行为的符号常量。

  • 注意想要的单词--这就是重点。Application表示希望实现能够以特定的方式运行。欲望不是强制性的要求,可以忽略。

维基百科关于SQL提示的文章提到:

甲骨文通过在以+符号开头的查询中使用巧尽心思构建的注释来实现提示,因此不会影响SQL兼容性。

  • 上面的注释意味着实际上具有相同的“忽略权限”,因为不支持Oracle特定提示的数据库将执行不支持这些提示的SQL语句。
票数 13
EN

Software Engineering用户

发布于 2012-05-13 00:09:28

在SQL中,您没有指定如何做事情(与Java、C#、VB等语言相反);而是指定结果应该是什么。例如,“我希望所有的学生都有A级”

代码语言:javascript
运行
复制
SELECT * FROM students WHERE grade = 'A'

这是一个非常简单的情况;然而,在复杂查询中,数据库引擎通常不知道执行查询的最佳方式是什么。例如,如果您知道某个索引会比另一个索引更好地加快查询速度,则可以给出提示,并告诉数据库引擎使用此索引。

这不是编写SQL语句的标准方法。这是一种优化慢速查询的高级技术。如果您是SQL编程新手,那么首先可以安全地忽略这些提示。

更新

一个完全不同的例子是基于向量的字体的呈现(比如TrueType字体)。渲染包括将基于矢量的字符形状描述转换为像素模式。例如,如果呈现"m“,可能会出现问题。由于四舍五入的影响,"m“的两个弧可以得到不同的宽度,这取决于产生的大小。如果产生的"m“宽度为偶数像素数,则这两个弧不能具有相同的宽度。因此,对"m“的描述有一个提示,提示渲染器使左侧和右侧与之相同。例如,如果计算出的宽度将测量8个像素,则渲染器决定将其设置为7或9像素宽。

三米S,宽8,9,7像素

代码语言:javascript
运行
复制
0·00·00·    0·00··00·    000·00·
00··0··0    00··00··0    0··0··0
0···0··0    0···0···0    0··0··0
票数 6
EN

Software Engineering用户

发布于 2012-05-12 22:38:15

它的意思和英语中的意思是一样的:提示是一条线索。例如,一些处理器通过预测是否使用给定的分支来提高性能。如果处理器猜错了,就必须备份并重新填充指令管道;如果猜测正确,代码就会快速运行,因为管道中没有停顿。程序员或编译器通常可以判断是否可能出现分支,并可以向处理器提供提示,以提高其猜测的准确性,从而提高性能。因此,无论是否有提示,处理器都会得到正确的结果,如果它的分支预测100%是错误的,它甚至会得到正确的结果。但是精确的分支预测可以加快速度,并且提供一个好的提示可以提高这种准确性。

票数 5
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/148380

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档