Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

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

.pdf
Скачиваний:
41
Добавлен:
11.05.2015
Размер:
5.78 Mб
Скачать

242

3.Библиотеки стандартных программ и первые системы символического кодирования ассемблеры возникли еще в доэлектронную эпоху (гарвардский MARK-I), первая собирающаяпрограмма— ассеблер— быларазработанав1949 году в Англии Морисом Уилксом в процессе работы над ЭВМ

EDSAC.

4.История высокоуровневыхязыковпрограммированияначинается с гипотетического, то есть не реализованного на ЭВМ, языка Plancalcul, разработанногоКонрадомЦузевконце1940-хгодов. Важную роль в автоматизации программирования сыграла предложеннаяА.А.Ляпуновымиреализованнаяв1954 - 56 годах М.Р.Шура-Бурой и А.П.Ершовым идея автоматизации программированиянаосновеоператорнойсхемы.

5.Языкиисистемыпрограммированиянаиболеебурноразвивались в 60-е годы, когда были разработаны основные принципы их построения и родились многие сотни языков различного назначения.В результате естественного отбора до конца века дожилинемногие«великиеязыки», вкоторыхвоплощеныпять основныхконцепцийсовременногопрограммирования:

процедурное программирование, составляющее основу классическихалгоритмическихязыковФортран, Бэйсик, Кобол, Алгол, Си и др.;

объектно-ориентированноепрограммирование(ООП), вчистом видеприсутствующеевязыкеSmalltalk, ивтойилиинойстепени

— вовсехсовременных языках;

визуально-событийное программирование, являющиеся развитиемООПвчастиработысособымиклассамивизуальных объектов, реализованноеввизуальныхсредахVisual Basic, Delphi, Visual FuxPro, VisualAge, Java идр.;

функциональное программирование, реализованное в языке обработки списков Лисп;

логическое программирование, воплощенное в декларативном

243

языкеПролог.

6.Первымширокораспространеннымалгоритмическимязыкомстал языкФортран(Fortran — FPRmula TRANslator), разработанный Джоном Бэкусом в корпорации IBM, и реализованный в 1957 годудляЭВМIBM-704. Впоследствииэтотязыкбылперенесен практически на все типы компьютеров, он постоянно совершенствовался и развивался. На Фортране накоплен колоссальный массив стандартных программ, он неизменно остается одним из «великих» языков для программирования научных задач во всем мире.

7.ЯзыкБэйсик(Basic — Beginner`s All Purpose Symbolic Instruction Code) является младшим братом Фортрана. Он был разработан в 1964 году в Дармутском колледже (г. Ганновер, штат НьюХемпшир, США) Джоном Кемени и Томасом Курцем. Язык предназначался для учебных целей, поэтому одновременно с интерпретаторомбыласозданасистемаразделениявременидля одновременной работы с нескольких терминалов.Бурное развитиеБэйсикполучилпослетого, какБиллГейтсиПолАллен разработали в 1975 году интерпретатор Бэйсика для первого персональногокомпьютераAltair иобразовалифирмуMicrosoft.

8.Язык Кобол (Cobol — COmmon Business Orientated Language),

созданный в 1960 году комитетом КОДАСИЛ по инициативе Грейс Хоппер, предназначен для программирования экономических задач. В Коболе впервые появились описания структур данных. В США до сих пор пользуется большой популярностью, в СССР и России широкого распространения неполучилиз-заанглоязычногомногословия.

9.ЯзыкАлгол(Algol — ALGOritmic Language) былпредложенв1960

годуавторитетныммеждународнымкомитетом. Этобылпервый язык с формальным описанием синтаксиса в форме БэкусаНаура. Алголоказалмощнейшеевлияниенавсюпоследующую историю языков программирования. На основе Алгола-60 создано множество обобщений и расширений. Язык получил

244

распространение в Европе, в частности, в СССР, где для него было создано несколько компиляторов. В США особенной популярностью не пользовался. В последующие десятилетия Алгол проиграл в конкурентной борьбе с Фортраном, так как уступал ему по возможностям ввода-вывода и по богатству накопленныхприкладныхпрограмм.

10.Развивая Алгол, международная федерация по обработке информацииорганизоваларазработкуновоговысокоуровневого языка Алгол-68. Он отличался предельной теоретической проработанностью и богатством возможностей, однако из-за сложности понимания и проблем реализации практического применения не имел.

11.Член комитета по Алголу-68 Никлаус Вирт, не согласный с проектом переусложненного языка, разработал в 1971 году простойалголоподобныйязыкПаскаль(Pascal). Паскальполучил оченьширокоераспространение, когдав1984 годуФилиппКан разработал для него скоростной компилятор для IBM PC и организовал фирму Borland Inernational. На основе базового Паскаля, первоначальнопредназначенноготолькодляобучения программированию, впоследствии были созданы языки и системы промышленного программирования Ada, Modula, Delphi.

12.ЯзыкPL/1 — Programming Language One былсозданфирмойIBM

и1964-67 годахкакуниверсальныйсуперязыкдляновойсерии машинS/360, призванныйзаменитьвсеизвестныедонегоязыки программирования. Теоретически этот язык очень несовершенный и противоречивый, однако на практике использовался очень широко. Стал основным языком программированиязадачобработкиданныхвСССРв70-еи80- егоды, вэпохумассовойразработкиавтоматизированныхсистем управления(АСУ).

13.Объектно-ориентированноепрограммированиеберетначалоот языкаSimula — SIMULAtion, созданногов1964 годувНорвегии

245

Оле-ДжономДаломиКристеномНюгордом, ипредназначенного для моделирования систем с дискретными событиями. Там впервые появились понятия объекта, класса, метода. Развивая эти идеи, Алан Кей в 1973 году в исследовательском центре РАRС фирмы Xerox создал язык Smalltalk, являющийся до сегодняшнего дня эталоном объектности. Впоследствии объектная ориентированность перешла во все современные языки — Pascal, C, Basic.

14.Язык Си был создан Деннисом Ричи и Кеннетом Томпсоном в 1973 году в Bell Laboratories в связи с разработкой ими операционнойсистемыUnix. Вместесэтойбесплатнойсистемой он разошелся по университетам и стал излюбленным языком системных программистов. Язык отличается компактностью и возможностьюписатьпрограммынанизкомуровне, используя все ресурсы процессора. Объектное расширение языка Си, названное Си++, было произведено Бьярном Страуструпом в начале80-хгодов.

15.Язык Java был создан в 1995 году компанией Sun Microsystems наосновеСи++ специальнодляпрограммированиявинтернете. Отличается особой технологией исполнения программ специальными интерпретаторами (виртуальными Javaмашинами), встроенными во все современные браузеры.

16.Язык Лисп (Lisp — LISt Processing) был разработан Джоном Маккартив1960 году. Онреализуетпарадигмуфункционального программированияислужитдляобработкисписков. Лтличается простотойиизяществом. Лиспдосихпорширокоиспользуется дляпрограммированиязадачискусственнгоинтеллектаидаже, несмотрянанекоторуюгромозкость, длявычислительныхзадач.

17.Язык Пролог (Prolog — PROgramming for LOGic), созданный в Европе в начале 70-х годов, в отличие от всех предыдущих, не предназначен для написания алгоритмов. Он является декларативным языком логического программирования, с помощьюкоторогоможноописатьфактыиправилалогического

246

вывода в некоторой предметной области. Язык активно используется для решения задач искусственного интеллекта и построения экспертных систем. В 80-е годы с этим языком связывались большие надежды в связи с японским проектом ЭВМпятогопоколения. однакоэтимнадеждамнесужденобыло сбыться.

18.История операционных систем начинается в 60-е годы, когда для облегчения труда операторов и экономии машинного времени были созданы первые программы-автооператоры и мониторные системы. Впоследствии они развились в операционныесистемыследующихосновнызтипов:

пакетные(однозадачныеисмультипрограммированием);

диалоговые (с разделением времени — ОС РВ);

системыреальноговремени.

19.Пакетные операционные системы, поддерживающие режим мультипрограммирования, былиразработанывначале60-хгодов. НаиболеесовершеннойсистемойтакоготипабылоOS/360 MVT для IBM S/360. Следующий этап в развитии ОС для больших ЭВМ — диалоговые операционные системы с разделением времени (ОС РВ). Экспериментальные ОС такого типа, сформировавшие идеологию систем, были созданы в Массачусетском технологическом институте. Сама идея была высказана Джоном Маккарти в 1961 году, проект Multics под руководством Фернандо Корбато реализовывался во второй половине 60-х годов. Промышленные ОС РВ появилсь в 70-х годах, их разработка и доводка выполнялась как правило фирмами-производителямисоответствующихЭВМ, например, OS/VM для IBM S/360 или RSX-11 для PDP-11. Для отечественной ЭВМ БЭСМ-6 также было разработаны ОС «Диспак» и «Дубна».

20.Среди ОС РВ особое место занимает система Unix, первый вариант которой был разработан Кеннетом Томпсоном и

247

Деннисом Ричи в Bell Laboratories в 1969 году. Написанная на машинно-независимомязыкеСи, онаявляетсяпортируемой, то есть допускает перенос на различные аппаратные платформы. Это свойство, а также доступность и бесплатность исходного кода, сделалиUnix чрезвычайнопопулярнойв80-хи90-хгодах. Однакодоступностьисходногокодапривелактому, чтоединая системапересталасуществовать, образовалосьмножествохоть и близких по существу, но различающихся в деталях Unixподобных систем, как бесплатных, так и коммерческих,

например, Solaris отSun, AIX отIBM, Xenix отMicrosoft.

21.Появление персональных ЭВМ в 80-х годах породило новый класснастольныхоперационныхсистем, которыенаперыхпорах относились к классу простейших пакетных однозадачных ОС. Дляпервогопоколения8-битовыхПКхарактернойбылаОСCP/ M, разработаннаяв1976 годуГэриКилдолом. Второепоколение, ознаменовавшиеся выпуском 16-битовой IBM PC, оснащалось в основном операционной системой MS-DOS, выпущенной фирмой Microsoft в 1981 году. Эта система стала классической ОС для 80-х годов, однако ей присущи принципиальные недостатки, вытекающие из ограниченности аппаратных ресурсов:

однозадачныйрежимработы,

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

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

21.Третье поколение 32-битовых персональных компьютеров, появившееся к концу 80-х годов, обладало достаточными аппаратными возможностями для организации графического человеко-машинного интерфейса. Идеи этого интерфейса, разработанные еще в 70-х годах в Xerox PARC, были впервые

248

широко использованы фирмой Apple в операционной системе Mac OS для ЭВМ Macintosh, выпущенной в 1984 году. Фирма Microsoft, отставшая в этом отношении от Apple, выпустила в 1985 году графическую надстройку над DOS под названием Windows. Первыедвеверсиикоммерческогоуспеханеимели, и толькоWindows 3.0, появившаясяв1990 году, сталазавоевывать рынок. К концу века Microsoft с настольными ОС Windows-95/ 98/Me, поддерживающимимногозадачныйрежимработы, стала фактическим монополистом на рынке ОС для платформы Intel, победив в конкурентной войне фирму IBM с ее OS/2.

22.Кроме настольных ОС, в 90-е годы разрабатывались серверные операционныесистемы, являющиесяпрямымипотомкамиОСс разделениемвремени70-хи80-хгодов. Нарынкедоминировали

NetWare фирмы Novell, Windows NT фирмы Microsoft и

различные версии Unix, среди которых наиболее активно развивалась бесплатная система Linux, первая версия которой была создана в 1991 году финским студентом Линусом Торвальдсом.

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

24.Системы управления базами данных (СУБД), появившиеся в середине 60-х годов, имеют ряд преимуществ по сравнению с прежнейсхемойнезависимойработыпрограммсданными:

однократный ввод данных,

независимостьпрограммотданных,

сокращение затрат на программирование.

25.Основные функции СУБД:

описаниелогическойструктурыданных,

манипулирование данными,

249

обеспечениецелостностиданных,

обеспечениемногопользовательскогодоступа,

защитаданных.

26.Существуют три основных типа СУБД, различаюшиеся логической организацией данных: иерархические, сетевые и реляционные. Первыми были иерархические СУБД (первая промышленнаяСУБДIMS быларазработанафирмойIBM в1968 году), затем в результате теоретических исследований, предпринятых рабочей группой КОДАСИЛ, появилась сетевая модельданных. Наиболеесовершеннымиираспространенными

внастоящее время являются реляционные СУБД, основанные на табличной (реляционной) модели данных, предложенной в 1970 году сотрудником IBM Эдгаром Коддом. Стандартным языком запросов в такой СУБД является язык SQL, разработанный в 1974 году Чемберленом и Бойсом.

27.Современные промышленные СУБД являются очень дорогими и долгоживущими программными продуктами, соизмеримыми по сложности с операционными системами. К концу века на рынке лидирует «большая шестерка»: Oracle, DB2, Informix, Sybase, Ingres, MS SQL Server.

28.МикрокомпьютернаяреволюцияипоявлениеперсональныхЭВМ

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

29.Рыноктекстовыхредакторовделитсянатриосновныхсектора: простейшие текстовые редакторы, текстовые процессоры

250

широкогоприменениятипаMS Word инастольныеиздательские системы, берущиеначалоотпакетаPage Maker, разработанного в1985 годудляApple Macintosh. Особоеместосредииздательских пакетов занимает система TeX, созданная классиком информатики Дональдом Кнутом и принятая в качестве стандартамногиминаучнымижурналами

30.Электронные таблицы были изобретены сотрудником Digital Equipment Corp. Дэниэлом Бриклином и впервые реализованы им совместно с Робертом Фрэнкстоном в 1979 году для персонального компьютера Apple-II. Лидером рынка элкутронных таблиц в среде MS DOS был пакет Lotus 1-2-3, разработанныйоснователемфирмыLotus Development Митчелом Кэпором в 1982 году. После появления Windows наиболее распространеннойсталасистемаExcel фирмыMicrosoft.

31.Первой настольной СУБД стала простейшая система, разработанная в 1981 году Уэйном Рэттлифом и выпускаемая фирмой Ashton-Tate под названием dBase-II. Формат данных «dbf» и язык запросов этой системы стали классическими, породившимимножествоаналогичныхразработок. Кконцувека, когдамощностиперсональныхЭВМрезковозросли, вкачестве настольных стали использоваться облегченные версии реляционныхпромышленныхСУБД, например, DB2 илиOracle.

32.Посколькупередачаданныхмеждуразличнымипрограммамив однозадачной операционной системе невозможна, в эпоху MS DOS, то есть в 80-е годы, достаточно популярными были интегрированныесистемы(Lotus 1-2-3, Simphony, Framework и

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

251

3.7. Контрольные вопросы

1.К какому времени относится создание библиотек стандартныхпрограмм?

2.Ккакомувремениотноситсяинтенсивнаяразработкаязыков программирования?

3.Когда был создан первый высокоуровневый язык программирования? Каконназывался?

4.КтобылавторомязыкаFortran?

5.Какие языки программирования можно считать потомками

Fortran?

6.КтоикогдаразработалязыкCobol? Каковыегоособенности?

7.КаковыфундаментальныеособенностиязыкаAlgol-60?

8.Какие языки программирования можно считать потомками

Algol-60?

9.Когда и где появился язык Basic?

10.С чего начала свою деятельность фирма Microsoft?

11.В каком языке впервые появились идеи объектноориентированногопрограммирования?

12.Каково влияние проекта Smalltalk на развитие программирования?

13.Вкаомязыкевпервыереализованаидеяфункционального программирования?

14.В каом языке впервые реализована идея логического программирования?

15.ЧтоописываетпрограмманаязыкеProlog?

16.ВразработкекакихязыковпринималучастиеДжонбэкус?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]