格式刷的一小步,原型工具的一大步

515 篇文章 6 订阅
422 篇文章 4 订阅

作为一个常用功能,简单、快速、易用的格式刷是我们评价一款原型工具的试金石。在原型设计中,使用样式管理是设计师、PM掌控整个项目外观的最优捷径,通过使用格式刷“刷”格式,设计们和PM们可以省去大量重复劳动、编辑的成本,快速复制样式以最高效率来保证设计风格一致。


就格式刷的易用性来说,不可否认的是,MS Office中word的格式刷给用户的使用习惯造成了深远而难以磨灭的影响。我们希望在使用格式刷时能看见真实的“刷子”,我们希望在原型制作中同样可以通过鼠标框选来进行批量样式复制,我们希望在复制样式时可以使用熟悉的快捷键。这些功能在现今市场上的热门原型设计软工具中是否均有体现呢?


Axure


很多产品经理都以为Axure没有格式刷功能,其实有,但是很隐蔽:




Axure中复制样式的步骤为:1.点击工具栏上的更多按钮。2.点击格式刷按钮。3.选中需要复制样式的组件。4.在格式刷窗口中勾选需要复制的样式。5.点击“复制”按钮。6.选中目标组件。7.点击“应用按钮”。





整个使用过程中我们并不能直观地使用真实的“刷子”;无法进行批量框选,只能通过点击多选进行样式复制;同时,Axure的格式刷功能并没有附带可供使用的快捷键。总的来说,Axure的格式刷功能较为复杂,不可否认,“格式刷对话框”提供了比Word更为强大的样式应用选择,可以定制自己需要复制的属性,但我们有些怀疑这样的选择是否“功能过度”。另外,格式刷作为一个常用功能,需要如此多的操作步骤也稍嫌麻烦。


Justinmind




Justinmind中的格式刷略显单调,确实提供了“刷子”,却没有提供“刷”的功能,即点击格式刷后使用者无法框选将样式应用到多个组件上。同时,也没有提供快捷键支持。当你面对大量组件却只能one by one地复制样式。


Mockplus


让我们来看看Mockplus的格式刷:




习惯于快捷键简单操作的用户,可直接使用“Ctrl+C”、“Ctrl+Shift+V”快件键快速进行样式复制;习惯于鼠标操作的用户也可直接使用类似Word中的“刷子”刷样式。同时,Mockplus的格式刷还支持鼠标批量样式复制,只需在格式刷模式下直接用鼠标框选,样式复制一键搞定。Mockplus不支持像Axure那样的风格属性选择,而是自动判断复制什么。从这点上说,不如Axure强大,但从另一个角度我们看来,对于追求效率的设计者来说,傻瓜方式是最舒服的。


Sketch


Sketch是一款矢量图绘制工具,也可以用来设计原型。其格式刷功能是通过“Cmd + Alt + C”和“Cmd + Alt + V”快捷键实现的,即我们无法通过直观的“刷子”操作完成样式复制。这样的设计一定程度上与Sketch的简洁风格相得益彰,当你需要复制样式时,两个快键键就能搞定,但这样的格式刷设计也确实造成了一些使用上的不方便,也给小白用户增加了门槛,初次使用时,因为对热键不熟悉,可能找不到办法。


总结:


当然,格式刷并非是衡量一款工具的唯一标准,但我们仍能从小小的格式刷中领略各种原型工具的不同设计理念。所谓不为工具所累,找到适合自己的的帮手。



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
为了编写一个 Java 的 SQL 格式工具,可以按照以下步骤进行: 1. 解析 SQL 语句,生成语法树。 可以使用开源的 SQL 解析器,例如 ANTLR 或 JavaCC,将 SQL 语句解析成语法树。语法树是一个树形结构,其中每个节点表示 SQL 语句的一部分,例如 SELECT 子句、FROM 子句等。通过遍历语法树,可以识别语句中的不同部分,例如关键字、表名、列名等。 2. 定义排版规则。 定义一组排版规则,例如缩进级别、换行符位置、关键字大小写等。这些规则可以根据个人喜好或标准规范进行定义。通常,可以将排版规则定义为 XML 文件或属性文件,以便灵活配置和管理。 3. 根据排版规则重新生成 SQL 语句。 在遍历语法树的过程中,根据排版规则对 SQL 语句进行重新排版。可以使用缩进符、换行符、空格等字符来格式化代码。例如,可以在 SELECT 子句中的每个列名之间添加逗号和空格,将 WHERE 子句中的逻辑运算符移到新一行等。 4. 输出格式化后的 SQL 语句。 将格式化后的 SQL 语句输出到控制台或文件中。 下面是一个简单的 Java SQL 格式工具的示例代码: ```java public class SqlFormatter { private String inputSql; private String outputSql; public SqlFormatter(String inputSql) { this.inputSql = inputSql; } public String format() { // 解析 SQL 语句,生成语法树 SqlParser parser = new SqlParser(); SqlNode rootNode = parser.parse(inputSql); // 定义排版规则 SqlFormatterConfig config = new SqlFormatterConfig(); config.setIndentSize(4); config.setKeywordCase(SqlFormatterConfig.KeywordCase.UPPER); // 根据排版规则重新生成 SQL 语句 SqlFormatterVisitor visitor = new SqlFormatterVisitor(config); rootNode.accept(visitor); outputSql = visitor.getFormattedSql(); return outputSql; } } ``` 在这个示例中,`SqlFormatter` 类接受一个 SQL 语句作为输入,并将其格式化为一个新的 SQL 语句。`SqlParser` 类用于解析 SQL 语句,生成语法树。`SqlFormatterConfig` 类定义了排版规则,例如缩进大小和关键字大小写。`SqlFormatterVisitor` 类是一个遍历语法树的访问者,它根据排版规则对 SQL 语句进行重新排版。最后,`SqlFormatter` 类返回格式化后的 SQL 语句。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值