IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

标签:NSJSONSerialization

共 1 篇相关文章

IT 累计浏览 1,973

Cocoa处理JSON转换, 兼谈计算机语言的哲学

作者从在Cocoa框架中使用NSJSONSerialization处理JSON转换时感到异常繁琐这一具体痛点出发,展开了一场关于编程语言设计哲学的讨论。他对比了Objective-C与PHP、JavaScript在核心操作上的体验差异:在PHP中,一个`json_encode()`与`json_decode()`就能直截了当完成任务;而在Cocoa中,开发者却不得不先处理NSData与字符编码的转换,并受限于顶层对象必须是数组或字典的约束。 这种对比引出了作者对“理想语言数据模型”的深层思考。他认为,字节数组(字符串)应统一且透明,数据本身是静态的,而解读方法才是赋予其意义的关键;映射表(字典)应保持“空间序”,即插入顺序即为可见顺序,这比无序的哈希表或强制的字典序对开发者更友好。他推崇像PHP和JavaScript那样,让最常用的操作(如数组操作)拥有最简洁的语法,避免为了所谓的“一致性”而让日常代码变得冗长。 文章并非单纯吐槽,而是在比较中提炼出语言设计的一些朴素原则:核心数据结构应与JSON等通用格式能自然映射,API应致力于降低常用场景的心智负担。最后,作者呼吁Cocoa开发者社区共同封装更易用的工具,并给出了一份融合类C语法、JavaScript数据模型及PHP/JS简洁API的“语言设计建议清单”。