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

7 Языки программирования

.doc
Скачиваний:
20
Добавлен:
12.03.2015
Размер:
74.75 Кб
Скачать

Языки программирования

В настоящее время существуют языки программирования четырех уровней:

машинные языки;

машинно-ориентированные языки;

алгоритмические языки;

объектно-ориентированные языки и языки четвертого поколения.

Языки первого и второго уровня называют языками низкого уровня, алгоритмические- высокого уровня. Языки высокого уровня предназначены для представления алгоритмов решения задач, поэтому они чаще называются алгоритмическими. На основе алгоритмических языков стали создаваться языки объектно-ориентированного программирования. Современные информационные системы создаются с применением объектно-ориентированных языков и языков четвертого поколения.

Машинные языки

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

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

Структура машинной команды трех адресной ЭВМ

Код операции

адрес первого операнда

адрес второго операнда

адрес третьего операнда

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

Машинные операции описываются на языке микропрограмм. Язык микропрограмм самый низший уровень программирования

Машинно-ориентированные языки

В настоящее время наиболее распространенным машинно-ориентированным языком является язык ассемблер. Как язык ассемблер так и языки высокого уровня имеют свои достоинства и недостатки. Недостатки ассемблера - это:

1) трудоемкость процесса написания программ;

2) необходимость специальных знаний о принципах работы ЭВМ.

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

Алгоритмические языки

Языки высокого уровня разрабатывались применительно к отдельным классам задач. Существуют, в буквальном смысле слова, сотни языков программирования, десятки из которых используются для работы с персональными компьютерами. Остановимся на самых распространенных из них.

Одним из первых и наиболее популярным был Фортран (FORTRAN от FORmula TRANslator - переводчик формул). Этот язык был разработан в конце 50-х годов группой программистов фирмы IBM. Фортран первоначально предназначался для работы с формулами и поэтому использовался для математических и инженерных расчетов.

В 1960 году был создан язык Кобол (Cobol - Common Business Oriented Language). Язык был ориентирован на деловые задачи для обработки данных в сферах управления.

В конце 60-х появился язык Алгол-60 (ALGOL - от ALGOrithmic Language - алгоритмические языки), который позволял решать многие научно-исследовательские задачи.

Язык Бейсик (BASIC - Beginners All-Purpose Symbolic Code - универсальный символический код для начинающих) изначально был задуман, как доступный для всех универсальный язык программирования. Язык отличается простотой, легко усваивается начинающими программистами. На этом языке можно было решать небольшие задачи социологического исследования, писать программы для филологов, в тоже время, он был пригоден для математических и экономических расчетов. Разработан студентами Дартмундского колледжа в 1963 году. Существуют различные версии этого языка: MBasic, Turbo Basic, Power Basic, Quick Basic. Наиболее популярны в нашей стране версии Basic фирмы Microsoft.

Языки Лисп, Пролог разрабатывались для создания экспертных систем. Язык GPSS - предназначен для создания моделей массового обслуживания, язык Ада - для создания систем, работающих в режиме реального времени.

Если в начале 60-х годов насчитывалось около десятка языков высокого уровня, то вскоре их количество резко возросло (несколько сотен), т.к. существовала тенденция создавать языки для решения различных специфических задач, либо под конкретную ЭВМ. Когда появилось такое обилие языков, возникла потребность в универсальном и машинно-независимым языке. Так появились языки Паскаль (Pascal), который взял все лучшее от языка Алгол 60, язык PL/1 (включающий элементы языков Фортран, Алгол, Кобол), новая версия языка Алгол - Алгол-68, язык Си (С).

В настоящее время наиболее распространенными считаются универсальные языки Бейсик (речь идет о Visual Basic), Паскаль, Си.

Visual Basic (в дальнейшем просто Бейсик) более других языков приближается к универсальному языку для персональных компьютеров. По сути, в каждом персональном компьютере заложена та или иная версия Бейсика, а IBM PC имеет Бейсик, встроенный в ПЗУ (постоянное запоминающее устройство). Признанным достоинством Бейсика считается его простота, а так же то, что он имеет специальные операторы, облегчающие доступ к большинству специфических устройств семейства IBM РС. У Бейсика есть и некоторые недостатки: ограничения на размер программ и объем данных, кроме того, на выполнение программы уходит больше времени по сравнению с другими языками высокого уровня.

(Бейсик, мягко говоря, был не популярен среди профессионалов. Это продолжалось до появления Visual Basic. Первая версия Visual Basic появилась в 1991. И это заслуга Билла Гейтса, так как он считается разработчиком Visual Basic.)

Это интересно! Гейтс учился в самой привилегированной школе Сиэтла, где он смог развить свои навыки программирования на школьном миникомпьютере. В тринадцать лет Билл написал свою первую программу – игру «Крестики-нолики» на языке программирования BASIC. Когда время, отведенное Биллу и его другу Полу Аллену для работы в компьютерной лаборатории, истекло, они взломали программу. За взлом компьютеров четырём студентам школы — Рику Вэйленду, Кенту Эвансу, Полу Аллену и Биллу Гейтсу — запретили работать на компьютерах в течение всего лета. Инициатором наказания стала компания Computer Center Corporation, чей компьютер студенты взломали. По истечении наказания студенты предложили компании находить ошибки в их программном обеспечении за возможность работать на компьютерах компании. Компания согласилась, и Гейтс с товарищами изучали множество исходных кодов программного обеспечения написанных на таких языках как FORTRAN, LISP, и вмашинном коде. Данное сотрудничество продолжалось до 1970 года, пока компания не обанкротилась. В следующем году компания Information Sciences, Inc. наняла четырёх студентов, чтобы написать программу ведения платежных ведомостей. (Примечание от Л.А.Александровой: «В настоящее время не оценят взлом компьютеров, и за это можно поплатиться. Об этом поговорим на лекции о правовой защите информации».)

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

Автор сервисной программы “Утилиты Нортона” Питер Нортон приводит (в одной из своих книг) следующее сравнение этих языков: “сам по себе Паскаль лучше, в нем меньше возможностей допустить ошибку, с другой стороны, язык Си особенно хорош для составления компактных, надежных программ, использующих возможности BIOS, DOS”. В то же время, в своих программах, написанных на Паскале или Си, он использует ассемблер для выполнения действий, которые нельзя описать на языках высокого уровня.

Если ранее, программное обеспечение для ЭВМ могли разрабатывать только профессионалы, то положение изменилось с появлением объектно-ориентированных языков: Visual Basic, Obect Pascal, C++ и сред объектного и объектно-визуального программирования: Visual C++ Visual Basic, Delphi, Builder C++. Среды объектно-визуального программирования позволяют, даже не профессионалам, за короткое время овладеть этими продуктами и создать конкурентно-способные приложения под Windows.

Объектно-ориентированные языки и языки четвертого поколения

С появлением объектно-ориентированных языков начинается новый, наиболее совершенный уровень программирования. Развитие этих языков привело к появлению языков, так называемого, четвертого поколения.

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

Универсальными, объектно-ориентированными языками программирования являются Visual Basic, Object Pascal, С++.

Какой язык выбрать для изучения или программирования? Обычно язык программирования выбирается исходя из следующих соображений: какими языками уже владеет программист или же каким языком ему легче овладеть; какой язык более всего подходит для решения поставленной задачи; какие требования выдвигает заказчик; личные вкусы программиста также играют важную роль.

Языки Visual Basic, Object Pascal считаются более легкими для освоения. Кроме того, если разрабатываются приложения на основе таких программных средств, как Excel, Access, то для их автоматизации предстоит программировать на языке Visual Basic. Так как Visual Basic “детище” фирмы Microsoft, то они планируют ввести его во все программные продукты, предназначенные для автоматизации бухгалтерских расчетов, работы с документами, базами данных.

Языки Object Pascal и С++ более подходят для промышленного программирования. Язык С++, в настоящее время, стал стандартным языком системного и прикладного программирования, позволяющим создавать высокоэффективные программы. Кроме того, на язык С++ в 1997 году принят международный стандарт. У каждого языка существует множество диалектов, а стандарт определяет “ядро” языка, которое должно быть реализовано в каждой версии (каждом компиляторе). Процесс стандартизации способствовал популяризации языка С++, а сам язык сделал более мощным.

Выбор того или иного языка программирования во многом определяется возможностями и удобствами интегрированных сред объектного и объектно-визуального программирования. Так профессионалы, уважающие язык С++, могут выполнить макеты разрабатываемой системы и пользовательского интерфейса в среде Visual Basic или Delphi, отдавая должное простоте этих сред, а содержимое системы программируют на С++.

Языками объектно-ориентированного программирования считаются также языки Ada, SmallTalk, языки, используемые для программирования в различных СУБД: Paradox, Informix и другие.

Новый этап в программировании начался с появлением, так называемых, языков четвертого поколения - языков, которые позволяют создавать приложения, функционирующие на различных платформах. К языкам четвертого поколения в настоящее время можно отнести язык Jam, Java, GL4. Приложения, созданные с помощью языка Jam, могут использовать данные из уже существующих приложений и работать более чем на ста платформах и в операционных оболочках, включая DOS, MS-Windows, Vax/VMS, UNIX.

При создании языка Java за основу был взят язык С++ и использовались идеи других объектно-ориентированных языков. Язык Java позволяет создавать программы для работы в Интернет - апплеты. Апплеты не зависят от конкретных типов компьютеров, и операционных систем, то есть не зависят от платформы.

В некоторой литературе языками четвертого поколения называют все объектно-ориентированные языки программирования, но это не верно. В настоящее время к языкам четвертого поколения предъявляют следующие требования:

- использование объектно-визуальных технологий;

- совместимость с различными платформами;

- поддержка стандартных СУБД.

Объектно-ориентированное программирование

.Объектно-ориентированное программирование

Объектно-визуальное программирование

Объектно-визуальное программирование в среде Delphi

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

По определению признанного авторитета в области объектно-ориентированных методов разработки программ Гради Буча ”объектно-ориентированное программирование - это методология программирования, которая основана на представлении программы в виде совокупности объектов, каждый из которых является реализацией определенного класса (типа особого вида), а классы образуют иерархию на принципах наследуемости ”. По Гради Бучу “наследование - это такое отношение между объектами, когда один объект повторяет структуру и поведение другого”.

При изучении объектно-ориентированных языков программирования необходимо придерживаться следующей схемы:

- познакомиться с перечнем готовых объектов программирования;

- изучить совокупность всех свойств каждого объекта и их возможных значений;

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

- познакомиться с принципами создания новых объектов.

Итак, при объектно-ориентированном программировании всегда необходимо держать в памяти схему: объект - свойства - действия (рис.4.6), и не забывать о том, что объекты, взаимодействуя, оказывают влияние на другие объекты и, в свою очередь, подвергаются влиянию с их стороны. Программист определяет, выбирает внешний вид объектов и, тем самым, фиксирует их свойства. Свойства конкретизируются с помощью параметров. Затем каждому объекту приписываются действия. Первично, к объектно-ориентированным языкам программирования, были отнесены такие языки как Turbo Visin; C+, С++, Visual C++. Они значительно облегчали программирование благодаря стандартным процедурам, которые позволяли построить в программе такие объекты, как окно, меню, полосы прокрутки, кнопки и другие. Объектное программирование значительно ускорило работу программиста, но, в то же время, ему приходилось держать в памяти большой объем информации об объектах, их свойствах, значениях, возможных действиях и т.п. Объектно-визуальное программирование лишено этих недостатков.

Рис.4.6. Схема работы с объектом

Объектно-визуальное программирование

В настоящее время популярны следующие среды объектно-визуального программирования: Visual Basic, Delphi, Builder C++. В этих средах программист работает с визуальными (видимыми) объектами, может изменять их внешний вид и наблюдать выполненные изменения. Изменения выполняются с помощью мышки по технологии работы с графическими объектами либо путем изменения значений в соответствующих полях свойств каждого конкретного объекта. Все свойства (параметры), описывающие объект, и допустимые действия сведены в специальное окно. Технология работы в перечисленных средах объектно-визуального программирования одна и та же, отличие лишь в названии инструментов. Так в среде Visual Basic окно, в котором задаются параметры объектов, называется Окно параметров, а в среде Delphi - Инспектор объектов и т.п. Следующий параграф демонстрирует технологию работы в объектно-визуальной среде Delphi, в нем показаны возможности и простота среды, технология и возможности работы в средах Visual Basic и Builder C++

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