问题如下图描述。
我现在的操作,都是用鼠标点击到“列表项”,然后鼠标点击复制为应用块才能达到目的,有没有更好的方式呢?或者说,这里 ctl+shift+c,优先应该是复制列表项块,而不是段落块?
问题如下图描述。
我现在的操作,都是用鼠标点击到“列表项”,然后鼠标点击复制为应用块才能达到目的,有没有更好的方式呢?或者说,这里 ctl+shift+c,优先应该是复制列表项块,而不是段落块?
我们理一下这个操作逻辑:
当选择一个段落块进行复制引用时,预期就是这句话,实际也是,这个符合操作逻辑;
当选择一个标题块进行复制引用时,预期是标题即标题下方块,实际也是,这个符合操作逻辑;
当选择一个列表项进行复制引用时,情况就有一些复杂:
现在是参考段落,假设是参考标题,效果是什么呢?
我理解 D 说的操作逻辑,更偏向于系统实现逻辑,当我们复制引用是段落块时,所有的地方都应该是段落块,否则程序逻辑上是不自洽的。但我想表达的是,一个产品,更要考虑用户的使用场景,在场景中保持操作逻辑一致性会更加的重要。(就像关于列表缩进的处理一样,保持实现逻辑的好处小于场景逻辑,前者更偏向于程序员视角,后者偏向于用户视角)
如上,一家之言,望参考,也期待更多人的讨论和探讨~
我觉得原则上用户的用法从产品设计上(注意这里不谈代码实现)不应该做假设,也就是你提到的这两点不一定是其他用户的预期,比如直接复制的是列表项引用,那么扩充扩充的时候就会有问题,这在列表项块和标题块混用的时候有明显区别,也就是如下使用场景:
这样使用的用户不在少数,所以我们正是从用户的实际使用场景出发来考虑这个问题的,并不是仅仅为了程序逻辑的自洽和一致,程序最终是以产品交付给用户使用,不是开发者自我炫技的摆设。
因此在这个设计点上我觉得你的提议考虑不够充分全面,并且以得到了一些比较奇怪的推论,所以这里我必须说明一下。
以上没有冒犯的意思,只是就事论事。
感谢 D 大认真反馈!没有感到冒犯,都是正常的讨论~
“不一定是其他用户的预期”,这点我承认哈,如上建议确实只能代表我自己的使用习惯,我对其他人的使用方式了解甚少,但这个毕竟不是我作为一个用户需要特别关心的,而是做产品的应该多关注的。所以如果其他用户有不同的用法,你们是比我更清楚的。
“我们正是从用户的实际使用场景出发来考虑这个问题的”,那我就放心了。思源最终交付给用户是产品,以产品的使用场景来构建产品逻辑,我认为没有任何问题。
关于我提出的这个问题,虽然我们今天还达不成一致的意见,但至少能拿出来讨论,并作为产品后续的一个关注点,我觉得还是有价值的!
Spark 是 UC Berkeley AMP lab 所开源的类 Hadoop MapReduce 的通用并行框架。Spark 拥有 Hadoop MapReduce 所具有的优点;但不同于 MapReduce 的是 Job 中间输出结果可以保存在内存中,从而不再需要读写 HDFS,因此 Spark 能更好地适用于数据挖掘与机器学习等需要迭代的 MapReduce 的算法。
百度(Nasdaq:BIDU)是全球最大的中文搜索引擎、最大的中文网站。2000 年 1 月由李彦宏创立于北京中关村,致力于向人们提供“简单,可依赖”的信息获取方式。“百度”二字源于中国宋朝词人辛弃疾的《青玉案·元夕》词句“众里寻他千百度”,象征着百度对中文信息检索技术的执著追求。
微软是一家美国跨国科技公司,也是世界 PC 软件开发的先导,由比尔·盖茨与保罗·艾伦创办于 1975 年,公司总部设立在华盛顿州的雷德蒙德(Redmond,邻近西雅图)。以研发、制造、授权和提供广泛的电脑软件服务业务为主。
确认过眼神后的灵魂连接,站在链在!
Caddy 是一款默认自动启用 HTTPS 的 HTTP/2 Web 服务器。
Postman 是一款简单好用的 HTTP API 调试工具。
这是一个不能说的秘密。
微服务架构是一种架构模式,它提倡将单一应用划分成一组小的服务。服务之间互相协调,互相配合,为用户提供最终价值。每个服务运行在独立的进程中。服务于服务之间才用轻量级的通信机制互相沟通。每个服务都围绕着具体业务构建,能够被独立的部署。
FreeMarker 是一款好用且功能强大的 Java 模版引擎。
Swift 是苹果于 2014 年 WWDC(苹果开发者大会)发布的开发语言,可与 Objective-C 共同运行于 Mac OS 和 iOS 平台,用于搭建基于苹果平台的应用程序。
ReactiveX 是一个专注于异步编程与控制可观察数据(或者事件)流的 API。它组合了观察者模式,迭代器模式和函数式编程的优秀思想。
本标签主要用于分享网络空间安全专业的学习笔记
大数据(big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。
NetBeans 是一个始于 1997 年的 Xelfi 计划,本身是捷克布拉格查理大学的数学及物理学院的学生计划。此计划延伸而成立了一家公司进而发展这个商用版本的 NetBeans IDE,直到 1999 年 Sun 买下此公司。Sun 于次年(2000 年)六月将 NetBeans IDE 开源,直到现在 NetBeans 的社群依然持续增长。
TextBundle 文件格式旨在应用程序之间交换 Markdown 或 Fountain 之类的纯文本文件时,提供更无缝的用户体验。
子曰:“工欲善其事,必先利其器。”
Unity 是由 Unity Technologies 开发的一个让开发者可以轻松创建诸如 2D、3D 多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。
Rust 是一门赋予每个人构建可靠且高效软件能力的语言。Rust 由 Mozilla 开发,最早发布于 2014 年 9 月。
上帝为你关上了一扇门,然后就去睡觉了....努力不一定能成功,但不努力一定很轻松 (° ー °〃)
Pipe 是一款小而美的开源博客平台。Pipe 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。
这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!
持续集成(Continuous Integration)是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。
Bug 本意是指臭虫、缺陷、损坏、犯贫、窃听器、小虫等。现在人们把在程序中一些缺陷或问题统称为 bug(漏洞)。
Jenkins 是一套开源的持续集成工具。它提供了非常丰富的插件,让构建、部署、自动化集成项目变得简单易用。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法 。
应用程序编程接口(Application Programming Interface)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
“梦想从学习开始,事业从实践起步” —— 习近平
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于