最新 | 最热门 | 最高评价

+1  Programming in Lua(一)

Tag: 开源 | 软件开发
Singularity 发于 2012年10月21日 14:07 | 点击: 1923 | 展开摘要
最近没有腾出精力写 blog,不过在软件方面投入的时间并不少。决定从头到尾读完《 Programming in [...]

查看全文: http://www.udpwork.com/item/8432.html

+0  关于单元测试(续)

Tag: 软件开发
Singularity 发于 2012年09月24日 20:57 | 点击: 1804 | 展开摘要
最近「知乎」上有几个关于王垠的问题,由此得知他写的《我和 Google 的故事》。最近得知他又放弃了博士学位。 [...]

查看全文: http://www.udpwork.com/item/8163.html

-1  关于单元测试

Tag: 软件开发
Singularity 发于 2012年09月04日 19:00 | 点击: 1885 | 展开摘要
关于测试驱动开发 (Test Driven Development) 的争议之一是,耗费相当人力编写单元测试代 [...]

查看全文: http://www.udpwork.com/item/8055.html

+0  Core Animation 初探

Tag: Mac OS X | 软件开发
Singularity 发于 2012年08月17日 23:21 | 点击: 1652 | 展开摘要
尽管在产品中要实现不少动画效果,却还没用过 OS X 的 Core Animation。一方面是因为经常要考虑 [...]

查看全文: http://www.udpwork.com/item/7981.html

+0  Amazon Kindle

Tag: 未分类
Singularity 发于 2012年07月25日 22:23 | 点击: 1865 | 展开摘要
这个周末得到了 Amazon Kindle。值得高兴的是终于可以用 e-ink 来体验待读的几十本 Kindle 书和 Readability.com 的内容。应该说这是一台优雅的设备。不过它的问题也体现在「过于」优雅。 沉浸在徐徐翻动的小说中,你会觉得 e-ink 相当完美。但是,当到了一个新的环境需要 setup WiFi,或者阅读需要前后参照和查阅 Wikipedia 的书籍,e-ink 的低刷新速度和著名的残影现象会让早已习惯液晶屏界面的人很不习惯。传统 PC 和触摸

查看全文: http://www.udpwork.com/item/7789.html

+0  开发 Batch Crop

Tag: Mac OS X | 软件开发
Singularity 发于 2012年07月16日 12:24 | 点击: 1858 | 展开摘要
从 6 月 8 日到今天有一个多月没更新 blog,以前从未拖过这么久。因为这段时间在开发我的第一个准备在 Mac App Store 上发布的应用 —— Batch Crop。前几天终于把 1.0 版提交给 Apple iTunes connect 等待审查(就我的习惯来说,这个应用应该叫 0.6 版,但是 Apple 不允许 beta 版进入 App Store)。目前页面中的截图是正在开发的新版本。 以前作为 one man team 开发软件的经历不是很多。这次经历感

查看全文: http://www.udpwork.com/item/7716.html

+0  Text Field 与 Field Editor

Tag: Mac OS X | 软件开发
Singularity 发于 2012年06月08日 08:28 | 点击: 1949 | 展开摘要
Cocoa 提供了两种文本编辑控件 [1]:NSTextView 和 NSTextField。从表面上看,前者比后者功能丰富,前者一般用作复杂的文字编辑,后者一般接受简单的数据输入。二者处理 Enter 和 Tab 键的行为不同。NSTextView 的方式和通常的编辑器相同:给编辑内容添加换行或者 tab 字符。 NSTextField 的方式则类似于其它非文本编辑的 Cocoa 控件:Enter 键触发 target action(缺省为终止编辑),Tab 键令焦点移到相

查看全文: http://www.udpwork.com/item/7436.html

+0  空间化界面

Tag: Mac OS X | 软件开发
Singularity 发于 2012年05月14日 21:20 | 点击: 1910 | 展开摘要
在论坛社区里有个问题每过段时间就会被提一次:是否有可能出现一种图形化编程方式能完成「传统」方式的所有任务,甚至取代后者的主流地位。知乎的 Rio 在回答中提出像 Lisp 这样语法超级简洁的语言也许可以通过图形化语法树的形式完成图形化编程。从更广的角度来说,自 Steve Jobs 访问 Xerox PARC 之后(甚至更早),软件设计者们一直在挑战一个难题:软件界面应该图形化到何种程度。Apple 在传统 Macintosh 中做到了图形化的极端,甚至去掉了键盘的方向键;在

查看全文: http://www.udpwork.com/item/7282.html

+0  模态和对话框

Tag: Mac OS X | 软件开发
Singularity 发于 2012年04月19日 12:12 | 点击: 1948 | 展开摘要
最近这两年,我对软件 UI 设计经常反复强调的一个意见是尽量避免使用模态对话框 (modal dialog box) 。这个曾经广泛应用的 UI 元素逐渐式微。不严肃的说,模态对话框的多寡似乎成了区分「企业开发」的垃圾 UI 和消费者/专业级软件 UI 的一个新指标。 有些设计源自妥协,一旦妥协的前提不复存在,建立于其上的设计也随之衰败。比如说,一度公认的观念是应用程序必须「正常」退出,强行中止程序或者 crash 可能导致严重的数据丢失。但是近年来 iOS app 和 OS

查看全文: http://www.udpwork.com/item/7136.html

+0  Beta 发布 Adaptive Wide Angle

Tag: 软件开发
Singularity 发于 2012年03月29日 09:35 | 点击: 2270 | 展开摘要
3 月 21 日 Photoshop CS6 beta 开始公开下载。随之和用户见面的包括 Adobe 中国 Photoshop 团队开发的首个 Photoshop 主要功能 [1] —— Adaptive Wide Angle。这是我们工作一年半的成果。从用户的反应来看结果和前景都令人兴奋。 Adaptive Wide Angle 不仅是 Photoshop CS6 的主要功能,在图像处理方面也是新的突破。Photoshop 一般用来弥补照片的瑕疵或者制作各种超现实效果。A

查看全文: http://www.udpwork.com/item/7049.html

-1  软件质量之路

Tag: 软件开发
Singularity 发于 2012年03月20日 21:40 | 点击: 2065 | 展开摘要
上个月有段时间修正 bug 忙得要死,最后缓口气的时候统计了一下,发现这段时间修正了近 20 个 bug。这个数字大大出乎我的意料。 这些修正 bug 的工作并非是目前我开发的产品,而是一个两年前维护过的现在已经交给其它 team 维护的系统。即便两年前,对此系统的诸多细节也不甚了解。如今已两年没有接触它的 code base,只是对其大体构架还有印象。最近维护该产品的人手紧张,调我临时支援一下,主要处理一些罕见的 random crash。这些 random crash 很

查看全文: http://www.udpwork.com/item/7012.html

+0  用户是最大的漏洞

Tag: 软件开发
Singularity 发于 2012年02月15日 22:19 | 点击: 1583 | 展开摘要
从安全方面来说,用户是系统中最薄弱的环节。不过「聪明的」用户总是会找出各种理由把责任推卸给「技术」。甚至研究者有时也会落入这种陷阱。 不久前在知乎上有一个关于 MD5 的讨论。不得不说 MD5 是一种非常弱的 hash 算法。考虑到使用 SHA-1 等更强算法的额外负担完全可以忽略,我建议无条件的避免使用 MD5。但是从另一个方面来说,到底多少安全问题真正的责任在于 hash 算法的脆弱性?我在知乎上的总结是这样的(下面有些描述是符号化的,但在知乎上用的是非符号化语言。如果二

查看全文: http://www.udpwork.com/item/6842.html
|<<<1234567>>>| 一共7页, 84条记录