编注:本文作者是著名效率应用 Pin 的开发者钟颖,Pin 作为苹果的年度十佳 App 之一,今年发布 3.0 大版本,随后钟颖也写了一篇文章介绍了 Pin 3.0 的新功能以及他做这款产品背后的想法。

JSBox 是他的新作品,在这篇文章里,钟颖仍将以通俗易懂的方式向我们介绍 JSBox 的强大功能以及设计思路。

JSBox 是什么

JSBox 是一个可以用来运行 JavaScript 脚本的 iOS 应用,你可以通过他来执行标准的 JavaScript 脚本。

这种执行不是指跑在浏览器上,而是执行在一个完全原生的环境,效率很高。

并且我们提供了很多 iOS 原生的接口,这意味着你可以通过他做很多事情,包括但不限于:

写一个用来查询汇率的脚本;

写一个用于计算小费的脚本;

通过接口实现一个小小的应用,提供丰富的界面;

写一个文本收藏工具,用于收藏常用的文字;

写一个下载 Twitter 视频的小工具;

……

其实 JSBox 是完完全全可编程的一个应用,他能做很多事情,所限制产出的往往只是动手能力。

为了更好的编写脚本,我们甚至提供了配套的 VSCode 插件,用于更高效率的编写和测试 JSBox 脚本,可以做的桌面端编写 iOS 端实时刷新。因为我们始终相信无论移动端的编辑器做的多么强大,编写代码的效率也始终被桌面端碾压。

所以,JSBox 并不是像 Pythonista 那样为了编写代码而生的应用,编写代码只是实现功能的手段,我们的一切最终都是为了效率的提高。

有趣的示例

我希望通过一些 GIF 图片来展现一下 JSBox 实现的一些有趣的样例,借此能对 JSBox 有一个认识(请忽略 GIF 质量带来的色差和卡顿)。

从 App Store 获取资源:

从 App Store 获取资源

以图搜图:

以图搜图

汇率转换:

汇率转换

小费计算器:

小费计算器

拼音转换:

拼音转换

当然,JSBox 能做的事情还有很多,我们之后将会提供更多的样例脚本和更详细的教程。

为什么要开发这个应用

其实 JSBox 诞生和 Pin 3.0 有着千丝万缕的关系。

关注过 Pin 这款应用的朋友们可能知道,我们在 3.0 版本里面引入了执行 JavaScript 脚本的能力,尽管 Pin 不是第一个这么做的,也不是唯一一个这么做的,但之后我们还是在审核方面碰到了很多来自 Apple 的阻碍。

熟悉 iOS 平台的朋友可能知道,审核条款里面有一项就是关于应用不能下载执行代码的,但是 JavaScript 这种不需要编译的脚本语言,却处于一个模糊的区域。有很多应用提供了类似的流程却没有问题,我想一个可能的点是:Pin 之前作为一个效率应用,提供了太过方便的脚本安装方式。

这导致 Apple 认为这是不安全的,用户不能从外部安装一个脚本。

在长期提交修复不得通过之后,我不得不重新思考了这个问题,或许我应该做一个完完全全的编程类应用,这个应用并不提供很多方便安装脚本的方式,取而代之的是提供一些接口,让用户自己去实现需要的功能。

这样一个完完全全的编程类应用是教育类的,正如 App Store 推荐过的很多编程类应用一样,用户在使用一个脚本的时候,完全知道自己正在做什么。

在经过一段时间的重写和内测之后 JSBox 诞生了,这个应用里面,我们并不提供直接的功能,而是提供一些接口(能力),由用户去组织他需要的功能。

JSBox 是为谁而做的

显然,这样的应用不会是一个适应所有人的应用,他的小众程度可能要比 Pin 这样的剪贴板应用还要严重。但是这些并不成为阻止我开发这个应用的决心,因为我非常清晰地知道,我自己很需要这种应用。

随着人们对移动端生产力需求的提高,我们往往会花很多精力投入在生产力建设上面,希望通过效率工具来武装自己,近年来 Workflow 一类应用的崛起充分挖掘了这方面的需求。

但是依然有这么一个问题困扰着我,我这一类人是不适合在 Workflow 上面拖来拖去的,因为 Workflow 提供的并不是完备的编程能力,这对我这个程序员来说并不是一个完美的状态,我希望我的效率工具是可以完全由自己决定他的功能,他的界面,他的一切。

你可能会说,那就开发一个应用不就好了?但是有些需求的大小是不足以撑起一个应用的,例如:把最近拍的几张照片拼接起来,分享出去。这样规模的需求非常适合用 JSBox 这样的工具来实现,你只需简单的几行脚本,就能提供类似的功能。

与上述描述最接近的产品形态,其实是微信的小程序。但是微信小程序其实不是设计给我这种效率狂的,更确切地说,微信小程序有很多硬伤是我接收不了的:

微信不会提供一个 URL Scheme 让你启动一个小程序;

你永远也无法通过微信小程序实现一个分享面板上的扩展;

有很多小程序基于某些原因微信是不会让你上线的;

有很多接口小程序微信基于自己的考虑而不会提供。

如果你会写一点代码,希望完全定制自己的工具,希望有比 Workflow 更灵活的编程模式,以及极其方便的各种启动方式,那 JSBox 就是为你做的。

如果你虽然不懂代码,但是非常愿意折腾,有较强的动手能力来使用别人编写好的代码,希望通过技术手段来提升自己生活、工作的效率,那 JSBox 也是为你做的。

JSBox 不是为这一类人做的:希望应用打开后就是一个完美的状态,有你各种想要的功能。对不起,这不是 JSBox 要做的事情。

JSBox 究竟能做什么

上面举了一些 JSBox 能做到效果的例子,但是其实能做到什么程度并不是几句话可以说的清楚的,因为一个编程工具理论上他能做到的事情,是取决于用他编程的人。

我们在 JSBox 里面大概内置了 7 个样例脚本,但这是远远不够的,甚至不能作为了解接口设计的必备内容,除此之外我们还准备了两个内容用于提供教程和样例:

同时欢迎各路对编程感兴趣的朋友来完善这个项目,尤其当你发现自己的一个需求用 JSBox 实现不了时,请一定通过应用内的反馈方式联系到我,合理的需求都会被尽快满足。

出于审核限制的原因,我们并不会将上述的一些样例代码以在线下载的方式集成到 JSBox 应用内,但你完全可以自己实现一个下载工具把脚本安装进去。

下一个里程碑

上面说了很多关于 JSBox 适合的人群,其实还有一类人群是目前没有很好的照顾到:完全没有任何编程经验的新手。

这个其实算是一个愿景了,因为我已经在这个行业工作多年,深知传播编程并不是一件容易的事情,但这件事情的重要性正在不断地变高。

可能下个十年,编程几乎会成为人人都会的一种基础能力,就像英语那样成为世界性的语言。

我也始终相信,兴趣永远是最好的老师,任何事情都是如此,这句话其实是最近玩 Human Resource Machine 有感而发(顺便说下这个游戏实在是太棒了必须推荐)。

所以在之后,JSBox 里面将会提供一个循序渐进的学习环境,引导用户一点点地去实现一个个的功能。这很难,但我对此很感兴趣。

关于售价

我近一年的探索基本都和 JSBox 有关,这是我真正想做的事情,这个意义远远地超过了他能带来多少收入,当然,收入越多越好。

他的售价不会太便宜也不会太贵,目前首周促销的价格是 30 元人民币,之后将恢复 40 元人民币的售价,同时如果你通过 18 元购买过 Pin 的话,可以通过补齐应用套装来优惠 18 元。

后记

关于为什么要做这么一款应用,我其实还有一个私心。

我始终都记得童年时代用电子词典玩各种程序的日子,那段时光很美好,也在一定程度上培养了我们的兴趣。

当时的电子词典上也有各种各样的编程平台,例如 GVBASIC/LAVA/BBASIC,尽管童年一去不复,这些名字也已经被人所遗忘,但是对于编程的热情却不会停止,指引我们在这件事上做出更有趣的东西。

我始终相信,这些驱动我们去不断折腾的精神,是让世界变得更美好的原因之一。所以我们为真正的极客,做了这个应用。

评论送码(已结束)

在评论区说说你对 JSBox 有什么期待或者建议,也可以聊聊你对我的另一款应用 Pin 的使用感受,分享几个你常用的动作。

本周五(12 月 22 日)我们将从评论区抽 10 位认真评论的读者,各赠送 JSBox 兑换码一枚。

恭喜 guyao、jerryisme、Ontides、evannoah、Thence、一颗心、Nicked、鸡蛋仔、Mosaic、wolola 各获得 JSBox 兑换码一枚。请在账号设置打开私信,并注意查收。

jsbox 导入_JSBox: 一个创造工具的工具相关推荐

  1. jsbox 导入_JSBox - 体验

    在写这篇文章之前,本觉得没有必要再以「体验」为名介绍我对 JSBox 的感想了,然而我发现很多人不太了解或不太愿意了解 JSBox 为什么出现,所以我希望再给广大 Pin 用户「安利」一次,说说那些你 ...

  2. jsbox 导入_JSBox 全新版本,界面编辑器上线

    前情提要 如果你还不知道 JSBox 是什么,这里有一篇文章可以供你参考:JSBox: 一个创造工具的工具. 简单说,JSBox 是一个为效率工具爱好者设计的 iOS 应用,你可以用它编写.运行标准的 ...

  3. jsbox 导入_JSBox脚本分享

    JSBox脚本制作共享是一款令人十分震撼的脚本制作开发设计制做专用工具.jsbox安卓可以让客户能够独立开发设计制做自身要想的作用脚本制作,JSBox脚本制作共享有着许多 脚本模板,因此 jsbox实 ...

  4. jsbox 导入_JSBox 与捷径在 iOS 13 的重要更新

    Matrix 精选 Matrix 是少数派的写作社区,我们主张分享真实的产品体验,有实用价值的经验与思考.我们会不定期挑选 Matrix 最优质的文章,展示来自用户的最真实的体验和观点. 文章代表作者 ...

  5. jsbox 导入_jsbox脚本大全叉叉已添加后用

    确切的限制取决于可用的系统资源和使用的控件类型 setWshShell=WScript.CreateObject("WScript.Shell") '对话框标题 alerttitl ...

  6. jsbox 导入_JSBox 插件「Launch Center」发布

    特性非常丰富的启动库 支持剪切板参数 支持 iCloud 自动同步 多达 5 种显示样式 支持 12 种浏览器 支持诸如背景透明.下拉关闭.高度跟随等多种效果 支持自动更新 支持所有用户的上传.编辑. ...

  7. jsbox 导入_JSBox这款APP怎么用?简单使用教程!脚本分享

    打开JSBox ,所有脚本界面可以看到已经添加的脚本列表,软件内置了多个样本脚本.点击右上角的"+"号按钮,可以新建脚本.你如果熟悉JavaScript ,可以"奋笔直书 ...

  8. jsbox 导入_jsbox

  9. 自己写的python软件可以在哪发布-如何发布一个Python命令行工具

    本文简介 上次写的一个终端里面斗鱼TV弹幕Python版本和Ruby版本,并且发布到PIP和RubyGems上面.在发布PIP包的时候,居然Google不到一篇可以非常好的讲解这个流程的文章.于是整理 ...

最新文章

  1. 计算机图形学三大应用领域,计算机图形学作业
  2. svn上crlf怎么设置_svn如何设置svn:ignore
  3. boost::geometry::split_rings用法的测试程序
  4. c语言注释部分两侧的分界符号分别是,c语言中界定注释的符号分别是什么?
  5. ajax上传文件到servlet
  6. vscode终端进程已终止 - 问题采集
  7. 安兔兔发布9月份Android性能榜:855霸榜,华为竟垫底
  8. EventBus的使用
  9. 查看gpio状态_基于Arduino开发,借助blinker平台,让NodeMCU实现8路继电器APP端状态监视和控制...
  10. PHP正则表达式详解(三)
  11. linux 软件包安装管理
  12. 【思路】Gym - 101173F - Free Figurines
  13. mysql 2008 教程_sql 2008 视频教程数据库从入门到精通自学视频教程_IT教程网
  14. Profile Owner使用总结
  15. svn clean up 特别慢
  16. API MISUSE: Cancelling connection for unused peripheral
  17. Xcode 禁用indexing
  18. 计算机用户guest无法删除吗,win7怎样删除guest账户_win7删除guest账户的步骤
  19. 图片旋转90度解决办法
  20. 班主任工作总结 初中物资管理工作总结

热门文章

  1. word中表格还有内容,却自动断开到下一页,且页面有多余空白部分。
  2. 2021年安全员-B证(陕西省)考试报名及安全员-B证(陕西省)复审考试
  3. vue项目打包成安卓app
  4. 基于大数据做文本分析
  5. 【读书笔记】《高效能人士的七个习惯》史蒂芬·柯维
  6. nginx部署ssl转发https协议请求
  7. Spring基本概念
  8. java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for com.stud
  9. C++Qt开发——阻止系统休眠方法
  10. python期中练习——五道简单练习题