Автор: Пользователь скрыл имя, 12 Марта 2012 в 11:37, курсовая работа
Если проследить историю используемых сегодня языков программирования, таких как Си и Паскаль (а равно и менее популярных Бейсик, Фортран или Ада), то окажется, что все они были созданы на рубеже 60-х и 70-х годов. Иными словами, возраст современных языков программирования (за исключением Явы), перевалил за третий десяток, что для компьютерной индустрии является сроком экстремальным. Современные языки программирования старше Интернета, Windows и персонального компьютера минимум на десятилетие. При этом новые языки не переставали регулярно появляться, однако ни один из них не задержался в практике программирования, хотя приносимые ими новые идеи дополняли уже известные языки (как это произошло с объектно-ориентированным программированием).
Введение …..3
Основная часть …..5
1. Понятие современной системы программирования. …..5
1.1. Определение системы программирования………………………………...5
1.2. Классификация систем программирования…………………………...…..6
1.3. Средства создания программ……………………………………………….7
1.4. Понятие и структура системы программирования…………………….….8
2. Системы программирования…………………………………………………..14
2.1. Компоненты системы программирования……………………………….14
2.2. Понятие, назначение и составные элементы………………………….…16
2.3. Структура современной системы программирования…………………..18
3. Примеры современных систем программирования …20
3.1. Системы программирования компании Borland/Inprise………………...20
3.2. Системы программирования фирмы Microsoft……………………….….24
Заключение …28
Глоссарий …29
Список использованных источников …30
Список сокращений……………………………………………………………….31
Основные технические средства, используемые в комплексе с компиляторами, включают в себя следующие программные модули (более подробно см. Приложение 1):
- текстовые редакторы, служащие для создания текстов исходных программ;
- компоновщики, позволяющие объединять несколько объектных модулей, порождаемых компилятором, в единое целое;
- библиотеки прикладных программ, содержащие в себе наиболее часто используемые функции и подпрограммы в виде готовых объектных модулей;
- загрузчики, обеспечивающие подготовку готовой программы к выполнению;
- отладчики, выполняющие программу в заданном режиме с целью поиска, обнаружения и локализации ошибок.
Следующим шагом в развитии средств разработки стало появление так называемой "интегрированной среды разработки". Интегрированная среда объединила в себе возможности текстовых редакторов исходных текстов программ и командный язык компиляции. Теперь разработчику было достаточно только указать в удобной интерфейсной форме состав необходимых для создания программы исходных модулей и библиотек. Ключи, необходимые компилятору и другим техническим средствам, также задавались в виде интерфейсных форм настройки.
После этого интегрированная среда разработки сама автоматически готовила всю необходимую последовательность команд, выполняла их, получала результат и сообщала о возникших ошибках при их наличии.
Развитие интегрированных сред несколько снизило требования к профессиональным навыкам разработчиков исходных программ. Теперь в простейшем случае от разработчика требовалось только знание исходного языка (его синтаксиса и семантики). При создании прикладной программы ее разработчик мог в простейшем случае даже не разбираться в архитектуре целевой вычислительной системы.
Дальнейшее развитие средств разработки также тесно связано с повсеместным распространением развитых средств графического интерфейса пользователя. Такой интерфейс стал неотъемлемой составной частью многих современных ОС и так называемых графических оболочек. Со временем он стал стандартом "де-факто" практически во всех современных прикладных программах.
Это не могло не сказаться на требованиях, предъявляемых к средствам разработки программного обеспечения. В их состав были сначала включены соответствующие библиотеки, обеспечивающие поддержку развитого графического интерфейса пользователя и взаимодействие с функциями API . А затем для работы с ними потребовались дополнительные средства, обеспечивающие разработку внешнего вида интерфейсных модулей. Такая работа была уже более характерна для дизайнера, чем для программиста.
Для описания графических элементов программ потребовались соответствующие языки. На их основе сложилось понятие "ресурсов" прикладных программ.
Ресурсами прикладной программы называется множество данных, обеспечивающих внешний вид интерфейса пользователя этой программы, и не связанных напрямую с логикой выполнения программы.
Для формирования структуры ресурсов в свою очередь потребовались редакторы ресурсов, а затем и компиляторы ресурсов, обрабатывающие результат их работы . Ресурсы, полученные с выхода компиляторов ресурсов, стали обрабатываться компоновщиками и загрузчиками.
Весь этот комплекс программно-технических средств в настоящие время составляет новое понятие, которое названо "системой программирования".
2.3. Структура современной системы программирования.
Система программирования – весь комплекс программных средств, предназначенных для кодирования, тестирования и отладки программного обеспечения. Нередко системы программирования взаимосвязаны и с другими техническими средствами, служащими целям создания программного обеспечения на более ранних этапах жизненного цикла (от формулировки требований и анализа до проектирования).
Системы программирования в современном мире доминируют на рынке средств разработки. Практически все фирмы-разработчики компиляторов поставляют свои продукты в составе соответствующей системы программирования в комплексе всех прочих технических средств. Отдельные компиляторы являются редкостью и, как правило, служат только узкоспециализированным целям.
Тенденция такова, что все развитие систем программирования идет в направлении неуклонного повышения их дружественности и сервисных возможностей. Это связано с тем, что на рынке в первую очередь лидируют те системы программирования, которые позволяют существенно снизить трудозатраты, необходимые для создания программного обеспечения на этапах жизненного цикла, связанных с кодированием, тестированием и отладкой программ. Показатель снижения трудозатрат в настоящее время считается более существенным, чем показатели, определяющие эффективность результирующей программы, построенной с помощью системы программирования.
В качестве основных тенденций в развитии современных систем программирования следует указать внедрение в них средств разработки на основе так называемых "языков четвертого поколения" — 4GL (four generation languages), — а также поддержка систем "быстрой разработки программного обеспечения" — RAD (rapid application development).
Описание программы, построенное на основе языков 4GL, транслируется затем в исходный текст и файл описания ресурсов интерфейса, представляющие собой обычный текст на соответствующем входном языке высокого уровня. С этим текстом уже может работать профессиональный программист-разработчик — он может корректировать и дополнять его необходимыми функциями. Такой подход позволяет разделить работу проектировщика, ответственного за общую концепцию всего проекта создаваемой системы, дизайнера, отвечающего за внешний вид интерфейса пользователя, и профессионального программиста, отвечающего непосредственно за создание исходного кода создаваемого программного обеспечения.
В целом языки четвертого поколения решают уже более широкий класс задач, чем традиционные системы программирования. Они составляют часть средств автоматизированного проектирования и разработки программного обеспечения, поддерживающих все этапы жизненного цикла — CASE-систем.
В этой главе ни в коем случае не ставится задача полного описания тех или иных систем программирования, доступных в настоящее время на рынке современных средств разработки программного обеспечения. Только краткий обзор наиболее известных и распространенных в настоящее время систем программирования с точки зрения их компонентов, ложащихся на общую структуру типовой системы программирования.
Для краткого описания были выбраны только самые известные из всего широкого спектра систем программирования, распространенные именно на рынке Российской Федерации. Информация о данных системах программирования дается как на основании соответствующей литературы, так и на основании личного опыта.
3.1. Системы программирования компании Borland/Inprise.
Системы программирования компании Borland достаточно широко известны разработчикам в России. Известность и распространенность этих систем программирования определила, прежде всего, простота их использования, поскольку именно в системах программирования этой компании были впервые реализованы на практике идеи интегрированной среды программирования.
BORLAND DELPHI.
Система программирования Borland Delphi явилась логическим продолжением и дальнейшим развитием идей, заложенных компанией-разработчиком еще в системе программирования Turbo Pascal.
В качестве основных, в новой системе программирования можно указать следующие принципиальные изменения:
- новый язык программирования — Object Pascal, явившийся серьезной переработкой прежней версии языка Borland Pascal;
- компонентная модель среды разработки, в первую очередь, ориентированная на технологию разработки RAD (rapid application development).
Язык программирования Object Pascal создавался в то время, когда на рынке средств разработки уже существовало значительное количество объектно-ориентированных языков, включая такие известные, как C++ и Java. Компания Borland попыталась учесть все недостатки существующих языков объектно-ориентированного программирования, а также свой опыт создания языка Borland Pascal. Новый язык вышел довольно удачным, как с точки зрения синтаксиса, так и с точки зрения предоставляемых возможностей. Этот язык поддерживает практически все основные механизмы объектно-ориентированного программирования .
Компонентная модель среды разработки предусматривает создание основной части программы в виде набора взаимосвязанных компонентов — классов объектно-ориентированного языка. Во время разработки исходной программы (design time) компоненты предстают в виде графических образов и обозначений, связанных между собой. Каждый компонент обладает определенным набором свойств (properties), событий (events) и методов. Каждому из них соответствует свой фрагмент исходного кода программы, отвечающий за обработку метода или реакции на какое-то событие. Разработчик может располагать на экране и связывать между собой компоненты, а также редактировать связанный с ними исходный код программы. Причем поведение компонентов во время выполнения программы (run time) полностью определяется их взаимосвязью, исходным кодом программы и объектным кодом самой компоненты.
Система программирования Borland Delphi предназначена для создания результирующих программ, выполняющихся в среде ОС Windows различных типов.
Основу системы программирования Borland Delphi и ее компонентной модели составляет библиотека VCL (visual component library). В этой библиотеке реализованы в виде компонентов все основные органы управления и интерфейса ОС. Также в ее состав входят классы, обеспечивающие разработку приложений для архитектуры "клиент-сервер" и трехуровневой архитектуры (в современных реализациях Borland Delphi). Разработчик имеет возможность не только использовать любые компоненты, входящие в состав библиотеки VCL, но также и разрабатывать свои собственные компоненты, основанные на любом из классов данной библиотеки. Эти новые компоненты становятся частью системы программирования и затем могут быть использованы другими разработчиками.
Для поддержки разработки результирующих программ для архитектуры "клиент-сервер" в состав Borland Delphi входит средство BDE (Borland database engine). Оно обеспечивает результирующим программам возможность доступа к широкому диапазону серверов БД посредством классов библиотеки VCL. Посредством BDE результирующая программа может взаимодействовать с серверами БД типа Microsoft SQL Server, Interbase, Sybase, Oracle и т. п. Система программирования Borland Delphi поддерживает также создание результирующих программ, выполняющихся в архитектуре "клиент-сервер", на базе других технологий, например ADO (ActiveX Data Objects).
Система программирования Borland Delphi выдержала несколько реализаций. Последние реализации данной системы программирования включают широкий набор средств для поддержки разработки результирующих программ в трехуровневой архитектуре приложений. Система программирования Borland Delphi позволяет разрабатывать как серверную, так и клиентскую часть приложения в данной архитектуре. Возможно использование как технологий COM/DCOM (наиболее распространенных в среде ОС типа Microsoft Windows), так и технологии CORBA (но только при разработке клиентской части приложения).
В качестве недостатков данной системы программирования можно указать использование нестандартного формата объектных файлов (сохранился еще от системы Turbo Pascal, но в последней версии Borland Delphi 7 можно использовать стандартный формат), а также нестандартного формата для хранения ресурсов пользовательского интерфейса. Кроме того, сам язык Object Pascal не является признанным стандартом. Этот факт несколько затрудняет использование Borland Delphi в масштабных проектах в качестве основного средства разработки. Тем не менее, система программирования Borland Delphi получила широкое распространение среди разработчиков в Российской Федерации.
BORLAND C++ BUILDER.
Система программирования Borland C++ Builder объединила в себе идеи интегрированной среды разработки, реализованные компанией в системах программирования Turbo Pascal и Borland Delphi с возможностями языка программирования C++. История этой системы программирования начинается с интегрированной среды разработки Borland Turbo C.
Среда Turbo C представляла собой реализацию идей, заложенных компанией-разработчиком в системе программирования Turbo Pascal для языка программирования C. Компания Borland стремилась перенести удачную реализацию идей интегрированной среды разработки на новую основу. Компилятор Turbo C не был однопроходным, и потому время компиляции исходной программы превышало время компиляции аналогичной программы в Turbo Pascal. Кроме того, в системе программирования использовался стандартный компоновщик исполняемых файлов MS DOS.
Преимущество Turbo C заключалось в том, что эта система программирования строилась на базе стандартного языка программирования C. Данный язык получил широкое распространение среди разработчиков в качестве языка системного программирования, для него существовали компиляторы под многие типы целевых архитектур. В этом было главное отличие системы программирования Turbo C от схожей по организации системы программирования Turbo Pascal, которая строилась на основе поддержки нестандартного расширения языка Pascal.
С развитием системы программирования на базе Turbo Pascal развивались и системы программирования на основе Turbo C.
Современная реализация Borland C++ Builder ориентирована на разработку результирующих программ, выполняющихся под управлением ОС Microsoft Windows всех типов. Сама система программирования Borland C++ Builder, как и Borland Delphi, также функционирует под управлением ОС типа Microsoft Windows. Она полностью поддерживает стандарт языка C, что делает возможным создание с помощью данной системы программирования модулей и библиотек, используемых в других средствах разработки (чего очень сложно достигнуть с помощью Borland Delphi).
По возможностям, внешнему виду и технологиям система программирования Borland C++ Builder схожа с системой программирования Borland Delphi. В ее основу положены те же основные идеи и технологии. Структура классов языка C++ в системе программирования Borland C++ Builder построена в той же библиотеке VCL (visual control library), в которой строится структура классов Object Pascal в системе программирования Borland Delphi. Правда, разработчик, создающий программы на C++, может не пользоваться классами VCL и взять за основу любую другую библиотеку, чего нельзя сказать о разработчике, использующем Object Pascal, — набор доступных библиотек для последнего языка сильно ограничен.