Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Введение в специальность программиста

Покупка
Основная коллекция
Артикул: 058900.12.01
К покупке доступен более свежий выпуск Перейти
Цель данной книги — сформировать представление о профессии программиста и дать основы для приобретения навыков в этой области деятельности. В учебнике рассматриваются содержание основных понятий программирования, история его развития, основные элементы и языки программирования, принципы структурного программирования и начала программирования в среде Turbo Pascal и системе Delphi. Дается материал о программном обеспечении для вычислительной техники и автоматизированных систем, правовой и программной защите компьютерной информации, стандартизации и лицензировании программных продуктов. Предназначен для учащихся техникумов, колледжей, а также студентов вузов.
Гвоздева, В. А. Введение в специальность программиста : учебник / В.А. Гвоздева. — 2-е изд., испр. и доп. — Москва : ИД «ФОРУМ» : ИНФРА-М, 2022. — 208 с. — (Среднее профессиональное образование). - ISBN 978-5-8199-0929-4. - Текст : электронный. - URL: https://znanium.ru/catalog/product/1844359 (дата обращения: 27.07.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
­¬¡ ©¡¡«¬ª°¡­­¤ª©œ§ё©ª¡ª¬œ£ªžœ©¤¡
­БМДЫКНЙК¾¼Й¼¾¿КАП
В.А. ГВОЗДЕВА
ВВЕДЕНИЕ 
В СПЕЦИАЛЬНОСТЬ 
ПРОГРАММИСТА
УЧЕБНИК
2-е издание, исправленное и дополненное
Допущено 
Министерством образования и науки Российской Федерации
в качестве учебника для студентов образовательных
учреждений среднего профессионального образования, 
обучающихся по специальности «Программное обеспечение 
вычислительной техники и автоматизированных систем»
Москва
ИД «ФОРУМ» — ИНФРА-М
2022


УДК 004(075.32)
ББК 32.973я723
 
Г25
Р е ц е н з е н т ы:
Картамышева Т.Б., преподаватель кафедры программного обеспечения ВТ и АС Московского технического колледжа;
Агалъцов В.С., преподаватель математического колледжа 
Гвоздева В.А.
Г25 
 
Введение в специальность программиста : учебник / В.А. Гвоздева. — 2-е изд., испр. и доп. — Москва : ИД «ФОРУМ» : ИНФРА-М, 
2022. — 208 с. — (Среднее профессиональное образование).
ISBN 978-5-8199-0929-4 (ИД «ФОРУМ»)
ISBN 978-5-16-017438-9 (ИНФРА-М, print)
ISBN 978-5-16-109977-3 (ИНФРА-М, online)
Цель данной книги — сформировать представление о профессии программиста и дать основы для приобретения навыков в этой области деятельности.
В учебнике рассматриваются содержание основных понятий программирования, история его развития, основные элементы и языки программирования, принципы структурного программирования и начала 
программирования в среде Turbo Pascal и системе Delphi. Дается материал 
о программном обеспечении для вычислительной техники и автоматизированных систем, правовой и программной защите компьютерной информации, стандартизации и лицензировании программных продуктов.
Предназначен для учащихся техникумов, колледжей, а также студентов 
вузов.
УДК 004(075.32)
ББК 32.973я723
ISBN 978-5-8199-0929-4 (ИД «ФОРУМ»)
ISBN 978-5-16-017438-9 (ИНФРА-М, print)
ISBN 978-5-16-109977-3 (ИНФРА-М, online)
© Гвоздева В.А., 2013
© ИД «ФОРУМ», 2013


Введение
Программирование можно рассматривать как искусство, науку, ремесло. Программирование — это искусство получения ответов от
машины. Для этого в узком смысле нужно составить специальный
код для технического устройства, а в широком — разработать программы на языках программирования, т. е. не просто составить код,
а выполнить интеллектуальную работу по составлению высокоразумных программ для решения различных задач во всех сферах человеческой деятельности.
Программирование — процесс описания последовательности
действий решения задачи средствами конкретного языка программирования и оформление результатов описания в виде программы.
Эта работа требует точности, аккуратности и терпения. Команды
машине должны формулироваться абсолютно четко и полно, не
должны содержать никакой двусмысленности.
На начальном этапе составлением программ для ЭВМ занимались сами изготовители вычислительных машин. Постепенно, с развитием техники, этот процесс из рутинной работы превратился в
интеллектуальную деятельность, сравнимую с искусством, т. к. трудоемкое, ручное составление программ было подобно решению
сложных комбинационных задач, которое требовало научных знаний и мастерства. Возникла потребность в людях со специальной
подготовкой и особым складом ума, которых называют программистами. Овладев необходимыми знаниями, научившись грамотно и
творчески применять их в повседневной работе, программист может
стать незаменимым специалистом в своей области деятельности.
Отмечается, что «программист должен обладать способностью первоклассного математика к абстрактному и логическому мышлению
в сочетании с эдисоновским талантом сооружать все что угодно из
0 и 1. Он должен сочетать аккуратность бухгалтера с проницательностью разведчика, фантазию автора детективов с трезвой практичностью экономиста».
Программист — одна из самых востребованных специальностей
в современном обществе.
С 1970—1980-х гг. программирование как новая научная дисциплина занимается методами разработки программных продуктов.


Введение
Оно включает комплекс вопросов, связанных с написанием спецификаций, проектированием, кодированием, тестированием и функционированием программ для ЭВМ. Для разработки программного
обеспечения применяются следующие методы: математические, инженерных расчетов и управления.
Уровень программирования определяется четырьмя взаимосвязанными факторами развития: возможностями компьютеров, теорией и языками, искусством и технологией программирования.
Профессиональное программирование — вполне прагматичная
деятельность, направленная на получение реального программного
продукта, которое требует высокой теоретической подготовленности
не только в области знания языков программирования и принципов
создания программ, но и в области математики, системного анализа, исследования операций, системотехники и др. Программист должен хорошо ориентироваться в уже имеющемся программном обеспечении вычислительной техники и автоматизированных систем,
программной защите информации, стандартизации и лицензировании программных продуктов.
Системным программированием, т. е. разработкой средств системного программного обеспечения (ПО) и системы программирования, занимаются системные программисты. Прикладным программированием, т. е. разработкой прикладных программ, занимаются
прикладные программисты. Умение хорошо программировать — основное условие успешной профессиональной деятельности программиста. Научиться этому можно, лишь многократно программируя
разные задачи, проходя путь от ее постановки до работающей программы.
Для непосредственного решения задач программист должен:
 осознать задачу;
 составить план общего решения;
 выполнить план, т. е. преобразовать его в определенную последовательность действий;
 проверить результат решения, убедиться в его правильности.
Чтобы все это выполнить, специалист должен многое знать и
уметь.
Задача данного учебника — дать необходимые знания будущим
программистам и приобрести начальные навыки программирования
задач в программной среде Turbo Pascal. Получив знания и умения,
вы сможете на этой базе осваивать в учебном процессе более трудные разделы программирования и смежных дисциплин, а также начать практическое воплощение своих замыслов, создавая различные
программные продукты.


Введение
5
История развития программирования
С глубокой древности известны попытки создать устройства, ускоряющие и облегчающие процесс вычислений. Еще древние греки
и римляне применяли приспособление, подобное счетам, — абак.
Такие устройства были известны и в странах Древнего Востока.
В XVII в. немецкие ученые В. Шиккард (1623), Г. Лейбниц (1673) и
французский ученый Б. Паскаль (1642) создали механические вычислительные
устройства
—
предшественники
всем
известного
арифмометра. Вычислительные машины совершенствовались в течение нескольких веков. Но при этом не применялось понятие
«программа и программирование».
Только в начале XIX в. (1830) английский ученый, профессор
математики Кэмбриджского университета Чарльз Бэббидж, анализируя результаты обработки переписи населения во Франции, теоретически исследовал процесс выполнения вычислений и обосновал основы архитектуры вычислительной машины. Работая над проектом
аналитической машины — «Машины для исчисления разностей»,
Ч. Бэббидж предсказал многие идеи и принципы организации и работы современных ЭВМ, в частности принцип программного управления и запоминаемой программы. Общая увлеченность наукой дала
ученому и Аде Лавлейс (1815—1852) долгие годы плодотворного сотрудничества. В 1843 г. она перевела статью Менабреа по лекциям
Ч. Бэббиджа, где в виде подробных комментариев (по объему они
превосходили основной текст) сформулировала главные принципы
программирования аналитической машины. Она разработала первую
программу (1843) для машины Бэббиджа, убедила его в необходимости использования в изобретении двоичной системы счисления вместо десятичной, разработала принципы программирования, предусматривающие повторение одной и той же последовательности команд при определенных условиях. Именно она предложила термины
«рабочая ячейка» и «цикл». А. Лавлейс составила первые программы
для решения системы двух уравнений и вычисления чисел Бернулли
по довольно сложному алгоритму и предположила, что со временем
аналитическая машина будет сочинять музыкальные произведения,
рисовать картины и использоваться в практической и научной деятельности. Время подтвердило ее правоту и точность прогнозов.
Своими работами А. Лавлейс заложила теоретические основы программирования и по праву считается первым в мире программистом
и основоположником научного программирования.
В 1854 г. английский математик Джордж Буль опубликовал книгу «Законы мышления», в которой развил алгебру высказываний —


Введение
Булеву алгебру. На ее основе в начале 80-х гг. XIX в. построена теория релейно-контактных схем и конструирования сложных дискретных автоматов. Алгебра логики оказала многогранное влияние на
развитие вычислительной техники, являясь инструментом разработки и анализа сложных схем, инструментом оптимизации большого
числа логических элементов, из многих тысяч которых состоит современная ЭВМ.
Идеи Ч. Бэббиджа реализовал американский ученый Г. Холлерит, который с помощью построенной счетно-аналитической машины и перфокарт за три года обработал результаты переписи населения в США по состоянию на 1890 г. В машине впервые было использовано электричество. В 1896 г. Холлеритом была основана
фирма по выпуску вычислительных перфорационных машин и перфокарт.
В 1936 г. английский математик А. Тьюринг ввел понятие машины Тьюринга, как формального уточнения интуитивного понятия алгоритма. Ученый показал, что любой алгоритм в некотором
смысле может быть реализован на машине Тьюринга, а следовательно, доказывал возможность построения универсальной ЭВМ. И та,
и другая машины аналогично могут быть снабжены исходными данными решаемой задачи и программой ее решения. Машину Тьюринга можно считать как бы идеализированной моделью универсальной ЭВМ.
В 40-х гг. XX в. механическая элементная база вычислительных
машин стала заменяться электрическими и электронными устройствами. Первые электромеханические машины были созданы в Германии К. Цузе (Ц-3, 1941 г.) и в США под руководством прфессора
Гарвардского университета Г. Айкена (МАРК-1, 1944 г.). Первая
электронная машина создана в США группой инженеров под руководством доктора Пенсильванского университета Дж. Мочли и аспиранта Дж. Эккерта (ЭНИАК — электронный числовой интегратор и
калькулятор, 1946 г.). В 1949 г. в Англии была построена EDSAC —
первая машина, обладающая автоматическим программным управлением, внутренним запоминающим устройством и другими необходимыми компонентами современных ЭВМ.
Логические схемы вычислительных машин были разработаны в
конце 1940-х гг. Дж. фон Нейманом, Г. Гольдстайном и А. В. Берксом. Особый вклад в эту работу внес американский математик
Джон фон Нейман, принимавший участие в создании ЭНИАК. Он
предложил идею хранения команд управления и данных в машинной памяти и сформулировал основные принципы построения со

Введение
7
временных ЭВМ. ЭВМ с хранимой программой оказались более быстродействующими и гибкими, чем ранее созданные.
В 1951 г. в США было налажено первое серийное производство
электронных машин УНИВАК (универсальная автоматическая вычислительная машина). В это же время фирма IBM начала серийный выпуск машины IBM/701.
В СССР первыми авторами ЭВМ, изобретенной в декабре
1948 г., являются И. С. Брук и Б. И. Рамеев. А первая советская
ЭВМ с сохраняющейся программой создана в 1951 г. под руководством С. А Лебедева (МЭСМ — малая электронная счетная машина). В 1953 г. в Советском Союзе начался серийный выпуск машин,
первыми их которых были БЭСМ-1, «Стрела».
С появлением цифровых программно-управляемых машин родилась новая область прикладной математики — программирование.
Как область науки и профессия она возникла в 1950-х гг. Первоначально программы составлялись вручную на машинных языках (в
машинных кодах). Программы были громоздки, их отладка — очень
трудоемка. Для упрощения приемов и методов составления и отладки программ были созданы мнемокоды, по структуре близкие к машинному языку и использующие символьную адресацию. Ассемблеры переводили программу, записанную в мнемокоде, на машинный
язык и, расширенные макрокомандами, используются и в настоящее время. Далее были созданы автокоды, которые можно применять на различных машинах, и позволившие обмениваться программами. Автокод — набор псевдокоманд для решения специализированных задач, например научных или инженерных. Для таких задач
имеется развитая библиотека стандартных программ.
До конца 1950-х гг. ЭВМ основным элементом конструкции
были электронные лампы (I-е поколение). В этот период развитие
идеологии и техники программирования шло за счет достижений
американских ученых Дж. фон Неймана, сформулировавшего основные принципы построения ЭВМ, и Дж. Бэкуса, под руководством которого в 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 г.), Аda (под руководством Ж. Ишбиа, 1979 г.), С++ (1983). В 1961—1962 гг.
Дж. Маккарти в Массачусетском технологическом институте был
создан язык функционального программирования Lisp, открывший
в программировании одно из альтернативных направлений, предложенных Дж. фон Нейманом.
На начало 1970-х гг. существовало более 700 языков высокого
уровня и около 300 трансляторов для автоматизации программирования.


Введение
9
Усложнение структуры ЭВМ привело (в 1953 г. для машин II-го
поколения) к созданию операционных систем (ОС) — специальных
управляющих программ для организации и решения задач на ЭВМ.
Например, мониторная система МТИ, созданная в Массачусетском
технологическом институте, обеспечивала пакетную обработку, т. е.
непрерывное, последовательное прохождение через ЭВМ многих
групп (пакетов) заданий и пользование библиотекой служебных
программ, хранимой в машине. Это позволило совместить операции
по запуску с выполнением программ.
Для ПЭВМ к настоящему времени разработаны ОС: MS DOS,
Windows, ОС/2, MacOC, Unix, Linux и др. Широкое распространение получили ОС MS DOS и Windows, имеющие развитый интерфейс и широкий набор приложений, позволяющих последовательное выполнение заданий из пакета, обработку различной информации во многих сферах человеческой деятельности.
В 1965 г. итальянцы Бом и Джакопини предложили использовать в качестве базовых алгоритмических элементов cледование,
ветвление и цикл. Почти в то же время к аналогичным выводам
пришел
голландский
ученый
Э. Дийкстра,
заложивший
основы
структурного
программирования.
В
1970-х
гг.
эта
методология
оформилась, и корпорация IBM сообщила о применении в разработке программного обеспечения «Усовершенствованных методов
программирования», одним из компонентов которых являлась технология нисходящего структурного программирования (структурного программирования), основу которого составляет следующее:
 сложная
задача
разбивается
на
простые,
функционально
управляемые задачи, каждая задача имеет один вход и один
выход; управляющий поток программы состоит из совокупности элементарных функциональных подзадач;
 управляющие структуры просты, т. е. логическая задача должна состоять из минимальной, функционально полной совокупности достаточно простых управляющих структур;
 программа разрабатывается поэтапно, на каждом этапе решается ограниченное число точно поставленных задач.
Четко
сформулированные
основы
нисходящей
разработки,
структурного кодирования и сквозного контроля позволяли перейти
к промышленным методам разработки программного обеспечения.
Развитие получило модульное программирование, основа которого
заключается в следующем:
 функциональная декомпозиция (разбиение) задачи на самостоятельные подзадачи — модули, связанные только входными и выходными данными;


Введение
 модуль представляет собой «черный ящик», позволяющий
разрабатывать части программ одного проекта на разных языках программирования, а затем с помощью компоновочных
средств объединять их в единый загрузочный модуль;
 должно быть ясное понимание назначения всех модулей задачи и их оптимального сочетания;
 с помощью комментариев должно описываться назначение
всех переменных модуля.
В период 1970—1980-х гг. развитие теоретических исследований
оформило программирование как самостоятельную научную дисциплину, занимающуюся методами разработки программного обеспечения (ПО).
В истории развития промышленного программирования большую роль сыграл программист и бизнесмен Билл Гейтс (Gates
William Henry, р. в 1955 г.). Его история очень поучительна для начинающих программистов. В 1972 г. Билл Гейтс и его школьный товарищ Пол Аллен основали компанию по анализу уличного движения «Трэф-О-Дейта» и использовали для обработки данных компьютеры с микропроцессором 8008 — первым из знаменитого ряда
микропроцессоров компании «Intel». Будучи студентом Гарвардского университета, в 1975 г. он совместно с Алленом написал для компьютера Altair (фирмы MITS) интерпретатор — программу-переводчик с языка программирования на язык машинных кодов. Они заключили
с
владельцем
фирмы
соглашение,
по
которому
их
программы распространялись вместе с компьютерами. Товариши
основали компанию «Microsoft», в которой Б. Гейтсу принадлежало
60 % акций, П. Аллену — 40 %. В 1976 г. Гейтс ввел в практику продажу лицензий на свои программные продукты непосредственно
производителям компьютеров, что позволило «встраивать» их (ОС и
трансляторы с языков программирования) в компьютеры. Это было
большое достижение в области маркетинга, принесшее фирме огромные доходы. Фирма привлекала таких новых заказчиков, как
фирмы «Apple», «Commodor», «Tendi». В 1980 г. фирма IBM предложила «Microsoft», в которой тогда работало около двух десятков человек, создать языки программирования для ее нового персонального компьютера, в дальнейшем известным как IBM PC. В 1981 г.
«Microsoft» приобрела у разработчика Т. Патерсона дисковую ОС
(DOS), и в августе этого года IBM PC поставлялась вместе c ОС MS
DOS. Успех был настолько велик, что, кроме значительных доходов,
привел к тому, что и архитектура Intel, и компьютеры IBM, и программы «Microsoft» фактически стали отраслевыми стандартами.
В 1988 г. «Microsoft» создала свою ОС Windows c мощным графиче

К покупке доступен более свежий выпуск Перейти