Как стать автором
Обновить

Программисты, давайте изучать исходники классических программ

Время на прочтение 2 мин
Количество просмотров 53K
Автор оригинала: Phillip Johnston
Современные программисты — счастливчики: мы живём в мире, в котором исторические и оказавшие существенное влияние программы имеют открытый код, доступный для изучения. Однако, многие программисты только учатся, и изучают те программы, над которыми работают сами. У нас редко находится время для изучения исторических работ, и курсы программирования редко тратят время на такие вещи.

Мы полагаем, что разработчикам следует изучать исходники программ, оказавших большое влияние, подобно тому, как архитекторы изучают здания, оказавшие влияние на архитектуру (и критикуют их). Чем повторять те же ошибки снова и снова, мы должны изучить большую работу, проделанную до нас, и вынести из неё уроки.

В идеале, нам следует изучать исходные коды великих программ с комментариями и критикой, которая даёт нам информацию о контексте проекта, его сильных и слабых сторонах. Такие комментарии редки, но вот вам несколько отправных точек:

  • Doom 3, игра, которую часто хвалят за исключительный дизайн кода

Исходник
Doom 3 — обзор исходника
Исключительная красота исходного кода Doom 3

  • Apollo 11 Guidance Computer

Исходник
The Virtual AGC Project — исходники различных миссий Аполло, документация и симуляторы.
Virtual AGC — исходники
The Apollo Guidance Computer: доброе и мягкое введение
AGC — библиотека документов
Apollo Guidance Computer: архитектура и принцип действия
Ваш умный тостер недостоин держать свечку компьютеру Аполлона



  • DOOM (оригинальный)

Исходник
Чёрная книга игрового движка: DOOM
Размышления о разработке DOOM’а

  • Wolfenstein 3D

Исходник
Чёрная книга игрового движка: Wolfenstein 3D

Также можно найти исходники программ, которые вы использовали в прошлом. Важно начинать с программ, которые вам хорошо знакомы, и вы можете связать их функции с исходным кодом. Вот ресурсы, которые вы можете использовать для того, чтобы найти и изучить исторические исходники:

Организация «The Historical Source»: репозиторий GitHub в настоящее время содержит архив из 143 программ. Многие из них являются некогда популярными играми, в которые вы, возможно, играли.

Сайт "Чёрная книга игрового движка" содержит подробный разбор движков Doom и Wolfenstein 3D, с исходниками.

Каталог ПО NASA содержит свыше 1000 программных проектов, доступных для публики.

Коллекция Музея Компьютерной Истории содержит исходники исторических программ. Вот выборка из их коллекции исторических исходных кодов:

Adobe Photoshop
Microsoft Word for Windows version 1.1a
Xerox Alto OS и сопутствующие утилиты
Ранняя версия Digital Research CP/M OS
Исходник ранней версии Microsoft MS-DOS
Apple II DOS
Многие люди играли с игрушкой Furby, её исходники доступны:
PDF
Исходники Furby
Исходники оригинального SimCity (также известного, как Micropolis) доступны для скачивания
(прим. перев: ссылка в оригинале больше не доступна, вот ссылка на гитхаб)
Теги:
Хабы:
+64
Комментарии 68
Комментарии Комментарии 68

Публикации

Истории

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн