我做了一个 Mac 菜单栏 App,让你在不知不觉中学单词

0 阅读3分钟

Store_2.png

最近做了一个小工具,叫 GlimpseWords,是一个放在 Mac 菜单栏里的应用。

它做的事情很简单:在你使用电脑的时候,展示单词,让你在不知不觉中完成词汇积累。

这篇文章不太想从“推荐工具”的角度写,而是想聊聊这个产品是怎么产生的,以及在实现过程中踩过的一些坑。


为什么会做这个东西?

一开始其实是一个很常见的问题:背单词很难坚持。

不是方法不够多,而是大多数方法都需要你“主动去做”。

比如打开 App、开始学习、完成任务,这些都需要额外的意志力。

但现实是,只要一忙,这件事就很容易被放弃。

所以我在想:有没有一种方式,可以把“学习”这件事融入日常,而不是额外抽时间?

于是就有了这个想法:

👉 把单词放到菜单栏里

让它成为你使用电脑过程中的“背景信息”。


为什么选择菜单栏?

这个点其实是整个产品的关键。

相比弹窗、通知、桌面组件,菜单栏有几个优势:

  • 一直存在,但不会打扰
  • 用户天然会忽略它(反而降低干扰)
  • 适合做低频但长期的曝光

本质上,它更像是一种“被动输入”的载体。


技术实现思路

简单说一下实现层面的一些东西(给对开发感兴趣的同学参考)。

1. 菜单栏 App

Mac 菜单栏应用本质上是:

  • 使用 NSStatusBar 创建状态项
  • 自定义 NSStatusItem 的 view
  • 动态更新展示内容

核心逻辑就是:

  • 定时刷新单词
  • 更新菜单栏显示
  • 点击后展示详情面板

2. 单词数据结构

单词数据大概包含:

  • word
  • meaning
  • phonetic
  • example

本地做了一层缓存,避免频繁请求。


3. 展示策略

这里其实有一个设计点:

👉 不追求“信息完整”,而是“可被快速感知”

比如:

  • 菜单栏只展示单词
  • 详情页再展示完整信息

4. 一些踩过的坑

(1)刷新频率

一开始设得比较频繁,结果体验不好:

  • 用户还没看清就切换了
  • 反而增加负担

后面改成更低频,体验反而更自然。


(2)信息密度

菜单栏空间非常有限:

  • 字太长会截断
  • 信息太多会混乱

所以最终选择“极简展示”。


(3)用户注意力

这个产品的一个核心前提是:

👉 用户不会专门去看它

所以很多设计都要围绕这个点展开。


这个产品适合谁?

从目前来看,更适合:

  • 长时间使用 Mac 的人
  • 想提升词汇量,但不想专门学习的人

如果你希望短期快速提升,那这种方式可能不适合。


一点感受

做这个产品的过程中,有一个比较大的感受是:

很多时候,问题不是“方法不够好”,而是“成本太高”。

如果一件事需要你持续付出额外精力,它就很难长期坚持。

所以这次更多是在尝试:

👉 能不能通过降低成本,让事情自然发生


最后

这个项目目前还在持续优化中。

如果你对这种“无感学习”的方式感兴趣,欢迎试试看,也欢迎交流一些想法。