WEB交互界面易用性设计和验收的指导性原则

2023-11-20

随着企业intranet和国际internet的迅速发展,越来越多的工作流程,商务交易,教育、培训、会议和讲座,以及个人消费娱乐都被转移到所谓的万维网(World Wide Web,以下简称WEB)上来了。与此相对应的是交互操作的复杂性越来越高。

  随着Browser/Server模式的日渐流行,很多操作都是在浏览器环境下的网页上完成的,并不是只有失效的链接和意外的出错才会使操作者感到烦恼,即便是一次完整的成功操作过程,也可能因为操作的繁复性过高或者使用上的不方便而给操作者带来不愉快的体验。

  本文试图阐述WEB交互页面设计的一些指导性原则,这些原则有利于避免发生不愉快的操作体验。这些原则是用户友好性的,是在完成同一种操作要求下,使用户最感到轻松、简单、舒适的WEB交互界面设计原则。我们假定我们讨论的WEB页面都是功能正常的,符合美学观点的。需要说明我们讨论的原则可能会和设计上的美学观点以及既有的功能设计有所冲突。如果发生这种情况,基于“实用的就是美的”观点,我们会建议您酌情放弃原先的美学观点与功能设计。

  1. 输入控件的自动聚焦和可用键盘切换输入焦点

  使用JavaScript实现页面加载完成后立即自动聚焦(focus)到第一个输入控件。可用TAB键(IE缺省实现)或方向键切换聚焦到下一个输入控件。

  输入控件指WEB页面表单(<form>)中显式的,需要用户进行修改、编辑操作的表单元素。对于这些控件,如果没有自动聚焦操作,不可避免的出现一次用户鼠标定位操作(如果用户此前处于键盘输入操作状态或鼠标定位后需要进行键盘输入操作,实际上是键盘鼠标切换操作)。如果鼠标定位后需要进行键盘输入操作,如果不能键盘切换输入焦点,那么不可避免的在切换输入焦点时需要反复的键盘鼠标切换操作,这是很繁琐的。

  如果实现了页面加载完成即自动聚焦到第一个输入控件,并且可以键盘切换输入焦点标定位操作,那么对于用户来说整个页面的输入操作可能都不需要鼠标操作,或次数较少,这是一种便利。毕竟频繁的键盘鼠标切换操作是比较累人的。

  对于有输入栏的对话框或网页,在不干预的情况下就应将当前控制焦点定位在待输入的输入栏上;如果输入栏在一般情况下不需要更改其中的内容,则应直接将焦点定在“确定”按钮上;在几个输入栏之间应支持tab,shift+tab切换操作,“确定”和“取消”应该是切换操作的终点,与具体所在位置无关。

  2.可用Enter(或Ctrl+Enter)键提交,确保和点击提交按钮的效果是相同的

  不要在提交按钮上加入onClick=”…”这样的JavaScript代码。

  用Enter键提交页面是原则1的自然延伸,而且这也是浏览器所缺省支持的。只所以单独列出来是因为实际上有些设计者设计的页面不能达到这种效果,结果导致使用Enter键提交和点击“确定”按钮提交带来的效果不一样。大部分情况下是设计者在“确定”按钮上加入了onClik=”…”这样的代码,通过点击“确定”按钮后,会执行一段JavaScript代码,比如对某些hidden类型的input元素设值。而使用Enter键提交时就不会执行这段代码。

  正确的做法是把这段代码移到表单标签<-form->中,以onSubmit=”…”属性引入。

  对于<textarea>表单元素,它会消耗Enter键,因此会使得Enter键提交失效。可以引入JavaScript代码捕捉Ctrl+Enter复合键,一旦捕捉到即执行表单的submit()方法。对于需要频繁提交的场合,比如BBS上,这种代码是很有必要的。

  3. 鼠标动作提示和回应

  对用户的鼠标定位操作,当移动到可响应的位置上时,应给予视觉或听觉的提示。

  动作回应的最简单形式就是鼠标ICON变成手状。浏览器只对具有href属性的HTML标签会自动进行这种变换ICON的行为。对于没有href属性(或没有设置href属性)的标签,可以通过JavaScript设置style属性的cursor为hand。

  目标区域发生变化是更为主动的响应形式。当鼠标指针移到目标区域,此时指针图形改变或文字颜色发生改变均能较大的减轻用户搜索定位目标区域的注意力负担。在按钮上增添直观的图形,尽可能的增大按钮面积;按钮间保持适当的距离,太近增加了用户区别它们之间界限以防误操作的负担,太远增加了用户搜索定位按钮的负担。

  4.尽可能早的在客户端完成输入数据合法性验证

  输入数据的合法性检验应该在客户端使用JavaScript进行验证。除非验证只能在服务器端完成,否则验证工作应在最早能完成的情况下进行。

  在客户端完成数据合法性验证,可以避免一次服务器请求和回复通讯,这种通讯是需要用户等待的,如果用户等待很长时间后从服务器返回的结果提示出现的错误是在输入时即可发现的,那么这种设计就是不友好的。诸如密码长度限制,用户名允许字符限制等等,显然应该在客户端提交前就应该进行验证。

  5. 根据应用场景决定在表单页面和提交后返回页面间是否使用中间过渡页面

  根据应用场景,决定是否显示接收表单页面(表单页面和提交后返回页面间的中间过渡页面),以及使用何种方式显示接收表单页面。

  表单页面和接收表单页面是大部分WEB交互操作赖以实现的配合模式。关于表单页面和接收表单页面的相互关系的设计,要做如下几个方面的考虑。

  一,对于需要频繁操作的场合,从操作便利和快捷性出发,尽可能的减少服务器和客户端交互次数,应该避免使用中间过渡页面。提交完毕直接返回原来的表单页面或默认页面。在这种情况下要考虑到数据安全和可恢复性。

  如果因为用户输入的数据不合格,需要重新输入,那么,去除中间页面,把错误信息直接显示在原表单页面上的设计方式,将是最简洁的处理方式。用户只需要根据错误提示进行更正即可。当然这样做稍微增加了编程负担。在表单接收页面上需要包含原表单页面的内容,而且输入数据项都必须用服务器端代码或客户端JavaScript设置成用户输入的值。为了开发快捷,可以这样做:表单页面和接收表单页面用同一个服务器端脚本页面实现。这个页面按如下流程完成原来两个页面的工作:

  页面脚本初始化

┃检查“提交”变量是否设置┠已设置,做数据验证┃ 验证通过->业务逻辑处理->使用包含页面方式或重定向方式返回到特定页面 ┃ 验证不通过->保存用户输入的数据->退出表单提交处理到表单页面流程中┗未设置,做表单页面流程,如有来自提交流程中产生的用户输入数据,则显示出来

  其中,使用包含页面方式返回到特定页面可以避免一次客户端重定向过程,比客户端重定向过程还要快捷和稳定一些。但是有些情况下因为代码变量冲突或其他原因,使用包含页面方式可能并不方便,这时候可以使用服务器端重定向技术,在ASP里是Server.Transfer方法,在Java Servlet里是RequestDispatcher.forward()方法。不要使用Response.Redirect或者HttpServletResponse.sendRedirect()这种客户端HTTP重定向方法。不使用中间过渡页面也就意味着用户不能后退浏览原先已经填好的表单页面,因为使用的是同一个URL。所以在验证不通过情况下保存用户输入的数据就是必不可少的。

  不使用中间过渡页面带来的另一个问题就是使用包含页面方式或服务器端重定向方式返回会使得URL和页面内容不能一一对应。对于用户可能会直接用这个URL(会收藏这个URL)访问返回页面的情况,他会发现实际上到达的是表单页面,不是他想要的那个返回结果页面。所以,去除中间过渡页面,确实会带来URL和内容含混不清的情况,因而不适合需要URL和页面内容一一对应的场合。

  二,从技术角度考虑,使用中间过渡页面能保证URL和页面内容一一对应,简化页面开发工作。

  为了保证页面内容总是和固定的URL联系起来,必须使用客户端重定向:

           提交                   业务逻辑处理  (中间过渡页面)

表单页面―>接收表单页面―>显示处理结果―>客户端重定向到特定页面

  客户端重定向分几种情况:1,使用HTTP Header重定向,Location:http://www.netall.com.cn,这种定向是最快的,在窗口一片空白的情况下就迅速访问(GET)另一个页面。这种方式实际上不能显示处理结果,只能说是向第一种快速重定向方式的一种折衷处理;2,HTML标签刷新,<--META HTTP-EQUIV="Refresh" CONTENT="5;URL=http://www.netall.com.cn">,这种定向比较友好,在这个页面加载完毕后访问另一个页面。很多设计者把这个作为一个技巧使用,在载入一个大页面前放置一个缓冲页面以避免用户乏味的等待;3,JavaScript重定向。由于是用代码控制重定向,可以做的更灵活。比如根据用户习惯,控制操作完毕后的转向流程。4,被动式的重定向。在页面上放置按钮或链接,由用户手动决定返回到特定页面。这种情况适合于处理结果的显示页面包含相当多的信息,需要用户仔细浏览,而决定下一步的操作。

  在使用中间过渡页面的情况下,不能再使用页面过期失效了。否则一旦出现错误,需要用户重新输入表单数据,用户就不能用后退按钮恢复此前填写的表单数据了。除非设计者有意禁止这种恢复。

  6. 防止表单重复提交处理

  对提交按钮点击后做变灰处理避免在网络响应较慢情况下用户重复提交同一个表单。使用页面过期失效避免用户后退浏览重复提交表单。

  有些复杂的应用会导致需要较长时间的等待才会返回处理结果。而在较慢的网络环境中,这种情况更是频繁发生。焦急等待的用户往往会重复点击提交按钮。这种情况是设计者所不希望看到的。

  使用JavaScript在点击提交按钮后使按钮失效变灰是一个最直接的办法(根据原则2这段代码应该放在<-form->标签里onSubmit=”…”做)。此外,在表单页面上,用服务器端脚本设置HTTP Header的Expires为立即过期可以保证用户没办法使用后退浏览恢复表单页面。注意这样做的代价可能是用户辛辛苦苦填写很长的内容,结果一旦操作失误就没法恢复。所以应该避免在包含<textarea>表单元素的页面上使用页面过期失效。

  应该说,更严格的方法是,服务器端脚本就应该具备抵抗重复提交的能力。例如,为这个表单分配一个唯一ID或一个使用一次即失效的验证码。此外,这个表单处理还应具有事务性质,如果表单不被接受,所做的改变还是能恢复的。在金融应用场合,重复提交同一笔交易是肯定不被允许的。能在重复提交中获利的一方总是会想办法绕过浏览器的限制,所以不能依赖于客户端的技术。

  7. 页面链接是打开新窗口、使用原窗口还是弹出窗口的原则

  一般而言,首页上链接可以使用target=”_blank”属性打开新窗口,而其他页面上的链接都应使用原窗口或弹出窗口。如果链接页面内容相对原页面来说不重要,是附属性质的,可以使用弹出窗口方式。

  一般情况下应该使用原窗口,把是否保留原窗口内容的权利留给用户。除非设计者相信原页面是如此重要,在用户发出点击指令后还有使用上的价值,以至于不能被随便更新或覆盖。一般来说,只有首页才会处于这样一个地位,用户在首页上打开一个链接后,一般还会在这个首页上去打开另一个链接。比如首页包含极多链接的门户网站,或者搜索引擎的搜索结果页面。Google.com以前的搜索结果页面上的链接是使用原窗口的,后来他们意识到用户会反复使用这个页面,而改成打开新窗口了。一般的网站如果首页链接不多,就不必使用新窗口,这是用户友好的设计原则。

  上述情形的一个极端情况就是新页面内容比起原页面内容的重要性差很多,以至于都未必需要打开一个新页面。这时候使用弹出窗口比较合适。用JavaScript弹出窗口有好几种:一个是window.open()函数。这里有个技巧。应该使用window.open()先打开一个空白窗口,再使用location.replace()用目标页面替换。这样做可以避免在打开新页面的过程中导致原页面失去响应。Window.open()将打开一个新的浏览器窗口进程,因此资源消耗比较大。另一个是由微软DynamicHTML规范中扩充的方法createPopup()。createPopup()可以创建无边框的弹出窗口,消耗系统资源较小。还有一个就是用页面中隐藏的层<-div>来模拟一个弹出页面。后两种可以使用JavaScript代码填充弹出窗口内容。如果需要下载网页作为其内容的话,需要微软DynamicHTML规范中的<download>标签。

  8. 尽可能少的排列可选项,尽可能少的安排操作步骤

  根据用户操作习惯安排尽可能少的操作菜单选项,同时要保证尽可能少的操作步骤。

  在不降低功能多样性的前提下减少菜单项和操作步骤是用户友好的设计。要做到这一点很不容易。要从用户出发考虑他们最频繁的操作是什么。正常情况下一个用户需要的操作总可以归类为5个以下的种类,如果出现更多的种类,那一定是没有针对用户兴趣去区分主次。一个用户同时有5个以上的强烈兴趣中心是难以想像的,走马观花似的随意点击浏览的用户,是不大可能在某个种类上进行深入的交互操作的。在这5个种类中,每个种类都可能有若干个可操作的二级种类。如果这些二级操作项是不可见的,那么意味着要做两次选择才能进入可操作页面。这就违背了“尽可能少的安排操作步骤”这一原则。如果使用JavaScript制作二级菜单,避免请求服务器,会好一些。如果二级菜单项总共不超过20个左右,不妨将二级菜单直接显示出来,比如放在左列一字向下排开,这样只需要一次选择到可操作项,更加明了方便。

  9. 操作逻辑无漏洞,保证数据是操作安全的

  多个页面间的操作和同个页面上的多个操作间的逻辑关系在设计上是安全和严谨的。保证不会出现不被允许的用户操作组合,至少不会因为用户的不适当的操作导致出错。

  这最典型的表现则是在页面上广泛采用的所谓联动下拉框设计。一个下拉框中允许的选项受另一个下拉框中的选择而变。另外一个例子是根据选择使表单元素有效或者失效。如果在多个页面间也要维持某种合法性逻辑,那么就需要服务器端脚本的参与。这样会使表单设计跟操作有关,应该说这不是一个好的设计。可以通过变更操作步骤顺序、组合方式来尽可能避免这种情况出现。

  操作逻辑的设计既要保证用户任意的输入不会导致错误,也要保证是用户输入的数据能购被安全处理。在Session控制下的表单中输入大幅文字可能会导致超时出错,这时候往往还伴随重定向过程,导致用户的长篇输入荡然无存。用JavaScript提醒用户已超时,请保存输入后重新提交,是一个好办法。某些表单元素如<-input type=”text”>接受ESC键清除数据,并且无法撤销,这也是很危险的。在中文输入法中常常使用ESC键清楚输入的码位,一旦不小心多按一下ESC就会使得输入数据消失。因此有必要用JavaScript禁用<-input>和<-textarea>的ESC键处理过程。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WEB交互界面易用性设计和验收的指导性原则 的相关文章

  • Soundcloud自定义播放器动态添加和播放歌曲

    我在用soundcloud自定义播放器 https github com soundcloud soundcloud custom player创建一个可以播放所有歌曲的播放器 我的网站 当我只放置任何曲目或帖子的静态网址时 这效果非常好
  • 如何在中线和文字之间留出空间?

    所以我想做的是在中间行和中间文本之间留出空间 这是我的小提琴 https jsfiddle net abqy4w1f https jsfiddle net abqy4w1f 所以我希望左侧和右侧距圆 10px 有什么建议吗 outter h
  • 使用 CSS3 计算值

    CSS3有没有办法实现这一点 height 100 110px 我的背景 你不能用纯 CSS 来计算它 正如 Litek 提到的 它不适用于所有浏览器 但是有一种组织方法可以处理这个问题 但是您需要将元素包装在另一个浏览器中 body he
  • 如何编写三元运算符(又名 if)表达式而不重复自己

    例如 这样的事情 var value someArray indexOf 3 1 someArray indexOf 3 0 有更好的写法吗 再说一遍 我并不是在寻求上述问题的答案 只是一个在三元运算符表达式中可能重复操作数的示例 就我个人
  • 单击其他 div 时切换类中的单个元素 Jquery

    我正在尝试为 WordPress 构建设置一个简单的评论切换 CSS div class commenttoggle p class popcom Show Comments p Clickable Button div div class
  • 使用 html2canvas 将 highcharts 图表渲染为 pdf 在 IE 和 Firefox 上不起作用

    我们使用 html2canvas js 和 html2canvas svg js 版本 0 5 0 beta1 以及 highcharts js 将圆环图下载为 pdf 这在 Chrome 中按预期工作 但在 IE 和 Firefox 中不
  • PMT功能 支付方式

    下面是我计算贷款付款的函数 就像在 Excel 中一样 我需要添加另一个参数 即付款类型 function PMT ir np pv fv ir interest rate per month np number of periods mo
  • 如何使使用 CSS :after 元素创建的文本可选择?

    我正在使用 css 创建文本 after 但我无法选择生成的文本 例如用于复制和粘贴 是否可以使其可选择 div foo div div after content 123 sample http jsfiddle net jfbc4 2
  • 使用 ChartJS v2.0 自定义图例

    我正在尝试在 ChartJS v2 0 中创建自定义图例模板 在 ChartJS v1 中 我只是向新的 Chart 构造函数添加了一个属性 例如 legendTemplate ul li span style background col
  • 如何使用 Material UI 制作一个圆形复选框?

    我尝试匹配的设计要求复选框为圆形 我正在使用 Material UI 和 React 边框半径不起作用 因为实际图标的边框不是可见复选框的边框 我不能只使用像 Font Awesome 这样的东西 因为它需要实际检查和取消检查 Curren
  • 弹出窗口显示来自 php 和 javascript 的结果

    我正在尝试实现 javascript 来显示 php 的结果 基本上 我有一个登录页面 对于登录失败 我希望结果显示在弹出窗口中 而不是仅仅用 php 回显它们 我尝试实现警报框 但看起来我错过了一些东西 成功登录将被重定向到logged
  • 在 Codeigniter 中使用/嵌入 Ember js

    我即将开始开发一个 Web 应用程序 使用 Ember js 作为前端技术 使用 Codeigniter 作为后端 我遇到的问题是如何在 codeigniter 中嵌入或使用 ember js 可以通过 Web 服务从 codeignite
  • 在 JavaScript onClick 事件处理程序中转义双引号

    下面的简单代码块可以在静态 HTML 页面中提供 但会导致 JavaScript 错误 您应该如何转义中嵌入的双引号onClick处理程序 即 xyz 请注意 HTML 是通过从数据库中提取数据动态生成的 其中的数据是其他可能带有单引号或双
  • 在 JavaScript 中将整数数组转换为字符串数组

    我有一个如下所示的数组 var sphValues 1 2 3 4 5 然后我需要转换上面的数组 如下所示 var sphValues 1 2 3 4 5 我怎样才能转换 我用它来自动完成 您可以使用map https developer
  • 使用 CSS 更改文本选择颜色?

    我目前正在开发一个网站 我想更改文本选择颜色 我已经有点工作了 这是我的样式表中的代码 部分 selection background FF0099 color black text shadow none moz selection ba
  • jQuery Deferred - 向 Deferred 合约添加回调

    我正在尝试在现有 Deferred 的状态设置为成功之前向其合约添加另一个异步调用 不要尝试用英语解释这一点 请参阅以下伪代码 when ajax url someUrl data data async true success funct
  • 是否可以使用 JavaScript 检查加载的图像大小

    这是一个完全愚蠢的问题 但我只是想澄清我的疑问 当图像加载时 我们可以使用以下命令检查加载状态onload or oncomplete事件 但我只是想知道有多少部分图像是使用 JavaScript 加载的 真的可能吗 我的问题是 我们可以从
  • 同步 jQuery 动画

    我正在尝试同时获得淡入 不透明度切换 和边框淡入 使用jquery 动画颜色 http www bitstorm org jquery color animation 同时开火 但我遇到了一些麻烦 有人可以帮忙查看以下代码吗 fn exte
  • Selenium - 运行 javascript

    我有一个愚蠢的问题 如何运行位于测试站点上的脚本 我可以运行警报 但我无权访问我编写的脚本 我尝试过 runscript geteval 没有任何效果 由于 Selenium 是用 JavaScript 编写的 因此 window 对象会移
  • 如何找到我的 typescript/react 模块的声明?

    我对前端技术非常 非常 陌生 特别是 React 和 TypeScript 当尝试做一件简单的事情 即使用反应组件时 我的问题出现了https github com ckeditor ckeditor5 https github com c

随机推荐

  • 对wangeditor进行扩展---- 源代码

    看到有人对我做的WangEditor比较感兴趣 问了一些问题 但由于我并不常来 所以就没能及时答复 抱歉了 未避免以后类似问题发生 我将我修改的wangeditor js直接发在这里 有兴趣的可以下载后自己分析 希望能帮到需要的人 扩展后的
  • 【Docker安装部署Kafka+Zookeeper详细教程】

    Docker安装部署Kafka Zookeeper Docker拉取镜像 Docker拉取zookeeper的镜像 docker pull zookeeper Docker拉取kafka的镜像 docker pull wurstmeiste
  • 2022广东省安全员A证第三批(主要负责人)考试试题模拟考试平台操作

    题库来源 安全生产模拟考试一点通公众号小程序 2022广东省安全员A证第三批 主要负责人 培训试题为广东省安全员A证第三批 主要负责人 考试100题全真模拟题 2022广东省安全员A证第三批 主要负责人 考试试题模拟考试平台操作依据广东省安
  • C++ Builder建立COM服务程序的方法

    转 http blog csdn net jaminwm article details 463953 说明 最近学习关于用C Builder建立Activex插件的使用 在网上找到了一些教程 这也是找到这篇文章 但是里边一些细节的东西说明
  • 用rsync同步文件夹

    用rsync命令在不同机器间同步文件夹 及hexo deployer rsync一个BUG的规避方法 命令格式 例如 要把本机public目录与服务器上的 home blog目录同步 用以下命令 rsync delete avz e ssh
  • 对接新浪股票交易接口api需要注意哪些细节 ?

    API接口是一个很抽象的概念 有许多接口 在实际应用中 会产生各种不同的影响 所以 在接入新浪股票交易接口api的过程中 需要注意哪些细节 首先是系统的联结 随着软件的不断发展 很多的软件都被分解成了不同的模块 但在具体的设计中 每个API
  • 无法打开源文件<sys/time.h>,但是用time.h编译就会出错,缺少gettimeofday()

    因为sys time h是uinx系统下的库文件 而现在使用的平台是在windows 由于未指明程序运行的系统 导致找不到对应的头文件 需要重新实现gettimeofday 函数 define WIN32 include
  • Insertion插入排序

    原谅我接着偷懒 是真的没有什么写的内容了啊 好怀疑他们那些大佬是怎么那么多的文章和技术分享的 自闭中ing 最好情况的时间复杂度是 O n 最坏情况的时间复杂度是 O n2 然而时间复杂度这个指标看的是最坏的情况 而不是最好的情况 所以插入
  • 6-4 求自定类型元素的平均 (10分)

    6 4 求自定类型元素的平均 10分 本题要求实现一个函数 求N个集合元素S 的平均值 其中集合元素的类型为自定义的ElementType 函数接口定义 ElementTypeAverage ElementType S intN 其中给定集
  • (一)轻松工作必学:windows bat脚本语法

    记得在初中的时候 电脑刚刚进入了我们的生活 有一天同学发过来一个 xxx bat 的文件 我双击打开之后 电脑就很快就关机了 当时的我还是一头雾水 后来知道这只是一个只需一行代码的批处理文件 批处理文件是一种简化的脚本 可以帮助我们运行一些
  • Node服务器-express框架

    1 Express认识初体验 2 Express中间件使用 3 Express请求和响应 4 Express路由的使用 5 Express的错误处理 6 Express的源码解析 一 手动创建express的过程 1 在项目文件的根目录创建
  • 爬虫从入门到放弃——组件的使用和定制

    以前我们提到了WebMagic的组件 WebMagic的一大特色就是可以灵活的定制组件功能 实现你自己想要的功能 在Spider类里 PageProcessor Downloader Scheduler和Pipeline四个组件都是Spid
  • STM32 HAL——GPIO

    HAL的代码规范建议 以下内容是我自己参照HAL做的总结 如果公司有固定的编码规范 就跟公司保持一致 如果没有 那就推荐和所用库保持一致 注意 因人而异 并不具有普遍适用性 HAL库有如下代码规范 1 目录名除了专有词汇外 统一是单词首字母
  • IDEA去除掉虚线,波浪线,和下划线实线的方法

    推荐一下个人的公众号 终码一生 专注于Java技术学习 开源项目分享和常见问题解决等 喜欢的小伙伴可以关注下 感谢大家的支持 初次安装使用IDEA 总是能看到导入代码后 出现很多的波浪线 下划线和虚线 这是IDEA给我们的一些提示和警告 但
  • 【机器学习】核函数

    有任何的书写错误 排版错误 概念错误等 希望大家包含指正 核方法 核技巧 非线性分类问题是指通过利用非线性模型才能很好地进行分类的问题 如图 1 1 1 所示 表示正样本 表示负样本 显然无法用直线 线性模型 将正负样本正确分开 但是可以用
  • android service 返回值,Android平台调用Web Service:线程返回值(示例代码)

    接上文 前文中的遗留问题 对于Java多线程的理解 我曾经只局限于实现Runnable接口或者继承Thread类 然后重写run 方法 最后start 调用就算完事 可是一旦涉及死锁以及对共享资源的訪问和随时监控线程的状态和运行顺序和线程返
  • macOS M2使用conda配置pytorch环境

    一 conda 首先我们需要有conda miniconda的安装配置流程可以看这个http t csdn cn ShcNb 二 进入官网 https pytorch org 选择对应的版本 复制下面的命令 conda install py
  • 2023年1月手机热门品牌型号排行榜(手机行业趋势分析)

    近期苹果降价引起人们的关注 并且优惠较大 iPhone 14 Pro系列在苹果官方授权渠道均降价 线下授权门店普遍降价700元左右 iPhone Pro与Pro Max作为苹果的旗舰产品 通常被认为是更为保值的机型 一般来说 不会在短期内大
  • ueditor编辑器右键粘贴、复制不能用的解决办法

    ueditor编辑器功能非常强大 现在比较多的网站页面或者系统中都集成了百度的ueditor编辑器 使系统编辑文本变得非常容易 但是默认状态下 在使用google内核的浏览器时 会出现右键粘贴复制都不能用的情况 会提示使用ctrl v粘贴
  • WEB交互界面易用性设计和验收的指导性原则

    随着企业intranet和国际internet的迅速发展 越来越多的工作流程 商务交易 教育 培训 会议和讲座 以及个人消费娱乐都被转移到所谓的万维网 World Wide Web 以下简称WEB 上来了 与此相对应的是交互操作的复杂性越来