Código-fonte do Adobe Photoshop
Uma joia de software: a série de códigos-fonte históricos do Computer History Museum
- Photoshop: alterar imagens digitais com o software Photoshop ou outro software de edição de imagens, especialmente de uma forma que distorce a realidade (fonte: dicionário online Merriam-Webster, 2012)
O nascimento do Photoshop
- No fim dos anos 1980, os irmãos Thomas Knoll e John Knoll começaram a projetar e escrever um programa de edição de imagens
- Thomas Knoll era doutorando em visão computacional na Universidade de Michigan e, em 1987, escreveu um programa para exibir e modificar imagens digitais
- John Knoll trabalhava na empresa de efeitos visuais para cinema Industrial Light & Magic e usou esse programa de forma útil para edição de fotos
A evolução do Photoshop
- O programa evoluiu gradualmente e passou a ser chamado de "Display"
- No verão de 1988, ao perceberem que o programa tinha potencial comercial, mudaram seu nome para "Photoshop"
- A fabricante de scanners de slides Barneyscan distribuiu cerca de 200 cópias da versão 0.87 em pacote com o nome "Barneyscan XP"
O contrato com a Adobe
- Por recomendação de Russell Brown, diretor de arte da Adobe, a Adobe decidiu comprar a licença de distribuição do Photoshop
- O contrato foi firmado em abril de 1989, e a versão 1.0 foi lançada no início de 1990
- Nos dez anos seguintes, mais de 3 milhões de cópias do Photoshop foram vendidas
Detalhes técnicos do Photoshop inicial
- O Photoshop inicial foi escrito principalmente em Pascal para o Apple Macintosh, com partes em linguagem de máquina para o microprocessador Motorola 68000
- Na versão 1, Thomas trabalhou sozinho como engenheiro, e na versão 2 participaram dois engenheiros
- Thomas trabalhou no programa principal da aplicação, e John escreveu muitos plug-ins de processamento de imagem
Divulgação do código-fonte
- Com permissão da Adobe Systems, o Computer History Museum divulgou o código-fonte do Photoshop versão 1.0.1 de 1990 para uso não comercial
- O código-fonte é composto por 179 arquivos e consiste em cerca de 128.000 linhas de código bem estruturado, com quase nenhum comentário
- Cerca de 75% do código foi escrito em Pascal, e cerca de 15% em assembly 68000
Comentários sobre o código-fonte
- Opinião de Grady Booch, cientista-chefe de engenharia de software no IBM Research Almaden e diretor do Computer History Museum:
- Abrir o código-fonte do Photoshop 1.0 foi como abrir a tumba de um artefato antigo
- A separação consistente entre interfaces e abstrações, e as decisões de projeto de abstrações componentizadas, foram muito bem executadas
- A estrutura básica continua preservada mesmo em implementações modernas
- Há quase nenhum comentário, mas o código é muito fácil de ler
Capturas de tela do Photoshop inicial
- Tela inicial: mostra as ferramentas disponíveis
- É possível selecionar cor, tamanho e textura do pincel
- Oferece várias ferramentas de seleção e filtros de imagem
- O recurso de camadas de imagem, adicionado na versão 3, não existe nas versões iniciais
- Página de preferências que oferece recursos de personalização
- Escolha limitada de fontes, tamanhos de fonte e estilos
Lista de divulgação de códigos-fonte históricos
- Código-fonte do MacPaint e do QuickDraw, 18 de julho de 2010
- Código-fonte da linguagem de programação APL, 10 de outubro de 2012
- Código-fonte do Adobe Photoshop, 13 de fevereiro de 2013
- Código-fonte do Apple II DOS, 12 de novembro de 2013
- Código-fonte inicial do Microsoft MS-DOS, 25 de março de 2014
- Código-fonte do Microsoft Word for Windows versão 1.1a, 25 de março de 2014
- Código-fonte inicial do Digital Research CP/M, 1º de outubro de 2014
- Código-fonte do Xerox Alto, 21 de outubro de 2014
- Código-fonte inicial do Electronic Arts DeluxePaint, 22 de julho de 2015
Sobre o autor
- Len Shustek é chairman emérito fundador do Computer History Museum
Artigos relacionados
- Blog do CHM: Um computador para todos nós, 15 de dezembro de 2023
- Blog do CHM: Quantos anos tem o seu Furby?, 13 de dezembro de 2023
- Blog do CHM: Tartarugas, blocos e memórias, 5 de dezembro de 2023
Opinião do GN⁺
- Valor histórico do Photoshop: o Photoshop revolucionou a edição de imagens digitais, e seu código-fonte ajuda a entender o contexto histórico do desenvolvimento de software no início dessa era.
- Valor educacional do código: embora quase sem comentários, o código bem estruturado pode ser um material útil para o ensino de engenharia de software.
- Avanço técnico: comparar a estrutura do Photoshop inicial com a das versões modernas ajuda a entender a evolução da arquitetura de software.
- Visão crítica: a divulgação do código-fonte inicial tem valor histórico, mas como o uso comercial é restrito, há limitações para aplicação prática.
- Projetos relacionados: softwares de edição de imagem de código aberto como o GIMP também oferecem recursos semelhantes e podem ser considerados alternativas ao Photoshop.
1 comentários
Opiniões no Hacker News
Resumo da coletânea de comentários do Hacker News
Experiência de arquivamento do código-fonte da Adobe
Experiência com troca de código-fonte com a Adobe
Consistência da UX
Dificuldade em entender a beleza do código-fonte
Artigo sobre o Adobe Photoshop 1.x
Prevenção da generalização da marca registrada
Elogios à divulgação de código-fonte antigo
Experiência com versões iniciais do Photoshop
Carreira de John Knoll