
今天看到了Photoshop1.0的源码银川股票配资,有两个想不到:
1. 竟然没有用C语言,而是PASCAL。
2. 代码中几乎没啥注释。

仅有的一点儿注释也都是汇编相关的,不过没有注释根本不是问题,因为代码写得太清晰易懂了,添加注释反而会成为一种阻碍。
IBM Almaden 研究院的软件工程首席科学家,也是UML创始人之一的Grady Booch曾经研究过这个版本的代码,他说:
Photoshop的架构设计得非常精良,尤其是每种类型都抽象得如此出色,以至于带来令人惊叹的简洁实现。
Photoshop 第一个版本中建立的基本结构例如图块、滤镜、虚拟内存抽象在如今的Photoshop中依然存在,显示了抽象的强大生命力。
Grady Booch 说:这就是我渴望编写的代码!

这样的代码是如何写出来的呢?
今天我们来聊聊Photoshop的故事。
0 1
无心插柳
托马斯和约翰是兄弟俩,小时候深受父亲的影响,有两个爱好:
1. 喜欢摄影,经常到地下室的暗房去学习冲洗照片。

2. 计算机
两人被父亲带回家的那个外形奇特的盒子而深深吸引,这是一台Apple II Plus电脑。

很明显,这两个年少时的爱好决定了两人未来的发展方向。
哥哥托马斯高中毕业后进入密歇根大学,专业是计算机工程,这让他接受了正规的计算机基础知识的训练。

到了博士阶段,托马斯把注意力转向了计算机视觉。
1987 年,他购买了一台苹果 Macintosh Plus 电脑,以便帮助他完成关于“数字图像处理”的博士论文研究。
然而,令他失望的是,这台 Mac 电脑无法显示图像中的灰度级。
为了解决这个问题,托马斯不得不自己动手,编写了一个程序来模拟灰度效果。
随着研究的深入,类似的小程序越来越多,逐渐形成了一个工具集。
弟弟约翰从南加州大学毕业后,加入了乔治·卢卡斯建立的工业光魔,负责《星球大战》《深渊》等电影的电脑特效。


有一年,弟弟约翰在休假是到密歇根大学探望哥哥托马斯,发现了托马斯编写的这些图形处理工具。
约翰在工业光魔时看过一次皮克斯做的图形演示,其中有很多命令行驱动的Shell工具,和哥哥做的很像。
于是,两人就一起合作,把这些小工具给整合起来,形成了一个叫做Display的软件。

约翰拿着Display回到了工业光魔,在使用中他提出了更多的要求,比如:
把图像保存成其他格式,这样就可以通过别的程序打印了....
图像在屏幕上看起来太暗了,能不能做一点儿伽马校正......
这些来自好莱坞顶尖特效工作室的实际问题,一个个地被抛给了远在密歇根的托马斯。
托马斯现在面临一个两难的选择:是继续写论文,还是和弟弟一起,继续完善这个软件?甚至商业化。
青少年时期就养成的兴趣和爱好,让他选择了后者。
更重要的是,兄弟俩似乎发现了一个全新的机会:在个人电脑上进行图像编辑,这实在是太酷了。
托马斯继续改进Display,几个月后,托马斯决定发布新的软件:ImagePro。
但是这个名称已被别人占有,托马斯就想了一个新名称:Photoshop。

至此,Photoshop正式登上历史舞台。
0 2
震撼Adobe
当托马斯继续完善Photoshop的时候,弟弟约翰正在硅谷四处推销。
让人失望的是,硅谷的那帮家伙竟然不识货,纷纷拒掉了Photoshop。
只有一家叫BarneyScan的公司愿意试试,可以和他们的扫描仪硬件一起捆绑销售。
最终,Photoshop卖出了可怜的200份!
1988年9月,约翰来到Adobe公司继续推销,他精心准备了一个演示,用Photoshop的魔法棒工具创建了一个带有柔和边缘的蒙版,这一下子就把Adobe创始人John Warnock以及艺术总监Russell Brown给震住了。
因为其他的图像处理软件在创建选区的时候,只能用矩形/圆形工具圈选,或者用套索工具一点点手画圈选,但是Photoshop的魔法棒具有智能选区的能力,图片中有蓝天,你点一下蓝天,就可以自动选取整个天空。
而柔边蒙版意味着可以像摄影暗房那样做渐变处理,可以做柔焦、渐隐,光晕等专业效果。

换句话说,Phtoshop把摄影暗房的技术给数字化了,相比同时代的其他类似软件,这是非常领先的技术。
但是由于Adobe的的核心产品和矢量图形相关的, PostScript(打印语言)和 Illustrator(矢量绘图软件)才是主业,商业和工程部门的人并不看好Photoshop这个处理像素的“玩具软件”。
这时候Adobe的创始人和艺术总监起了关键作用,他们决定先争取一个短期的授权许可,先让Phtoshop成为Illustrator辅助软件,卖一段时间看看再说。
1990年2月,Adobe Phtoshop 1.0正式发布。

0 3
站在时代风口
Photoshop是一个不折不扣的“硬件杀手”,因为它是基于像素的编辑方式,会把一幅图片整体加载到内存中。
例如一张A4大小、300DPI的RGB图像,其未压缩的数据量大约是:
(8.27英寸 * 300DPI) * (11.69英寸 * 300DPI) * 3个颜色通道 ≈ 2600万像素
每个像素占用1字节(8位/通道),那么这张图在内存中就需要约 25MB 的空间。
如果在考虑到多个图层,撤销等操作,那消耗的内存更吓人了。
90年代内存非常贵,PC能配个32M内存就不错了,Photoshop跑起来非常吃力,不得不把硬盘当做虚拟内存使用。
硬盘速度比内存低几个数量级,所以操作极其卡顿,听到硬盘嘎吱嘎吱地疯狂读写数据,是每个90年代Photoshop用户的集体回忆。
所以,Adobe公司最初对销量也不看好,觉得每个月能卖个250份就不错了。
但是,当历史的大潮来袭的时候,你挡都挡不住:
扫描仪市场开始发展,扫描质量大幅提升,价格下降
彩色显示器和彩色打印机普及
个人电脑因为摩尔定律越来越快越来越便宜。
Photoshop完美地站在了桌面出版、计算机成像、传统摄影的交叉口,它用强大的图像处理能力,迅速成了PC上的杀手级应用。
很多人为了用上Photoshop,都会购买更高性能,更大内存的电脑!
在接下来的10年里,Photoshop竟然卖了超过300万份!把竞争对手远远抛在身后,成为图像处理领域的绝对标杆。
Adobe看到Photoshop如此流行,都超越了自己的主业PostScript和Illustrator,干脆花了3450万美元买断了它的所有权,从此成了Adobe的旗舰产品。
哥哥托马斯因为开发Photoshop而放弃了博士学习,现在看是这个选择是正确的,他打造了一个改变世界的软件。
04
尾声
Photoshop 1988年诞生,今年已经37岁了。
这几十年间,Photoshop已经完全占领了用户的心智,甚至从名词变成了动词,“ps一下”,这是大家对一个产品最大的褒奖。
但是,生成式AI的出现,直接动摇了 Photoshop 赖以存在的底层逻辑。
Photoshop 过去的那些“独门绝技”,正在悄悄变成所有人的日常能力。
37岁的Photoshop,也感受到了AI的压力,正在用Generative Fill、Firefly 等能力重新定义自己,努力从一个修图软件,变成创意的加速器。
未来会怎么样,我们并不知道,只能说:Photoshop 依然在,但它已经不是过去那个Photoshop了。
源码下载地址:
https://computerhistory.org/blog/adobe-photoshop-source-code/
诺亚创融提示:文章来自网络,不代表本站观点。