Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Обзор языков программирования высокого уровня. Объектно-ориентированное программирование




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

В середине 80-х годов в программировании возникло новое направление, основанное на понятии объекта. До того времени основные ограничения на возможность создания больших сис­тем накладывала разобщенность в программе данных и методов их обработки.

Реальные объекты окружающего мира обладают тремя ба­зовыми характеристиками: они имеют набор свойств, способ­ны разными методами изменять эти свойства и реагировать на события, возникающие как в окружающем мире, так и внутри самого объекта. Именно в таком виде в языках программирова­ния и реализовано понятие объекта как совокупности свойств (структур данных, характерных для этого объекта), методов их обработки (подпрограмм изменения свойств) и событий, на ко­торые данный объект может реагировать и которые приводят, как правило, к изменению свойств объекта.

Появление возможности создания объектов в программах качественно повлияло на производительность труда програм­мистов. Максимальный объем приложений, которые стали до­ступны для создания группой программистов из 10 человек, за несколько лет увеличился до миллионов строк кода, при этом одновременно удалось добиться высокой надежности программ и, что немаловажно, повторно использовать ранее созданные объекты в других задачах.

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

Объектно-ориентированный язык программирования характе­ризуется тремя основными свойствами:

1. Инкапсуляция — объединение данных с методами в одном классе;

2. Наследование — возможность создания на основе имею­щегося класса новые классы с наследованием всех его свойств и методов и добавлением собственных;

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

FORTRAN (Фортран). Это первый компилируемый язык, созданный Джимом Бэкусом в 50-е годы. Программисты, разрабатывавшие программы исключительно. на ассемблере, выражали серьезное сомнение в возможности появления высоко­производительного языка высокого уровня, поэтому основным критерием при раз работке компиляторов Фортрана являлась эффективность исполняемого кода. Хотя в Фортране впервые был реализован ряд важнейших понятий программиро­вания, удобство создания программ было принесено в жертву возможности полу­чения эффективного машинного кода. Однако для этого языка было создано огром­ное количество библиотек, начиная от статистических комплексов и кончая пакетами управления спутниками, поэтому Фортран продолжает активно исполь­зоваться во многих организациях, а сейчас ведутся работы над очередным стан­дартом Фортрана F2k, который появится в 2000 году. Имеется стандартная версия Фортрана HPF(High Performance Fortran) для параллельных суперкомпьютеров со множеством процессоров.

COBOL (Кобол). Это компилируемый язык для применения в экономической области и решения бизнес-задач, разработанный в начале 60-х годов. Он отличается большой «многословностью» — его операторы иногда выглядят как обычные анг­лийские фразы. В Коболе были реализованы очень мощные средства работы с боль­шими объемами данных, хранящимися на различных внешних носителях. На этом языке создано очень много приложений, которые активно эксплуатируются и сего­дня. Достаточно сказать, что наибольшую зарплату в США получают программи­сты на Коболе.

Algol (Алгол). Компилируемый язык, созданный в 1960 году. Он был призван заме­нить Фортран, но из-за более сложной структуры не получил широкого распрост­ранения. В 1968 году была создана версия Алгол 68, по своим возможностям и сегодня опережающая многие языки программирования, однако из-за отсутствия достаточно эффективных компьютеров для нее не удалось своевременно создать хорошие компиляторы.

Pascal (Паскаль). Язык Паскаль, созданный в конце 70-х годов основоположни­ком множества идей современного программирования Никлаусом Виртом, во мно­гом напоминает Алгол, но в нем ужесточен ряд требований к структуре программы и имеются возможности, позволяющие успешно применять его при создании круп­ных проектов.

Basic (Бейсик). Для этого языка имеются и компиляторы, и интерпретаторы, а по популярности он занимает первое место в мире. Он создавался в 60-х годах в каче­стве учебного языка и очень прост в изучении.

С (Си). Данный язык был создан в лаборатории Bella первоначально не рассматри­вался как массовый. Он планировался для замены ассемблера, чтобы иметь воз­можность создавать столь же эффективные и компактные программы и в то же время не зависеть от конкретного типа процессора.

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

C++ (Си++). Си++ — это объектно-ориентированное расширение языка Си, создан­ное Бьярном Страуструпом в 1980 году. Множество новых мощных возможнос­тей, позволивших резко повысить производительность программистов, наложи лось на унаследованную от языка Си определенную низкоуровневое в резуль­тате чего создание сложных и надежных программ потребовало от разработчиков высокого уровня профессиональной подготовки.

Java (Джава, Ява). Этот язык был создан компанией Sun в начале 90-х годов на основе Си++. Он призван упростить разработку приложений на основе Си++ путем исключения из него всех низкоуровневых возможностей. Но главная особенность этого языка — компиляция не в машинный код, а в платформно-независимый байт-код (каждая команда занимает один байт). Этот байт-код может выполняться с помощью интерпретатора — виртуальной java-машины JVM (Java Virtual Machine), версии которой созданы сегодня для любых платформ. Благодаря наличию мно­жества Java-машин программы на Java можно переносить не только на уровне исходных текстов, но и на уровне двоичного байт-кода, поэтому по популярности язык Ява сегодня занимает второе место в мире после Бейсика.

Особое внимание в развитии этого языка уделяется двум направлениям: поддержке всевозможных мобильных устройств и микрокомпьютеров, встраиваемых в быто­вую технику (технология Jimi) и созданию платформно-независимых программ­ных модулей, способных работать на серверах в глобальных и локальных сетях с различными операционными системами (технология java

Java Beans). Пока основной недостаток этого языка — невысокое быстродействие, так как язык Ява интерпре­тируемый.

С# (Си Шарп). В конце 90-х годов в компании Microsoft под руководством Андерса Хейльсберга был разработан язык С#. В нем воплотились лучшие идеи Си и Си++, а также достоинства Java. Правда, С#, как и другие технологии Microsoft, ориенти­рован на платформу Windows. Однако формально он не отличается от прочих уни­версальных языков, а корпорация даже планирует его стандартизацию. Язык С# предназначен для быстрой разработки.NET-приложений, и его реализация в сис­теме Microsoft Visual Studio.NET содержит множество особенностей, привязываю­щих С# к внутренней архитектуре Windows и платформы NET.




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 796; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.