V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Victor215
V2EX  ›  程序员

滴答清单客户端用的什么框架?

  •  
  •   Victor215 · 2024-01-23 13:03:28 +08:00 · 5334 次点击
    这是一个创建于 375 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我发现滴答清单的 windows 客户端特别的跟手,也有多平台的客户端,而且客户端的更新频率并不低。

    而且神奇的是,滴答清单的内存占用并不高,大概也就 100M+;同时客户端的体积也不是很大。

    我就在想滴答清单用了什么技术,能达到这个效果:
    1. 满足多平台客户端的开发效率;
    2. 响应很快,操作跟手;
    3. 对终端配置要求低;
    4. 功能相对比较复杂;
    5. 客户端打包后不太大;

    有没有哪位小伙伴是在滴答清单团队的,或者了解其技术详情的?
    catamaran
        1
    catamaran  
       2024-01-23 15:01:10 +08:00
    没有安装,不是很大是多大?另外作为一个清单,100M 内存不少了
    Victor215
        2
    Victor215  
    OP
       2024-01-23 15:12:30 +08:00
    @catamaran 最新的 windows 客户端安装包 15.1M ,如果要是用 electron 之类的实现的话,内存不太可能 100M 的。
    cugljd
        3
    cugljd  
       2024-01-23 15:13:30 +08:00   ❤️ 1
    // C:\Program Files (x86)\滴答清单\TickTick.exe
    // TickTick, Version=5.0.5.0, Culture=neutral, PublicKeyToken=null
    // Global type: <Module>
    // Entry point: ticktick_WPF.App.Main
    // Architecture: x64
    // Runtime: v4.0.30319
    // Hash algorithm: SHA1

    WPF
    lsk569937453
        4
    lsk569937453  
       2024-01-23 15:15:23 +08:00   ❤️ 1
    PE32
    操作系统: Windows(7)[I386, 32 位, GUI]
    链接程序: Turbo linker(2.25)
    编译器: Embarcadero Object Pascal(Delphi)(33.0 (26.0.36039.7899))
    语言: Object Pascal(Delphi)
    库: Visual Component Library
    工具: Embarcadero Delphi(10.3 Rio)
    签名工具: Windows Authenticode(2.0)[PKCS #7]
    安装程序: Inno Setup(6.1.0)[Install,Unicode]
    附加: Binary
    安装程序数据: Inno Setup[Install]

    貌似是 Delphi 。在字段中也发现了“ tkInterface, tkInt64, tkDynArray”,这都是 Delphi 的数据类型
    HaroldFinchNYC
        5
    HaroldFinchNYC  
       2024-01-23 15:16:20 +08:00
    @lsk569937453 Delphi 来实现跨平台??
    lsk569937453
        6
    lsk569937453  
       2024-01-23 15:16:21 +08:00
    @lsk569937453 看上面的兄弟扫的是 wpf,那应该是我的工具有问题。
    yadam
        7
    yadam  
       2024-01-23 15:23:57 +08:00
    Linux 下, yay 安装的

    cat /usr/bin/dida
    #!/usr/bin/sh
    XDG_CONFIG_HOME=${XDG_CONFIG_HOME:-~/.config}

    # Allow users to override command-line options
    if [[ -f $XDG_CONFIG_HOME/dida-flags.conf ]]; then
    DIDA_USER_FLAGS="$(sed 's/#.*//' $XDG_CONFIG_HOME/dida-flags.conf | tr '\n' ' ')"
    fi

    electron19 $DIDA_USER_FLAGS /usr/share/dida/dida.asar "$@"

    file /usr/share/dida/dida.asar
    /usr/share/dida/dida.asar: Electron ASAR archive, header length: 266663 bytes

    ll /usr/share/dida/dida.asar
    -rw-r--r-- 1 root root 94M Nov 16 10:23 /usr/share/dida/dida.asar
    Victor215
        8
    Victor215  
    OP
       2024-01-23 15:34:55 +08:00
    @yadam 应该不是 election ,起码 windows 版本的不是,要不然体积不能这么小,而且响应不能这么快。
    Victor215
        9
    Victor215  
    OP
       2024-01-23 15:35:28 +08:00
    @cugljd WPF 的话,就有一个问题了,跨平台是怎么做的?
    ych8398527
        10
    ych8398527  
       2024-01-23 15:38:51 +08:00
    滴答清单以前的 pc 版速度很快,后面更新了界面之后就感觉所有操作都卡卡的。不如 h5 版。
    levidcd
        11
    levidcd  
       2024-01-23 15:41:56 +08:00
    mac 端是原生的,全是 nib 文件
    zyxyz123
        12
    zyxyz123  
       2024-01-23 15:42:08 +08:00   ❤️ 3
    之前多平台都是各自原生框架开发的,现在不太清楚
    zxf4399
        13
    zxf4399  
       2024-01-23 16:10:30 +08:00
    只有 linux 是 Electron
    encro
        14
    encro  
       2024-01-23 16:18:34 +08:00
    就是基于浏览器技术的,应该是 windows 采用了 webkit2 。
    liuliuliuliu
        15
    liuliuliuliu  
       2024-01-23 16:24:39 +08:00
    @Victor215 WPF 确实暂时没办法跨平台,应该是分开开发的吧
    不过社区有一个 WPF 的高级版,avalonia ,可以跨平台,还可以 aot ,可以看我之前的帖子
    https://v2ex.com/t/952603
    cenbiq
        16
    cenbiq  
       2024-01-23 16:34:47 +08:00
    应该是 WPF ,因为我记得在打开滴答清单的程序目录下见到了那几个经典的 dll...当然不排除它又套了
    aitianci
        17
    aitianci  
       2024-01-23 16:45:36 +08:00
    @catamaran #1 他不光是个清单,还有日历,协同工作区,看板,一大堆东西呢
    gdfsjunjun
        18
    gdfsjunjun  
       2024-01-23 16:47:13 +08:00
    使用了下,确实超级流畅。钉钉快来学习一下,太卡了!
    用了这么多 OA ,钉钉流畅度连企业微信和飞书都比不上。
    mogutouer
        19
    mogutouer  
       2024-01-23 16:47:26 +08:00
    他每个平台都是原生的,滴答订阅用户很多,很有钱的
    kevin262516
        20
    kevin262516  
       2024-01-23 16:56:40 +08:00
    @ych8398527 我也是多年老用户, 这个问题确实如此
    GeekGao
        21
    GeekGao  
       2024-01-23 17:00:55 +08:00   ❤️ 2
    “ 而且神奇的是,滴答清单的内存占用并不高,大概也就 100M+;同时客户端的体积也不是很大。 ”

    这句话感觉有点苦涩和滑稽啊,放在 10 年前,这不是正常的桌面应用标准么,是什么把网友们的体验拉到这么 low 了 😂
    Victor215
        22
    Victor215  
    OP
       2024-01-23 17:02:51 +08:00
    @GeekGao 确实是啊,各种所谓的高大上的 APP ,不仅吃光资源,还卡的不要不要的。
    GeekGao
        23
    GeekGao  
       2024-01-23 17:18:44 +08:00
    @Victor215 这些厂商应该感到羞愧
    kneo
        24
    kneo  
       2024-01-23 17:39:15 +08:00 via Android
    原生就可以。为什么你觉得别人一定用的跨平台技术?
    SenLief
        25
    SenLief  
       2024-01-23 17:41:44 +08:00
    滴答挺吃资源的,我现在都是直接用网页了。
    vicya
        26
    vicya  
       2024-01-23 17:43:42 +08:00
    废物钉钉是真 tm 难用,一段时间不关整个电脑都跟着卡....
    Maboroshii
        27
    Maboroshii  
       2024-01-23 18:10:14 +08:00
    一直以为滴答清单是 electron , 刷新认知了。 公司很有钱啊,每个平台单独开发!
    i979491586
        28
    i979491586  
       2024-01-23 18:20:01 +08:00
    钉钉的用户不是我们这些用钉钉的员工,钉钉是给各位老板做的,目的是管理员工。
    wwlzz
        29
    wwlzz  
       2024-01-23 19:22:34 +08:00   ❤️ 12
    @Victor215 你好,我是滴答清单开发者,Windows 客户端确实使用的 WPF ,除了 Linux 使用的是 Electron ,其他每个平台都是原生开发的 :)
    ilooch
        30
    ilooch  
       2024-01-23 19:57:29 +08:00   ❤️ 5
    @mogutouer @Maboroshii
    跟钱没关系
    从一开始没收入,一直都是每个平台原生开发的
    从 2G 时代过来的,对流量敏感,对 App 大小敏感,比较抠
    性能,稳定是一直强调的基本要求,确实还做的不够,一直在改进
    verrickt
        31
    verrickt  
       2024-01-23 20:13:16 +08:00 via Android
    前几年去面试时,Windows 端是 wpf
    param
        32
    param  
       2024-01-23 20:56:18 +08:00 via Android
    @wwlzz 那什么时候 Linux 也能用原生。我 Linux 没有装客户端而直接用浏览器,就是因为客户端也是个浏览器。如果有原生的客户端一定用原生的了。
    abcbuzhiming
        33
    abcbuzhiming  
       2024-01-23 21:41:41 +08:00
    @GeekGao 因为有人公然声称用户的内存不值钱,跑不动是你自己机器问题。就在这个论坛里就有自称是程序员的人这么说
    GeekGao
        34
    GeekGao  
       2024-01-23 21:46:47 +08:00
    @abcbuzhiming 这就是“代码工人” 与 “软件工程师” 的区别
    skiy
        35
    skiy  
       2024-01-23 22:21:27 +08:00 via iPhone
    @param linux 用原生不容易吧?要么用 qt ,要么 gtk…现在 rust 倒是一堆 gui 工具库
    Victor215
        36
    Victor215  
    OP
       2024-01-24 11:06:50 +08:00
    @skiy linux 桌面客户端受众还是太小了,而且 GUI 库也不统一。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   728 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 19:38 · PVG 03:38 · LAX 11:38 · JFK 14:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.