Файл: История развития программирования в России.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 18.06.2023

Просмотров: 77

Скачиваний: 4

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Введение

Российская Федерация всегда ассоциируется с громадной территорией и значительными природными ресурсами. Нефтеуглероды, уголь, древесина, невероятные запасы пресной воды всегда традиционно остаются стратегически важными компонентами валового продукта РФ, при этом на фоне таких богатств индустрия информационных технологий (ИТ) и программирования практически незаметна. Тем не менее, кроме лидерства на мировом сырьевом рынке, Российская Федерация также занимает первое место во всем мире по количеству высококлассных технических специалистов.

Больше миллиона человек в РФ выполняет профессиональную деятельность в сфере научных исследований и современных технологий. Таким образом, у нашей страны в наличии все предпосылки для того, чтобы стать существенной силой на международном рынке программирования и исследований в сфере ИТ.

В качестве новизны данной курсовой работы следует отметить почти что полное отсутствие в сети Интернет, средствах массовой информации и учебных методических пособиях по информатике качественных упоминаний об отечественных программистах и ИТ-инженерах, несмотря на тот факт, что существенное число перспективных разработок используется миллионами пользователей персональных компьютеров (ПК) не только в странах СНГ, но и за рубежом. Более того, по коммерческим брендам большинства российских фирм, проектирующим программное обеспечение (ПО) зачастую трудно связать их с Россией. Например, названия известных отечественных продуктов - Agava, LuxSoft.

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

1. Начало развития программирования в СССР и России

История возникновения и эволюции программирования в СССР стала неотделима от прочих разделов вычислительных технологий тех времен. С одной стороны, программирование во времена СССР сформировало свой специфический облик и приобрело необходимую научную полноту. С другой стороны, развитие школы программирования в годы советской власти было уже существенно менее специфично и практически неотделимо от устоявшейся к этому времени мировой тенденции в сфере вычислительной техники. Первоначально советское программирование эволюционировало в существенной степени под влиянием внутренних импульсов, тем самым ассимилируя интуицию и жизненный кругозор зрелых математиков, умноженных на любопытство, энергию и яркий энтузиазм поколения самых первых программистов и проектировщиков вычислительной техники.


    1. Разработка МЭСМ, СЭСМ и БЭСМ

Старт работ в сфере электронной вычислительной техники в СССР относится к 1946 г., когда в Киеве академик АН УССР С. А. Лебедев стал проводить эксперименты по проектированию электронных вычислительных машин (ЭВМ) и соответствующего программного обеспечения (ПО) к ним. В те годы Лебедев спроектировал и реализовал первую в стране аналоговую ЭВМ, которая предназначалась для вычисления систем обыкновенных дифференциальных уравнений. Такие задачи часто требовалось решать в сфере крупной энергетики, поэтому автоматизация вычислений была крайне необходима.

Уже к 1948 году стартовала разработка нового проекта - Малой Электронной Счётной Машины (МЭСМ) и к 1949 г. структурно сформировалась принципиальная схема блоков будущей ЭВМ. В 1950 г. МЭСМ была собрана в здании бывшего монастыря – машина заняла целых два этажа.

На МЭСМ проводились исследования в области решения научно-технических уравнений в сферах построения моделей термоядерных процессов, управления баллистическими снарядами, вычислений, связанными с космическими запусками, высокопротяженных линий электроснабжения и задачи, связанные со статистическими исследованиями.

После разработки и построения МЭСМ началась реализация специализированной электронно-вычислительной машины СЭСМ для обработки сложных систем алгебраических задач. Её основным разработчиком стал З. Л. Рабинович, а основные идеи реализации СЭСМ предложил С. А. Лебедев.

В 1950 г. началось проектирование БЭСМ АН СССР: научный доклад о новой машине на конференции в Дармштадте вызвал массу обсуждений, так как новая ЭВМ была одной из лучших в мире. ЭВМ комплектовалась записывающими устройствами по технологии ферритовых сердечников. Вскоре ЭВМ стали выпускать серийно под названием БЭСМ-2.

После завершения разработки по ламповым ЭВМ началось проектирование первой советской ЭВМ на базе полупроводниковой технологий - БЭСМ-6. Новая машина характеризовалась впечатляющим, на тот момент, быстродействием в 1000000 операций в секунду.

На базе БЭСМ-6 были реализованы крупные расчетно-вычислительные комплексы коллективного применения для потребностей научных институтов, комплексы автоматизации научных разработок в сфере ядерного синтеза и прочих сферах науки. БЭСМ-6 активно применялась для создания математических моделей комплексных физических схем и процессов управления, в комплексах разработки ПО для новых компьютеров.


Электронно-вычислительные машины для специфических задач противоракетной обороны стали базисом для необходимого достижения военного равновесия крупных стран во времена «холодной войны».

В то же время велись работы по созданию транслятора для БЭСМ. Внутренний язык программирования машины включал в свой синтаксис математические и логические операторы, лишь слегка напоминающие операторы нелинейного программирования современных языков высокого уровня.

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

Следует отметить, что БЭСМ стала одной из небольшого количества моделей машин, при проектировании которой проектировщики, инженеры, математики и конструкторы являли собой замечательный пример творческой синергии в рамках конструкторского бюро на базе ИТМиВТ.

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

Со временем формировалась научная концепция «математического обеспечения» - совмещенной и комфортной в научной деятельности системы интегрированных средств и техник программирования, связанной с определенной процедурой прохождения программ на готовой машине. Важными нюансами для создания такого рода философии стали экспериментальные комплексные проекты в Вычислительном центре МГУ, а также каждодневный опыт составления задач производственных калькуляций в МИАНе, требовавших повышенной точности и высокой надёжности работы программно-аппаратного комплекса.

На пути к цельному пониманию проблематики математического обеспечения новых машин было преодолено множество затруднений как сугубо научно-технического, так и организационного типа, например, слабая готовность концепции ПО.


Опыт взаимодействия с машинами «Стрела» четко сигнализировал, что разделение конечных средств программирования в конечном итоге неизбежна, если не возникнет интегрированного базиса, создаваемого непосредственно на исходной ЭВМ [7]. Для М-20 таким базисом стала аналоговая библиотека стандартных программ прикладного ПО. Задача трансформации данной библиотеки в транспортабельный общий программный продукт стала основной целью, на основе которой так или иначе сформировались более цельные взгляды на проблематику развития ПО.

Система ИС-2 превратилась в некоторое подобие мини-ОС, позволявшей достигать хоть какой-то цельности и однородности организации программирования прикладных программ.

Важно заметить, что определенную прослойку программистов уже в то время заботили совсем иные задачи [8]. Продолжая разработку новых трансляторов и языков программирования, они старались привлечь новых работников достаточно смелым проектом «Сибирского языка программирования» Алгол 60.

1.2 Язык Алгол-60, семантическое и прикладное программирование

Как и многие отечественные программисты, А. П. Ершов начинал свою трудовую деятельность с работ по проектированию алгоритмов решения задач численных методов и базовых подпрограмм для машин «Стрела» и БЭСМ.

Отмечая важнейшие культурно-социальные тенденции будущего широкого применения компьютеров, А. П. Ершов стал борцом за школьную информатику. Он одним из первых предложил добавить в программу школьного курса раздел «Основы информатики и вычислительной техники», сформировал требуемые учебные планы и создал первое методическое пособие по данному курсу [6].

Сложившаяся ситуация в начале 1960 года стала довольно-таки благоприятной для принятия АЛГОЛА 60 как унифицированного языка программирования научных и технических задач для решения машинным способом. Кроме того, было собрано координационное совещание по задачам дальнейшего проектирования и развития АЛГОЛА 60. Тогда же были выбраны три базовых проекта реализации языка для машины М-20. Они получили имена ТА-1, ТА-2 и Альфа.

Начавшись как три разноплановые платформы, данные проекты в результате эволюционных улучшений стали обладать свойствами взаимного дополнения, что и решило задачу обеспечения М-20 трансляторами с АЛГОЛА 60. Все три транслятора основывались на компонентах ИС-2 для использования стандартных процедур и функций.


Стремительная разработка трансляторов с АЛГОЛА привела к отсутствию потребности в профессии программиста-кодировщика и замене её более профессиональными системными программистами-инженерами.

Программисты разрабатывали исходные коды будущих программ на специальных бумажных бланках, после чего отдел перфорации осуществлял пробивку перфокарт. Перфокарты после этого получали программисты, которые относили их в машинный зал, а уже там оператор осуществлял запуск ПО. Периодически программистам приходилось самим запускать собственные программы, при этом для отладки и ликвидации ошибок требовалось заново переписывать фрагменты программ на бланки, передавать их в отдел перфорирования и опять отправлять на запуск весь пакет ПО. Большинство программистов на готовых перфокартах заклеивали одни отверстия, и острой бритвой прорезали новые, чтобы получить исправленный код.

Уже после была разработана парадигма прикладного программного обеспечения. Так, например, была реализована система запуска и отладки ПО с удаленных терминалов, которые находились прямо в кабинете у программиста. Такая система быстро стала настолько популярной, что работники записывались в очередь к свободному терминалу.

После возникновения доступных дисплейных терминалов под маркой «Видеотон», был спроектирован первый текстовый редактор для написания и отладки ПО прямо с клавиатуры терминала, выполнения операций записи/чтения программ, перемещения их в архив на магнитных дисках или магнитных лентах, запуска их на исполнение, и вывода результатов работы на экран.

Кроме возможностей редактирования и отладки хода выполнения программ, данная система давала возможность запускать трансляторы с других языков программирования: Ассемблера, Алгола, Фортрана, Паскаля, Лиспа. Финальная версия данной системы стала называться ПУЛЬТ-78. Данная система еще долгое время являлась основным инструментом разработки программного обеспечения для БЭСМ-6.

Через некоторое время её стали применять во множестве институтов, использовавших БЭСМ-6 для расчетов. Позднее на базе ПУЛЬТ-78 была спроектирована современная многотерминальная система «СЕРВИС», которая давала возможность обработки баз данных.

Уже позднее в качестве практического воплощения актуальных идей была реализована система ДИЛОС, дававшая возможность построения семантических сетей и на их базе реализовывать интеграцию с компьютером на естественном языке высокого уровня. В проектировании этого комплекса принимали участие работники МГУ.