Le code source de photoshop dévoilé...

Démarré par ClaudeSch, Février 15, 2013, 09:23:43

« précédent - suivant »

ClaudeSch

23 ans seulement, je croyais Photoshop plus ancien. 
chi va piano va sano e lontano

Didier_Driessens

j'avoue ne pas savoir ce que c'est un code source...

Didier

ClaudeSch

C'est la source de l'application Photoshop, et est écrite en langage de programmation (à l'époque probablement en C) .
Le code source est ensuite compilé et fournit un exécutable (le fichier programme) que nous exécutons sur notre ordinateur, l'exécutable n'est pas lisible par un humain, le code source lui l'est par contre.

Quand tu reçois un DVD Photoshop, il contient l'exécutable.
chi va piano va sano e lontano

Inka

Citation de: ClaudeSch le Février 15, 2013, 09:27:40
23 ans seulement, je croyais Photoshop plus ancien. 

C'est en 1987 que Thomas Knoll a commencé a écrire ce qui deviendra Photoshop, mais entre l'idée et la concrétisation il a fallu attendre un peu.
Carolorégien

kaf

Citation de: ClaudeSch le Février 15, 2013, 11:02:22
C'est la source de l'application Photoshop, et est écrite en langage de programmation (à l'époque probablement en C) .

Si tu avais lu l'article, tu saurais que c'est en pascal et en assembler ;D

ClaudeSch

En pascal je comprend encore, je l'ai un peu pratiqué, hyper structuré, on apprend beaucoup avec.
En assembleur, je suppose que c'était pour l'efficacité, il n' avait pas peur de mettre les mains dans le cambouis!
chi va piano va sano e lontano

Laurent A

Citation de: ClaudeSch le Février 15, 2013, 11:56:55En assembleur, je suppose que c'était pour l'efficacité, il n' avait pas peur de mettre les mains dans le cambouis!
A l'époque, c'était assez habituel, pour optimiser les performances.
Parfois, il peut simplement s'agir de reprendre à la main pour l'optimiser, le code assembleur généré par un compilateur 'C'.

On pouvait se permettre ce luxe compte tenu de la taille assez modeste du code source.
Je suppose qu'aujourd'hui, le code source de Photoshop doit être 100 ou 1000 fois plus gros.
Laurent

kaf

C'est 10 millions de lignes à l'heure actuelle ;)

L'assembler était là pour les routines internes qui avaient besoin d'être très rapides et optimisées. À l'époque ça se faisait très souvent, c'est de plus en plus rare à l'heure actuelle parce que le matériel a beaucoup évolué et qu'on peut se permettre d'utiliser du code moins optimisé tant les processeurs sont rapides et la mémoire abondante. Mais j'imagine que, même maintenant, il doit rester un peu d'assembler dans le code de CS6.

Inka

Citation de: Laurent A le Février 15, 2013, 12:09:24
On pouvait se permettre ce luxe compte tenu de la taille assez modeste du code source.
Je suppose qu'aujourd'hui, le code source de Photoshop doit être 100 ou 1000 fois plus gros.

Quand on a connu les débuts de Photoshop il est marrant de se remémorer : http://www.adobe.com/fr/print/gallery/schewe/

Même si à l'époque j'ai utilisé bien d'autres logiciels, une pensée émue pour ce qu'on trouvais sur Amiga ;-))
Carolorégien

titroy

Citation de: kaf le Février 15, 2013, 11:45:27
Si tu avais lu l'article, tu saurais que c'est en pascal et en assembler ;D

Cela ne date pas d'hier  ;)

Pascal Méheut

Citation de: kaf le Février 15, 2013, 12:33:07
c'est de plus en plus rare à l'heure actuelle parce que le matériel a beaucoup évolué et qu'on peut se permettre d'utiliser du code moins optimisé tant les processeurs sont rapides et la mémoire abondante.

C'est aussi parce que les compilateurs ont beaucoup progressé et qu'en plus, avec les architectures des processeurs modernes (pipelines, inspiration du RISC, etc), un humain qui fait de l'assembleur est en général moins performant qu'un compilo C.

ClaudeSch

Citation de: titroy le Février 15, 2013, 15:49:49
Cela ne date pas d'hier  ;)

Le C était déjà très utilisé, puisque UNIX a été développé depuis les années 70 en C
d'accord le pascal est un peu plus ancien (EDIT: de 2 ans)
chi va piano va sano e lontano

kaf

Citation de: Pascal Méheut le Février 15, 2013, 15:59:26
C'est aussi parce que les compilateurs ont beaucoup progressé et qu'en plus, avec les architectures des processeurs modernes (pipelines, inspiration du RISC, etc), un humain qui fait de l'assembleur est en général moins performant qu'un compilo C.

Aussi... Disons que souvent, le jeu n'en vaut pas la chandelle. Pour faire mieux que je compilateur, il faudra un très gros travail que le gain en performances ne va pas nécessairement récompenser à sa juste valeur ;D Ça doit faire une dizaine que je n'ai plus écrit une ligne d'assembler, à l'époque on avait écrit certains algorithmes optimisés avec des jeux d'instructions sse2. Une autre ère...

kaf

Citation de: ClaudeSch le Février 15, 2013, 16:05:39
Le C était déjà très utilisé, puisque UNIX a été développé depuis les années 70 en C
d'accord le pascal est un peu plus ancien (EDIT: de 2 ans)

Il est parfaitement logique que le Pascal ait été utilisé au début, plutôt que le C. Thomas Knoll était étudiant quand il a commencé à écrire ce qui allait devenir Photoshop 1.0. Or, le Pascal était un langage académique, il avait été conçu pour ça (en réaction à la complexité excessive d'Algol 68). Le C quant à lui, a été conçu à la base pour offrir un maximum d'efficacité opérationnelle, mais pas pour être simple à maîtriser. À l'université, il y a un peu plus de vingt ans, j'ai commencé la programmation avec le Pascal. Le C (C++, maintenant C#) ne sont venus qu'après, une fois les concepts bien établis. C'était le cheminement logique à l'époque, j'avoue que je ne sais pas ce qu'il en est maintenant ;)

fredography

Citation de: kaf le Février 15, 2013, 16:38:26
Il est parfaitement logique que le Pascal ait été utilisé au début, plutôt que le C. Thomas Knoll était étudiant quand il a commencé à écrire ce qui allait devenir Photoshop 1.0. Or, le Pascal était un langage académique, il avait été conçu pour ça (en réaction à la complexité excessive d'Algol 68). Le C quant à lui, a été conçu à la base pour offrir un maximum d'efficacité opérationnelle, mais pas pour être simple à maîtriser. À l'université, il y a un peu plus de vingt ans, j'ai commencé la programmation avec le Pascal. Le C (C++, maintenant C#) ne sont venus qu'après, une fois les concepts bien établis. C'était le cheminement logique à l'époque, j'avoue que je ne sais pas ce qu'il en est maintenant ;)

Pareil, Pascal était mon 1er language universitaire (avant j'avais appris tout seul le basic) ;-) Mon Dieu ça nous rajeunit pas ....

kaf

Citation de: fredography le Février 15, 2013, 16:47:52
Pareil, Pascal était mon 1er language universitaire (avant j'avais appris tout seul le basic) ;-) Mon Dieu ça nous rajeunit pas ....

Mouarf! Le Basic aussi, tout seul dans mon coin quand j'étais ado. Mais le vrai Basic, avec les numéros de lignes et le goto partout ;D

polym

CitationMouarf! Le Basic aussi, tout seul dans mon coin quand j'étais ado. Mais le vrai Basic, avec les numéros de lignes et le goto partout Grimaçant

Rhaa, le basic, un de mes meilleurs souvenirs de CE1, où on faisait des petits algorithmes pour afficher des points lumineux. Le pire étant le LISP, sûrement une invention extra terrestre cette saleté.  ;D

THG

Pfff, bande de petits joueurs...
Moi le Basic, c'était pour programmer une facturière reliée à quatre terminaux Apple IIE, eux-même reliés à un disque dur externe Corvus... en 1981.

THG

Plus d'infos ici :

http://en.wikipedia.org/wiki/Corvus_Systems

Toi aussi Méheut, tu peux aller voir, ça te fera pas de mal qu'avant les développeurs, qu'on trouve en pagaille dans les poubelles, il y avait des gens-de-tous-les-jours qui étaient formés à ça (plus ou moins bien, c'est vrai, il faut quand même être honnête...).

kaf

Citation de: THG le Février 15, 2013, 22:24:26
Pfff, bande de petits joueurs...
Moi le Basic, c'était pour programmer une facturière reliée à quatre terminaux Apple IIE, eux-même reliés à un disque dur externe Corvus... en 1981.

En 81 j'avais sept ans, tu comprendras que je ne me sentais pas encore vraiment concerné par ce genre de problème :D

THG

Citation de: kaf le Février 16, 2013, 07:55:27
En 81 j'avais sept ans, tu comprendras que je ne me sentais pas encore vraiment concerné par ce genre de problème :D

Et moi pas geek du tout... en fait l'informatique ne m'a jamais passionné. Par la suite, je voyais mes collègues discuter à longueur de journée de leurs Sinclair ZX81, puis Commodore 20, Commodore 64, à charger des jeux à la con pendant des plombes avec le lecteur de cassettes avant de pouvoir jouer, ou programmer des trucs à deux balles.
Ce qui m'a fait changer d'avis, c'est internet, puisque j'ai pu en profiter très tôt dans ma boîte (vers 1995 - 96 je crois).

Nikojorj

Citation de: kaf le Février 16, 2013, 07:55:27
En 81 j'avais sept ans, tu comprendras que je ne me sentais pas encore vraiment concerné par ce genre de problème :D
T'as pas fait du Logo vers cette époque?
"Ca va rajeunir personne" ;D

kaf

Citation de: Nikojorj le Février 16, 2013, 09:51:49
T'as pas fait du Logo vers cette époque?

Bien sûr que si, la tortue était mon amie  ;D

fredography

Citation de: polym le Février 15, 2013, 20:20:48
Rhaa, le basic, un de mes meilleurs souvenirs de CE1, où on faisait des petits algorithmes pour afficher des points lumineux. Le pire étant le LISP, sûrement une invention extra terrestre cette saleté.  ;D

Le Lisp (Language inutile stupidement paranthésé) je l'ai appris aussi à l'université! C'était soit disant pour l'intelligence artificielle ... moi je trouvais ça super drôle au contraire!