V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
pocarisweat
V2EX  ›  分享发现

Apple 开源了一个新的配置文件格式 pkl

  •  
  •   pocarisweat · 294 天前 · 1831 次点击
    这是一个创建于 294 天前的主题,其中的信息可能已经有所发展或是发生改变。

    https://pkl-lang.org

    https://github.com/apple/pkl

    可以定义类型,带 Schema Check ,可以像 Protobuf 一样生成 Java 、Go 、Swift 和 Kotlin 代码,也可以生成 YAML 、JSON 、XML 和 properties.

    好玩的是这个项目并不是用 Swift 写的,而是 Java. 苹果包括 iCloud 在内的后端服务应该大量用到了 Java

    10 条回复    2024-02-05 09:57:12 +08:00
    stinkytofu
        1
    stinkytofu  
       294 天前
    对比 JSON 也就省了几个引号, 真有必要再搞一种格式么。
    learnshare
        2
    learnshare  
       294 天前
    有点像 QML 的风格
    NnMmOo
        3
    NnMmOo  
       294 天前
    Apple 开始走向衰败
    Vegetable
        4
    Vegetable  
       293 天前
    首页上的例子我看来,除了 plist ,其他家大差不差。我更倾向于这是 apple 觉得自己的 plist 用着不爽,弄了个新的。
    hash
        5
    hash  
       293 天前
    类 XML 的文件结构确实过时了
    xipuxiaoyehua
        6
    xipuxiaoyehua  
       293 天前 via iPhone   ❤️ 1
    所以以后看到一个 .pkl 还得犹豫下是配置文件还是 pickle 了
    zhusimaji
        7
    zhusimaji  
       293 天前 via iPhone
    乍一看以为是 python pkl 序列化
    nagisaushio
        8
    nagisaushio  
       293 天前   ❤️ 1
    ivvei
        9
    ivvei  
       293 天前 via Android
    配置文件的 programmable 我认为是邪路。配置文件最多支持一个变量替换就行了,搞太复杂就失去了配置文件的意义,和程序里直接硬编码有多大区别的
    secondwtq
        10
    secondwtq  
       292 天前
    楼主提到了 Apple 的后端服务,我感觉这个项目的关键点应该是可以转换成多种已有格式。我的猜测是 Apple 可能用了一堆开源项目,不同开源项目有不同的配置格式,本身量又多,就搞了一个这玩意统一管理。其他的 feature 都是围绕这个目的做的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1555 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 17:13 · PVG 01:13 · LAX 09:13 · JFK 12:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.