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

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

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

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

Добавлен: 17.05.2023

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

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

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

В наше время компьютеры стали настолько распространенными, что используются практически везде в современной экономике, начиная от стадии производства товара из заканчивая его продажей. Без использования компьютеров и специализированных программ достаточно сложно уже представить, как бы все это могло функционировать. Задумываясь над этим, человек начинает осознавать, что по сути, в современной жизни программирование – это все, и даже если мы не имеем каких-то навыков в этой области, программирование так или иначе нас затрагивает [22, с. 160].

Разбираясь в программировании, можно создавать абсолютно любые веб-сайты, начиная от небольших одностраничек и заканчивая огромными интернет-магазинами, форумами и любыми другими форматами. Таким образом, программисты заработают себе всегда и везде – достаточно просто иметь доступ к компьютеру [2, с. 187].

Итак, программирование представляет собой такое понятие, которое для большинства людей не имеет абсолютно никакого значения. Конечно, практически каждый человек слышал это слово, но при этом многие даже не представляют себе, чем оно является.

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

1.2. Становление дисциплины программирования в России

По мнению ряда исследователей «импорто-внедрение» в ИТ-сфере началось ещё в СССР полвека назад, когда вместо выбора базовых направлений развития отрасли и ведущих разработчиков для основных классов ЭВМ (мейнфреймы, мини-ЭВМ и технологические ЭВМ) из числа отечественных конструкторов, было принято решение базироваться на образцах зарубежного производства, получивших широкое распространение в западных странах. На момент принятия этого решения некоторые отечественные ЭВМ (например, БЭСМ-6) по своим характеристикам опережали западные образцы [6, с. 51].

С крушением Советского Союза транснациональные корпорации под американской юрисдикцией IBM, Microsoft и Apple, оказавшиеся в силу объективных обстоятельств более мощными, чем бывшие советские предприятия информационно-технологической индустрии, получили неограниченный доступ к рынку информационных систем, компьютерного оборудования и программного обеспечения на постсоветском пространстве, в частности к рынку российскому. Российские школы и вузы вместо отечественных компьютеров «Агат» стали получать компьютеры с предустановленной операционной системой Windows и компьютеры Мас от Apple [10, с. 144].


Программирование развития науки подразумевает разработку и реализацию программ функционирования соответствующих процессов и является одним из самых распространенных в мире инструментов управления научной и инновационной деятельностью, обеспечивающих достижение определенных целей посредством использования имеющихся ресурсов [10, с. 147].

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

Начало использования программно-целевых методов связано со сферой государственного регулирования и было характерно для индустриально развитых стран Европы в период с начала 1930-х гг. В середине 1960-х гг. данный метод относительно широко, особенно в США, применялся для целенаправленного формирования бюджетной политики и рассматривался как элемент непрерывного планирования. Также большой опыт разработки и реализации государственных программ, в том числе и научно-технических, накоплен в нашей стране [6, с. 53].

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

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

В 1990-е гг. большое количество принятых целевых программ, в том числе и касающихся развития исследовательской деятельности, не было подкреплено соответствующим финансированием из федерального бюджета [10, с. 151].

Всеобщая миниатюризация вычислительной техники, появление персональных компьютеров, сетевых технологий, распространение Интернета создали новые вызовы, ответом на которые стали модели самого процесса разработки программ. Первые изменения стали заметными уже в классической монографии Дж. Вайнберга «Психология программирования», ставшей в 1971 г. заметным явлением, дополняющим знаменитый труд Д. Кнута «Искусство программирования», первый том которого вышел в 1968 г.


В 1984 г. в США был создан Институт технологии программирования (SEI – Software Engineering Institute) как научно-исследовательский центр с государственным финансированием из бюджета США при университете Карнеги-Меллон (г. Питтсбург, США), ориентированный на нужды Минобороны США [6, с. 55].

Он объединил ученых и практиков в области разработки программного обеспечения, задачей которых было дать обоснованную модель для предсказуемого процесса разработки программных продуктов для улучшения качества систем, зависящих от программного обеспечения. Основным достижением первой законченной модели CMM (1986) с последующим ее уточнением CMM for Software V1.1, (1993) можно считать определение 18 ключевых областей процесса – взаимосвязанных групп деятельностей, которые должны исполняться при создании программного продукта [6, с. 57].

Многие из этих деятельностей выполнялись и ранее на интуитивном уровне; модель CMM их точно определила и, что особенно важно, дала единую «мета-модель» для всех этих областей. Каждая ключевая область процесса характеризуется своими 3–4 целями, которые должны достигаться в процессе выполнения ее деятельностей, рекомендуемым перечнем самих этих деятельностей, обязательствами и возможностями по их исполнению, измерением, анализом и постоянным контролем хода и результата их исполнения [6, с. 58].

Последовавшее крупномасштабное внедрение этой модели в промышленном программировании при создании программных продуктов подтвердили ее высокую практическую значимость и реальное повышение качества конечного продукта при снижении затрат на его разработку и сопровождение, а главное – высокую предсказуемость самого процесса производства программного продукта. Настольной книгой разработчиков стала монография тогдашнего директора SEI У.С. Хэмфри «Управление процессом разработки программного обеспечения» [9, с. 134].

Кризис продолжался до начала 90-х годов. В процессе перехода на рыночную экономику большинство существовавших структур рухнуло, что привело, в частности, к радикальной смене преобладающей аппаратной платформы. В течение нескольких лет мэйнфреймы были потеснены мощным потоком персональных компьютеров; так, согласно оценке IDC, в 1997 году в России было продано 1,4 млн. компьютеров.

Переход на новую платформу создал потребность в целом ряде новых услуг, например, в разработке программ и системной интеграции, которые стали предоставлять молодые частные компании. Большинство современных лидеров в компьютерном бизнесе России — представители этой «новой волны»; сегодня такие компании вполне могут считать себя ветеранами рынка, несмотря на возраст от 8 до 12 лет [11, с. 177].


В России первые применения модели CMM состоялись в Санкт-Петербурге, затем в Москве, Нижнем Новгороде, Великом Новгороде и других городах. Автор участвовал в постановке процесса в компании ИДУ, созданной в 1993 г. на базе СПИИРАН для выполнения программных разработок по заказам компаний IBM и затем Motorola. Благодаря помощи специалистов Моторолы, процесс по модели CMM был поставлен в течение 1 года и уже в 1995 г. был официально сертифицирован на 3-й уровень зрелости, а накопленный опыт был впоследствии отражен в – первой отечественной монографии по данному вопросу [11, с. 180].

Процесс сертификации или оценивания уровня зрелости состоял в том, что сертифицированные специалисты в течение 4-х дней изучали предоставленную им документацию по уже выполненным проектам и проектам, находящимся в разработке. Кроме того, проводились собеседования с группами разработчиков и руководством компании, на которых участники рассказывали о том, как именно ведется работа в проектах, подтверждая сказанное документами из архива проекта. Важным аспектом было то, что оценщики вопросов, как правило, не задавали, а основывали свои выводы исключительно на той информации, которая им предоставлялась [6, с. 59].

В четвертый день оценивания были оглашены предварительные результаты, которые могли быть изменены, если разработчики представят новые документы, меняющие восприятие сложившейся у оценщиков картины, после чего в течение дня готовилось окончательное заключение, оглашенное на 5-й день оценивания. Наряду с вердиктом об установленном уровне зрелости, комиссия экспертов предлагала ряд рекомендаций по улучшению отдельный аспектов проектной деятельности [9, с. 136].

Компьютерный рынок быстро увеличивался вплоть до кризиса 1998 года. Отечественная компьютерная индустрия была одной из наиболее пострадавших из-за своей зависимости от западного рынка; лишь совсем недавно Россия снова вышла на уровень 1997 года по количеству продаваемых компьютеров. Тем не менее, сегодня перспективы компьютерного рынка в России выглядят очень хорошими; страна демонстрирует очень быстрый рост темпов продаж компьютеров, при том, что рынок еще ненасыщен: на 100 человек в России приходится всего лишь около 5 компьютеров (в США - 62).

1.3. История языков программирования: 1970-е

В 60-х годах 20 века программирование развивалось благодаря комитетам. В 70-х ситуация кардинально изменилась – теперь новые языки придумывали небольшие группы людей. Это произошло благодаря доступности компьютера – теперь заполучить ЭВМ мог буквально любой человек. Именно в 70-х берёт своё начало история языков Pascal и C [4, с. 110].


Dartmouth BASIC. Но прежде всего 70-е в программировании ознаменовались подъёмом BASIC. Он был создан в 60-х Джоном Кемени и Томасом Курцем в Дартмутском колледже в США, и должен был выполнить две основные функции [5, с. 207]:

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

Сделать программирование общедоступным курсом. Однако мгновенного отклика BASIC не нашёл. Комитеты, отвечавшие за разработку Фортрана, Алгола и Кобола, преследовали совершенно иные цели, а потому на высших уровнях до образовательного языка долгое время не было никакого дела. В первой версии BASIC было несколько ограничений:

Оперировать можно было только функциями LET, PRINT, END, FOR, NEXT, GOTO, IF THEN, DEF, READ, DATA, DIM, GOSUB, RETURN и REM [4, с. 112].

Не было различия между целыми и действительными числами.

Имя переменной было ограничено одной буквой или одной буквой и цифрой.

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

Первые массовые ПК имели не более 4 Кбайта памяти, позднее – 16 Кбайт. В определённой степени это было возвращение на 20 лет назад, ведь компиляторы языка высокого уровня занимали сотни килобайт, поэтому часто приходилось работать с машинными командами и кодами. Но было одно исключение – BASIC [4, с. 115].

Поскольку он предназначался как учебный язык, для мини-ПК было создано множество реализаций, основанных на интерпретаторе и компиляторе. Так BASIC стало можно запустить на машинах с ограничением памяти в 8-16 Кбайт. Именно поэтому BASIC быстро стал естественным выбором для любого, кому нужен был язык высокого уровня для ПК того времени.

Altair-8800. ПК, который изменил мир. Первым совместным проектом Пола Аллена и Билла Гейтса был как раз интерпретатор BASIC для PDP 8 (мини-ПК). Они учились в средней школе, когда свет увидел компьютер Altair из MITS. Юные изобретатели увидели в этом уникальную возможность, урезали свой интерпретатор до 4 Кбайт так, чтобы он позволял системе запустить небольшую программу [5, с. 210].

Билл Гейтс утверждает, что им потребовалось три с половиной недели, чтобы подготовить первую версию и около восьми недель, чтобы отполировать ее. Чтобы вы лучше представляли, как сложно уместить интерпретатор в 4 Кбайт: им пришлось урезать традиционное READY до OK, чтобы выиграть три байта памяти [4, с. 129].

Продукт получил название «4K BASIC» – первая версия Microsoft BASIC. Было много других реализаций языка для Altair и не только - Tiny BASIC Ли Чен Вана, TRS-80 BASIC Стива Лэйнинера, EBASIC и CBASIC Гордона Эубэнкса, 6800 BASIC Роберта Уиттеркика, целая серия интерпретаторов BASIC для Apple от Стива Возняка. Но именно Microsoft BASIC Билла Гейтса оказал наибольшее влияние на программирование и ПО в целом.