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

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

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

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

Добавлен: 15.05.2023

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

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

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

Введение

Термин «программирование» означает процесс создания компьютерной программы.

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

Россия обычно ассоциируется с огромной территорией и нескончаемыми природными ресурсами. Нефть, газ, уголь и древесина по-прежнему остаются самыми важными составляющими валового национального продукта России, поэтому на их фоне индустрия программирования малозаметна. Но, кроме лидерства на сырьевом рынке, Россия занимает первое место в мире по количеству технических специалистов. Согласно отчету World Bank/UNESCO, более миллиона человек в стране работает именно в сфере научных исследований.

Целью данной курсовой работы является изучение истории развития программирования в России.

Первые программисты

Попытки создать устройства, ус­коряющие и облегчающие процесс вычислений, известны с глубокой древности. Еще древние греки и римляне использовали приспособление, подобное счетам, — абак. Подобные устройства существовали также в странах Древнего Востока. В XVM в. немецкие ученые В. Шиккард (1623), Г. Лейбниц (1673) и французский ученый Б. Паскаль (1642) создали механические вы­числительные устройства — предшественники знаменитого арифмометра. Вычислительные машины совершенствовались в течение нескольких столетий. Однако понятие «программа и программирование» не применялось.

Лишь в начале XIX в. (1830) английский ученый, профессор математики Кэмбриджского университета Чарльз Бэббидж, анализи­руя результаты обработки переписи населения во Франции, теорети­чески изучил процесс выполнения вычислений и обосновал ос­новы архитектуры вычислительной машины. Работая над проектом аналитической машины — «Машины для исчисления разностей», Ч. Бэббидж предсказал многие идеи и принципы организации и работы современных ЭВМ, а именно принцип программного управления и запоминаемой программы. Общая увлеченность наукой дала ученому и Аде Лавлейс (1815—1852) долгие годы продуктивного партнерства. В 1843 г. Ада перевела статью Менабреа по лекциям Ч. Бэббиджа, где в виде подробных комментариев (по объему они превышали основной текст) определила основные принципы программирования аналитической машины. Она создала первую программу (1843) для машины Бэббиджа, убедила его в необходимо­сти использования в изобретении двоичной системы счисления вме­сто десятичной, а также разработала принципы программирования, предусматривающие повторение одной и той же последовательности команд при определенных условиях. Именно она предложила такие понятия, как «рабочая ячейка» и «цикл». А. Лавлейс составила первые программы для решения системы двух уравнений и вычисления чисел Бернулли по довольно сложному алгоритму и предположила, что со временем аналитическая машина будет сочинять музыкальные произведения, рисовать картины и применяться в практической и научной дея­тельности. Время подтвердило ее правоту и точность прогнозов. Таким образом, своими работами А. Лавлейс заложила теоретические основы про­граммирования и с тех пор по праву считается первым в мире программистом и основоположником научного программирования. [17]


В 1854 г. английский математик Джордж Буль опубликовал кни­гу «Законы мышления», в которой развил алгебру высказываний —Булеву алгебру. На ее основе в начале 80-х гг. XIX в. построена тео­рия релейно-контактных схем и конструирования сложных дискрет­ных автоматов. Алгебра логики оказала огромное влияние на развитие вычислительной техники, являясь инструментом разработ­ки и анализа сложных схем, инструментом оптимизации большого числа логических элементов, из многих тысяч которых состоит современная ЭВМ.

Идеи Ч. Бэббиджа воплотил американский ученый Г. Холлерит, который с помощью построенной счетно-аналитической маши­ны и перфокарт за три года обработал результаты переписи населе­ния в США по состоянию на 1890 г. В машине впервые было ис­пользовано электричество. В 1896 г. Холлеритом была основана компания по выпуску вычислительных перфорационных машин и пер­фокарт.

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

В 40-х гг. XX в. механическую элементную базу вычислительных машин заменили электрическими и электронными устройствами. Первые электромеханические машины были созданы в Германии К. Цузе (Ц-3, 1941 г.) и в США под руководством профессора Гарвардского университета Г. Айкена (МАРК-1, 1944 г.). Первая электронная машина была создана в США группой инженеров под руководством доктора Пенсильванского университета Дж. Мочли и аспиранта Дж. Экксрта (ЭНИАК — электронный числовой интегратор и калькулятор, 1946 г.). В 1949 г. в Англии была создана EDSAC — первая машина с автоматическим программным управ­лением, внутренним запоминающим устройством и другими важными компонентами современных ЭВМ.

Логические схемы вычислительных машин были разработаны в конце 1940-х гг. Дж. фон Нейманом, Г. Гольдстайном и А. В. Берксом. Большой вклад в работу внес американский математик Джон фон Нейман, который принимал участие в создании ЭНИАК. Он предложил идею хранения команд управления и данных в машин­ной памяти, а также сформулировал основные принципы строения современных ЭВМ. С хранимой программой они оказались более быстродействующими и гибкими, чем созданные ранее.


В 1951 г. в США было налажено первое серийное производство электронных машин УНИВАК (универсальная автоматическая вы­числительная машина). В этот же период фирма IBM начала серий­ный выпуск машины IBM/701. [17]

В СССР первыми создателями ЭВМ, изобретенной в декабре 1948 г., являются И. С. Брук и Б. И. Рамеев. А первая советская ЭВМ с сохраняющейся программой была создана в 1951 г. под руково­дством С. А Лебедева (МЭСМ — малая электронная счетная маши­на). В 1953 г. в Советском Союзе начался серийный выпуск машин, первыми из которых были БЭСМ-1 и «Стрела».

С возникновением цифровых программно-управляемых машин появилась новая область прикладной математики — программирование. Как область науки и профессия, она возникла в 1950-х гг. Изначально программы составлялись вручную на машинных языках (в машинных кодах). Программы были громоздкими, а их настройка — довольно трудоемкой. Поэтому для упрощения приемов и методов составления и настройки программ были созданы мнемокоды, по структуре близкие к машинному языку и использующие символьную адресацию. Ассемблеры переводили программу, записанную в мнемокоде, на машинный язык и, расширенные макрокомандами, используются и по сей день. Затем были созданы автокоды, которые можно применять на различных машинах, и позволившие обмениваться программами. Автокод — это набор псевдокоманд для решения специализиро­ванных задач, например, научных или инженерных. Для таких задач имеется развитая библиотека стандартных программ.

До конца 1950-х гг. ЭВМ основным элементом конструкции были электронные лампы (1-е поколение). В этот период развитие идеологии и техники программирования шло за счет достижений американских ученых Дж. фон Неймана, сформулировавшего ос­новные принципы построения ЭВМ, и Дж. Бэкуса, под руково­дством которого в 1954 г. был создан Fortran (Formula Translation) — первый язык программирования высокого уровня, используемый до настоящего времени в разных модификациях. Так, в 1965 г. в Дартмутском колледже Д. Кэмэни и Т. Куртцем была разработана упро­щенная версия Фортрана — Basic. В 1966 г. комиссия при Амери­канской ассоциации стандартов (ASA) разработала два стандарта языка: Фортран и Базисный Фортран. Используются также даль­нейшие модификации языка (например, 1970, 1990 гг.).

Открытия в области электроники и микроэлектроники позволили заменить элементную базу ЭВМ на более совершенную. В конце 1950-х гг. громоздкие электронные лампы заменяют полу­проводниками (миниатюрными транзисторами). Появляются ЭВМ II поколения; затем примерно через 10 лет — ЭВМ III поколения на интегральных схемах; еще через 10 лет — ЭВМ IV поколения на больших интегральных схемах (БИС). В Японии в 1990-х гг. реали­зованы проекты ЭВМ V поколения, в которых использованы дос­тижения в области искусственного интеллекта и биоэлектроники. Если объем оперативного запоминающего устройства (ОЗУ) одной из лучших отечественных машин 1960-х гг. М-20, созданной под руководством С.А. Лебедева в 1958 г., имел 4096 слов (8 Кбайт) и быстродействие 20 тыс. операций в секунду, то современные персо­нальные компьютеры характеризуются ОЗУ в десятки Мбайт и бы­стродействием в сотни миллионов операций в секунду, что позво­ляет решать сложнейшие задачи.


В 1953 г. А.А. Ляпуновым был предложен операторный метод программирования, который заключался в автоматизации программирования, а алгоритм решения задачи представлялся в виде совокупности операторов, образующих логическую схему задачи. Схемы позволяли расчленить громоздкий процесс составления программы, части которой составлялись по формальным правилам, а затем объединялись в целое. Для проверки идей операторного метода в СССР в 1954 г. была разработана первая программирующая про­грамма ПП-1, а в 1955 г. более совершенная — ПП-2. В 1956 г. разработана ПП БЭСМ, в 1957 г. — ППСВ, в 1958 г. — для машины «Стрела».

В США в 1954 г. стал применяться алгебраический подход, совпадающий, по сути, с операторным методом. В 1956 г. корпора­цией IBM разработана универсальная ПП Фортран для автоматического программирования на ЭВМ IBM/704.

В это время по мере накопления опыта и теоретического осмысления совершенствовались языки программирования. В 1958—1960 гг. в Европе был создан ALGOL, который породил целую серию алголоподобных языков: Algol W, (1967), Algol 68, Pascal (Н. Вирт, 1970 г.), С (Д. Ритчи и Б. Керниган, 1972 г.), Ada (под ру­ководством Ж. Ишбиа, 1979 г.), C++ (1983). В 1961-1962 гг. Дж. Маккарти в Массачусетском технологическом институте был создан язык функционального программирования Lisp, открывший в программировании одно из альтернативных направлений, которые предложил Дж. фон Нейман.

На начало 1970-х гг. существовало уже более 700 языков высокого уровня и около 300 трансляторов для автоматизации программирования.

Усложнение структуры ЭВМ привело (в 1953 г. для машин И-го поколения) к созданию операционных систем (ОС) — специальных управляющих программ для организации и решения задач на ЭВМ. Например, мониторная система МТИ, созданная в Массачусетском технологическом институте, обеспечивала пакетную обработку, т. е. непрерывное, последовательное прохождение через ЭВМ многих групп (пакетов) заданий и пользование библиотекой служебных программ, хранимой в машине. Это позволило совместить операции по запуску с выполнением программ.

Сегодня для ПЭВМ разработаны ОС: MS DOS, Windows, ОС/2, МасОС, Unix, Linux и др. Широкое распростране­ние получили ОС MS DOS и Windows, которые имеют развитый интер­фейс и большой набор приложений, позволяющих последователь­ное выполнение заданий из пакета, обработку разной информа­ции во многих сферах человеческой деятельности.

В 1965 г. итальянцы Бом и Джакопини предложили использо­вать в качестве базовых алгоритмических элементов следование, ветвление и цикл. Примерно в это же время к аналогичным выводам также пришел голландский ученый Э. Дийкстра, заложивший основы структурного программирования. В 1970-х гг. данная методология утвердилась, и корпорация IBM заявила о применении в разра­ботке программного обеспечения «Усовершенствованных методов программирования», одним из компонентов которых являлась технология нисходящего структурного программирования, основу которого составляло следующее:


• сложная задача разбивается на простые, функционально управляемые задачи, каждая задача имеет один вход и один выход; управляющий поток программы состоит из совокуп­ности элементарных функциональных подзадач;

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

• программа разрабатывается поэтапно, на каждом этапе реша­ется ограниченное число точно поставленных задач.

Четко сформулированные основы нисходящей разработки, структурного кодирования и сквозного контроля позволили перейти к промышленным методам разработки программного обеспечения.

Развитие получило модульное программирование, основа которого заключается в следующем:

• функциональная декомпозиция (разбиение) задачи на самостоятельные подзадачи — модули, связанные только входны­ми и выходными данными;

• модуль представляет собой «черный ящик», позволяющий разрабатывать части программ одного проекта на разных язы­ках программирования, а затем с помощью компоновочных средств объединять их в единый загрузочный модуль;

• должно быть четкое представление назначения всех модулей зада­чи и их оптимального сочетания;

• с помощью комментариев должно описываться назначение всех переменных модуля.

В период 1970—1980-х гг. развитие теоретических исследований оформило программирование как самостоятельную научную дисциплину, занимающуюся методами разработки программного обеспечения (ПО).

В истории развития промышленного программирования боль­шую роль сыграл программист и бизнесмен Билл Гейтс (Gates William Henry, p. в 1955 г.). Его история весьма поучительна для на­чинающих программистов. В 1972 г. Билл Гейтс вместе со своим школьным то­варищем Полом Алленом основали компанию по анализу уличного движе­ния «Трэф-О-Дейта» и использовали для обработки данных компь­ютеры с микропроцессором 8008 — первым из знаменитого ряда микропроцессоров компании «Intel». Будучи студентом Гарвардско­го университета, в 1975 г. он совместно с Алленом написал для ком­пьютера Altair (фирмы M1TS) интерпретатор — программу-перево­дчик с языка программирования на язык машинных кодов. Они за­ключили с владельцем компании договор, согласно которому их программы распространялись вместе с компьютерами. Товарищи основали компанию «Microsoft», в которой Б. Гейтсу принадлежало 60 % акций, а П. Аллену — 40 %. В 1976 г. Гейтс ввел в практику про­дажу лицензий на свои программные продукты непосредственно производителям компьютеров, что позволило «встраивать» их (ОС и трансляторы с языков программирования) в компьютеры. Это было большим достижением в области маркетинга, принесшим фирме ог­ромные доходы. Фирма привлекала новых заказчиков, таких как: компанию «Apple», «Commodor», «Tendi». В 1980 г. фирма IBM предло­жила «Microsoft», в которой тогда работало около двух десятков че­ловек, создать языки программирования для ее нового персональ­ного компьютера, в дальнейшем известным как IBM PC. В 1981 г. «Microsoft» приобрела у разработчика Т. Патерсона дисковую ОС (DOS), и в августе этого года IBM PC поставлялась вместе с ОС MS DOS. Успех был настолько велик, что, помимо высоких доходов, привел к тому, что и архитектура Intel, и компьютеры IBM, и про­граммы «Microsoft» фактически стали отраслевыми стандартами. В 1988 г. «Microsoft» создала свою ОС Windows с мощным графическим интерфейсом. К 1995 г. ОС, выпускаемые компанией, использо­вали 85 % персональных компьютеров. ОС Windows совершенству­ется год от года, обладая уже средствами доступа в глобальную сеть Internet. Вместе с фирмой NBC был создан круглосуточный кабель­ный информационный канал новостей. Совместно с фирмой «Эн-карта» создана мультимедиа-энциклопедия на CD-ROM «Книжная полка», содержащая в себе электронные версии семи больших справочни­ков, электронную энциклопедию кино — «Синемания». В 1995 г. в фирме «Microsoft» уже работало 18 тыс. человек, годовой выпуск достиг 200 программных продуктов, а доходы составляли миллиарды долла­ров. В 1998 г. Б. Гейтс стал самым богатым человеком в мире, а в конце 1999 г. — объявил о своем решении уйти с поста главы ком­пании и заняться программированием. Сейчас Билл Гейтс — одна из самых популярных фигур компьютерного мира. Журнал «People» писал: «Гейтс в сфере программирования значит столько же, сколь­ко Эдисон в отношении к электрической лампочке: отчасти инноватор, отчасти предприниматель, отчасти торговец, но неизменно гений».