大家一边纷纷怪 Keynote 没新意,一边在发布前使劲的刺探情报,所以这两年的热点产品往往在发布之前就被曝得体无完肤,就好比自己先去看了剧透,然后看电影的时候痛斥没有惊喜。 MacBook Pro 的升级对我而言算是个惊喜,本来以为要到 10 月以后才会发布的东西,居然现在就出来了,不过亮点不多,比如期望的 Nehalem 移动平台,显然不可能这么早就出现。 Safari 4 正式版的界面不得不说是一个妥协的结果,本来 Beta 中需要很大勇气的创新被巨大的反对意见逼退了,Apple 没有 “take one step further” 去继续改进,而是直接放弃了尝试,回到了传统的 tab 布局。总体来看,这个界面设计缺乏深思熟虑,不会很讨人喜欢。 Snow Leopard 针对用户的大更新不多,小改进不少,总的而言会是一个让人 (尤其是比较喜欢保持软件更新的人) 用着很舒服的平台。 针对开发者的特性许多都是头一次出现的,不应该期望它们在 10.6 中就足够成熟,其实大部分都还是给有尝试热情的、勇敢的开发者,以及基于这些底层技术作二次开发的厂商做热身的。这算是为以后的改进搭下了一个很好的基础,单从底层技术而言,Apple 这个公司对于业界的影响也越来越大了,对 OpenCL, GCD, LLVM, WebKit 等技术的推动充分说明了这一点。 iPhone OS 3.0 的改进,主要是希望利用大量 app 的先发优势压倒 Palm webOS 这样的新秀,然而对比起来玩弄的噱头越来越多,聚焦在一个好用的手机、好用的交流、联络工具上的改进越来越少,所以相比 Palm webOS 显得格外苍白。毫无疑问的,iPhone OS 3.0 升级让这个系统更完整、更有潜力了,但 Apple 自己开发的内置 app [...]
七月关于 iPhone 的消息一直围绕着 2.0 firmware, iPhone 3G, official SDK 1.0 这几个关键词,而非官方关心的也只是 Pwnage Tool 2.0,却对没有 iPhone Developer Program 的开发进展甚少介绍,我想在这里做一点记录。 随着 SDK 1.0 的正式发布 (遗憾的是,因为 NDA 的存在,甚至它都算不上发布..),iPhone 2.0 firmware 和 App Store 的上线,在 Apple 监视下的 iPhone OS/Cocoa Touch 程序开发的局限性暴露得越来越明显,saurik, NerveGas 等开发者坚持开发 Open Toolchain 的重要性也越来越明显。为什么在拥有一个如此完善的 SDK 的情况下我们还需要 Open Toolchain 和相关工具?因为: Apple 严格限制了第三方应用对 API 的使用,非 Apple 自己开发的应用程序不能使用许多极为有用的 Private API,否则就是违反 [...]
原文: Bringing Debian APT to the iPhone 作者: Jay Freeman (saurik) 译者: Jjgod Jiang iPhone (或 iPod Touch) 是一台配备着 128MB RAM、4 到 32 GB 闪存的 667MHz 计算机 (尽管只跑在 412 MHz 上)。软件方面,它运行的是一套裁剪过的 Mac OS X,包括 Darwin 内核上基于 FreeBSD 的用户空间程序,作为其标准组件。虽然部分人可能会奇怪怎么有人会把它作为 Unix 工作站来使,但就我和其他许多人的看法,不拿它来做 Unix 工作站才是值得奇怪的。 BSD 子系统 所以给这台设备头一个安装的包是“BSD Subsystem (子系统)”也就没什么奇怪的了:这是一套标准的 Unix 实用工具,让习惯了 Unix 的开发者感到宾至如归。从 grep, sed 到 vim, [...]
原文: Packaging Issues with AppTapp 作者: Jay Freeman (saurik) 译者: Jjgod Jiang Debian 的 APT,Gentoo 的 Portage,FreeBSD 的 Ports……它们内部运作的方式往往迥异,有的在服务器上存储着按少量标准配置编译好的二进制程序,有的则将代码下载到本地再按需编译,但它们最终都能归结到一两个简单的命令,不会比一句 install bash 这样简单的操作更复杂。 在 iPhone 上包管理工具的时令之选是 AppTapp Installer。这款由 NullRiver 开发的 Installer 给 iPhone 开发社群提供了一套简单的程序 (该程序可在 jailbreakme.com 这样的系统上轻易自举),它可由普通用户访问,进行即时的应用程序安装维护。任何人都可以通过它来分发自己的软件,只要配置好自己的软件仓库,并将其 URL 告知用户,他们就能以此作为“source”来安装你们的软件。考虑到 iPhone 这个 Apple 设备文档匮乏又 (对开放的软件安装) 深怀敌意,Installer 能做到这样可不容易,非常值得称赞。 然而,对于软件打包者而言,AppTapp 却显得很是繁琐。它的开发者选择了 Objective-C 属性列表 (property list) 来存储所有的软件包元数据,其中包括要在安装时执行的命令——不过通常执行的是 shell 脚本。这通常导致配置文件看起来不够完美。一个用十句脚本代码就能表达的配置往往要好几页的 XML [...]
© jjgod / blog. Powered by WordPress using the DePo Skinny Theme.