Современные системы программирования
История развития языков программирования. Назначение и составные элементы систем программирования. Структура средств разработки, предназначенных для кодирования, тестирования и отладки программного обеспечения. Системы, выпускаемые компанией Microsoft.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 25.07.2013 |
Размер файла | 177,7 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Современные системы программирования
Введение
Программирование как искусство насчитывает десятки лет в своей истории. Современные студенты и школьники смело минуют Fortran и Pascal и приступают к таким задачам, от которых еще 10-15 лет назад просто дух захватывало.
В программном обеспечении современных ЭВМ приоритетное место занимают системы программирования. Назначение систем программирования - освободить программиста от необходимости работать на языке машинных команд. Язык программирования, с которым работает система программирования, называется ее входным языком. Системы программирования именуются по названию своего входного языка. Например: Бейсик - система, Паскаль - система, система пролог. Иногда в название систем включаются префиксы, обозначающие, например, фирменное происхождение системы. Очень популярны системы с приставкой «Турбо»: Турбо - Паскаль, Турбо - Си и другие. Это системы программирования, разработанные фирмой Borland.
Тема курсовой работы является актуальной, так как системы программирования - это универсальные средства работы с информацией. С их помощью можно решать вычислительные задачи, обрабатывать тексты, получать графические изображения, осуществлять хранение и поиск данных и т.д., в общем, делать все, что делают средства прикладного программного обеспечения - специализированные исполнители. Кроме того, сами эти средства (графические и текстовые редакторы, СУБД и др.) - это программы, написанные на языках программирования, созданные с помощью систем программирования.
В сороковых годах началось использование языков программирования. С тех пор они претерпели большие изменения. В настоящее время они изменяются и развиваются быстрее, чем когда либо ранее.
Даже при условии наличия десятков тысяч программ для ПК пользователям может потребоваться нечто такое, чего не делают (или делают, но не так) имеющиеся программы. В этих случаях целесообразно использовать системы программирования, т.е. системы для разработки новых программ. Современные системы программирования для персональных компьютеров обычно предоставляют пользователю весьма мощные и удобные средства для разработки программ.
Если раньше языки программирования использовались лишь для создания программ для автоматизации вычислительных процессов, то на сегодняшний день они используются для решения более разнообразных задач.
Изучение истории языков программирования, их разнообразия и особенностей позволяет программисту сделать правильный выбор при выборе языка для решения определенной задачи.
Все многообразие языков программирования делят на различные классы в зависимости от решаемых ими задач. Было замечено, что в процессе развития языки программирования, входящие в один класс, сближаются между собой. Хотя само разнообразие классов увеличивается, т.к. увеличивается сфера задач, решаемых с помощью компьютерных технологий.
Цель курсовой работы: изучить и рассмотреть современные системы программирования.
Для достижения поставленной цели нами были поставлены следующие задачи:
классифицировать основные этапы развития языков программирования и систем программирования;
выделить основные виды систем программирования;
подвергнуть анализу основные компоненты системы программирования;
раскрыть требования к системам программирования;
осуществить обзор современных систем программирования.
При написании работы были проанализированы различные источники научно-технической литературы и научные статьи в глобальной сети Интернет.
ГЛАВА 1. Понятие, назначение и составные элементы систем программирования
1.1 Основные этапы развития языков программирования
Машинный язык -- система команд (набор кодов операций) конкретной вычислительной машины, которая интерпретируется непосредственно процессором или микропрограммами этой вычислительной машины. Толковый словарь по вычислительным системам = Dictionary of Computing / Под ред. В. Иллингуорта и др.: Пер. с англ. А. К. Белоцкого и др.; Под ред. Е. К. Масловского. -- М.: Машиностроение, 1990. -- 560 с. Первые программы писались именно на нем, т. к. других средств «общения» человека и компьютера еще не было. Каждую команду машинного языка выполняет определенное электронное устройство. Данные и команды записываются в цифровом виде (например, в шестнадцатеричной или двоичной системах счисления). Понять программу на таком языке человеку очень сложно; к тому же даже небольшая программа будет состоять из множества строк кода. В довершении всего, у каждой вычислительной машины свой машинный язык; следовательно программа, написанная для одной ЭВМ, не будет работать на другой (придется писать снова).
Людям более понятны слова, чем наборы цифр, в отличие от машин. Стремление человека оперировать словами и не цифрами привело к появлению ассемблеров. Это языки, в которых вместо численного обозначения команд и областей памяти используются буквенные.
Но тут сразу возникает проблема: машина не в состоянии понять набор букв. Необходим какой-нибудь «переводчик» на ее родной машинный язык. Так был придуман транслятор -- программа или техническое средство, выполняющее трансляцию программы. ГОСТ 19781-83 // Вычислительная техника. Терминология: Справочное пособие. Выпуск 1 / Рецензент канд. техн. наук Ю. П. Селиванов. -- М.: Издательство стандартов, 1989. -- 168 с
Ассемблеры и сегодня находят применение, т.к. системные программы (обслуживающие работу аппаратного обеспечения), написанные на ассемблере могут работать быстрее, чем аналогичные программы, написанные на других языках программирования.
После ассемблеров наступил рассвет языков так называемого высокого уровня. Для этих языков потребовалось разрабатывать более сложные трансляторы.
Написанные на языках высокого уровня, программные коды обладают логичной структурой. Это облегчает разработку программы и ее отладку.
Языки высоко уровня обладают переносимостью, в отличие от ассемблеров, которые все еще остаются привязанными к своим типам машин. Т.е., написав один раз программу, программист может выполнить ее на любой машине.
Следующим крупным этапом в эволюции программирования было появление объектно-ориентированных языков (ООП). Их отличие от языков высокого уровня заключается в возможности отстранения от алгоритма выполнения программы. С помощью таких языков разработчик как бы оперирует виртуальными объектами. На сегодняшний день, реализация больших и сложных проектов осуществляется в основном с помощью ООП.
Таблица 1 - Этапы развития языков программирования
Этап |
Описание |
|
1 этап (1940-- 1950 гг.) |
Машинные коды, непосредственно воспринимаемые машиной. Составление программ для первых ЭВМ -- утомительный и малопроизводительный процесс, где могло быть много ошибок |
|
2 этап (1950-- 1960 гг.) |
Символические ассемблеры -- условные мнемонические обозначения-автокоды. Программа, составленная на ассемблере, переводится на машинный язык с помощью специальной программы, тоже называемой ассемблером. |
|
3 этап (1960-- 1970 гг.) |
Процедурно-ориентированные, объектно-ориентированные языки программирования высокого уровня |
|
4 этап (1970-- 1980 гг.) |
Языки систем управления базами данных |
|
5 этап (1995-1999 гг.) |
Языки, приближённые к человеческой логике и применимые в Интернете |
1.2 Понятие и структура систем программирования
Составной частью системного программного обеспечения является всякий компилятор. Основное назначение компиляторов -- служить для разработки новых прикладных и системных программ с помощью языков высокого уровня.
Всякая программа, как системная, так и прикладная, проходит этапы жизненного цикла, начиная от проектирования до внедрения и сопровождения. А компиляторы -- это средства, служащие для создания программного обеспечения на этапах кодирования, тестирования и отладки.
Однако сам по себе компилятор не решает полностью всех задач, связанных с разработкой новой программы. Средств только лишь компилятора недостаточно для того, чтобы обеспечить прохождение программой указанных этапов жизненного цикла. Поэтому компиляторы -- это программное обеспечение, которое функционирует в тесном взаимодействии с другими техническими средствами, применяемыми на данных этапах.
Важнейшие технические средства, применяемые в комплексе с компиляторами, включают в себя следующие программные модули:
- текстовые редакторы, служащие для создания текстов исходных программ;
- компоновщики, позволяющие объединять несколько объектных модулей, порождаемых компилятором, в единое целое;
- библиотеки прикладных программ, содержащие в себе наиболее часто используемые функции и подпрограммы в виде готовых объектных модулей;
- загрузчики, обеспечивающие подготовку готовой программы к выполнению;
- отладчики, выполняющие программу в заданном режиме с целью поиска, обнаружения и локализации ошибок.
Вначале компиляторы представляли собой обособленные программные модули, решающие исключительно задачу перевода исходного текста программы на входном языке в язык машинных кодов. Компиляторы разрабатывались вне связи с другими техническими средствами, с которыми им приходилось взаимодействовать. В задачу разработчика программы входило обеспечить взаимосвязь всех используемых технических средств:
- подать входные данные в виде текста исходной программы на вход компилятора;
- получить от компилятора результаты его работы в виде набора объектных файлов;
- подать весь набор полученных объектных файлов вместе с необходимыми библиотеками подпрограмм на вход компоновщику;
- получить от компоновщика единый файл программы (исполняемый файл) и подготовить его к выполнению с помощью загрузчика;
- поставить программу на выполнение, при необходимости использовать отладчик для проверки правильности выполнения программы.
Все эти действия выполнялись с помощью последовательности команд, инициировавших запуск соответствующих программных модулей с передачей им всех необходимых параметров. Параметры передавались каждому модулю в командной строке и представляли собой набор имен файлов и настроек, реализованных в виде специальных «ключей». Пользователи могли выполнять эти команды последовательно вручную, а с развитием средств командных процессоров ОС они стали объединять их в командные файлы.
Со временем разработчики компиляторов постарались облегчить труд пользователей, предоставив им все необходимое множество программных модулей в составе одной поставки компилятора. Теперь компиляторы поставлялись уже вкупе со всеми необходимыми сопровождающими техническими средствами. Кроме того, были унифицированы форматы объектных файлов и файлов библиотек подпрограмм. Теперь разработчики, имея компилятор от одного производителя, могли в принципе пользоваться библиотеками и объектными файлами, полученными от другого производителя компиляторов.
Командный язык Makefile был предложен для написания командных файлов компиляции. Он позволял в достаточно гибкой и удобной форме описать весь процесс создания программы от порождения исходных текстов до подготовки ее к выполнению. Это было удобное, но достаточно сложное техническое средство, требующее от разработчика высокой степени подготовки и профессиональных знаний, поскольку сам командный язык Makefile был по сложности сравним с простым языком программирования. Язык Makefile стал стандартным средством, единым для компиляторов всех разработчиков.
Такая структура средств разработки существовала достаточно долгое время, а в некоторых случаях она используется и по сей день (особенно при создании системных программ). Ее широкое распространение было связано с тем, что сама по себе вся эта структура средств разработки была очень удобной при пакетном выполнении программ на компьютере, что способствовало ее повсеместному применению в эпоху mainframe.
Следующим шагом в развитии средств разработки стало появление так называемой «интегрированной среды разработки». Интегрированная среда объединила в себе возможности текстовых редакторов исходных текстов программ и командный язык компиляции. Пользователь (разработчик исходной программы) теперь не должен был выполнять всю последовательность действий от порождения исходного кода до его выполнения, от него также не требовалось описывать этот процесс с помощью системы команд в Makefile. Теперь ему было достаточно только указать в удобной интерфейсной форме состав необходимых для создания программы исходных модулей и библиотек. Ключи, необходимые компилятору и другим техническим средствам, также задавались в виде интерфейсных форм настройки.
После этого интегрированная среда разработки сама автоматически готовила всю необходимую последовательность команд Makefile, выполняла их, получала результат и сообщала о возникших ошибках при их наличии. Причем сам текст исходных модулей пользователь мог изменить здесь же, не прерывая работу с интегрированной средой, чтобы потом при необходимости просто повторить весь процесс компиляции.
Создание интегрированных сред разработки стало возможным благодаря бурному развитию персональных компьютеров и появлению развитых средств интерфейса пользователя (сначала текстовых, а потом и графических). Их появление на рынке определило дальнейшие развитие такого рода технических средств. Пожалуй, первой удачной средой такого рода можно признать интегрированную среду программирования Turbo Pascal на основе языка Pascal производства фирмы Borland. Ее широкая популярность определила тот факт, что со временем все разработчики компиляторов обратились к созданию интегрированных средств разработки для своих продуктов.
Развитие интегрированных сред несколько снизило требования к профессиональным навыкам разработчиков исходных программ. Теперь в простейшем случае от разработчика требовалось только знание исходного языка (его синтаксиса и семантики). При создании прикладной программы ее разработчик мог в простейшем случае даже не разбираться в архитектуре целевой вычислительной системы.
Дальнейшее развитие средств разработки также тесно связано с повсеместным распространением развитых средств графического интерфейса пользователя. Такой интерфейс стал неотъемлемой составной частью многих современных ОС и так называемых графических оболочек. Со временем он стал стандартом «де-факто» практически во всех современных прикладных программах.
Это не могло не сказаться на требованиях, предъявляемых к средствам разработки программного обеспечения. В их состав были сначала включены соответствующие библиотеки, обеспечивающие поддержку развитого графического интерфейса пользователя и взаимодействие с функциями API (application program interface, прикладной программный интерфейс операционных систем). А затем для работы с ними потребовались дополнительные средства, обеспечивающие разработку внешнего вида интерфейсных модулей. Такая работа была уже более характерна для дизайнера, чем для программиста.
Для описания графических элементов программ потребовались соответствующие языки. На их основе сложилось понятие «ресурсов» (resources) прикладных программ.
Ресурсами прикладной программы будем называть множество данных, обеспечивающих внешний вид интерфейса пользователя этой программы, и не связанных напрямую с логикой выполнения программы. Характерными примерами ресурсов являются: тексты сообщений, выдаваемых программой; цветовая гамма элементов интерфейса; надписи на таких элементах, как кнопки и заголовки окон и т. п.
Для формирования структуры ресурсов в свою очередь потребовались редакторы ресурсов, а затем и компиляторы ресурсов, обрабатывающие результат их работы. Ресурсы, полученные с выхода компиляторов ресурсов, стали обрабатываться компоновщиками и загрузчиками.
Весь этот комплекс программно-технических средств в настоящие время составляет новое понятие, которое здесь названо «системой программирования».
1.3 Структура современной системы программирования
Системой программирования будем называть весь комплекс программных средств, предназначенных для кодирования, тестирования и отладки программного обеспечения. Нередко системы программирования взаимосвязаны и с другими техническими средствами, служащими целям создания программного обеспечения на более ранних этапах жизненного цикла (от формулировки требований и анализа до проектирования). Однако рассмотрение таких систем выходит за рамки данного учебного пособия.
Системы программирования в современном мире доминируют на рынке средств разработки. Практически все фирмы-разработчики компиляторов поставляют свои продукты в составе соответствующей системы программирования в комплексе всех прочих технических средств. Отдельные компиляторы являются редкостью и, как правило, служат только узкоспециализированным целям.
Тенденция такова, что все развитие систем программирования идет в направлении неуклонного повышения их дружественности и сервисных возможностей. Это связано с тем, что на рынке в первую очередь лидируют те системы программирования, которые позволяют существенно снизить трудозатраты, необходимые для создания программного обеспечения на этапах жизненного цикла, связанных с кодированием, тестированием и отладкой программ. Показатель снижения трудозатрат в настоящее время считается более существенным, чем показатели, определяющие эффективность результирующей программы, построенной с помощью системы программирования.
В качестве основных тенденций в развитии современных систем программирования следует указать внедрение в них средств разработки на основе так называемых «языков четвертого поколения» -- 4GL (four generation languages), -- а также поддержка систем «быстрой разработки программного обеспечения» -- RAD (rapid application development).
Языки четвертого поколения -- 4GL -- представляют собой широкий набор средств, ориентированных на проектирование и разработку программного обеспечения. Они строятся на основе оперирования не синтаксическими структурами языка и описаниями элементов, а представляющими их графическими образами. На таком уровне проектировать и разрабатывать прикладное программное обеспечение может пользователь, не являющийся квалифицированным программистом, зато имеющий представление о предметной области, на работу в которой ориентирована прикладная программа. Языки четвертого поколения являются следующим (четвертым по счету) этапом в развитии систем программирования.
Описание программы, построенное на основе языков 4GL, транслируется затем в исходный текст и файл описания ресурсов интерфейса, представляющие собой обычный текст на соответствующем входном языке высокого уровня. С этим текстом уже может работать профессиональный программист-разработчик -- он может корректировать и дополнять его необходимыми функциями. Такой подход позволяет разделить работу проектировщика, ответственного за общую концепцию всего проекта создаваемой системы, дизайнера, отвечающего за внешний вид интерфейса пользователя, и профессионального программиста, отвечающего непосредственно за создание исходного кода создаваемого программного обеспечения.
В целом языки четвертого поколения решают уже более широкий класс задач, чем традиционные системы программирования. Они составляют часть средств автоматизированного проектирования и разработки программного обеспечения, поддерживающих все этапы жизненного цикла -- CASE-систем. Их рассмотрение выходит за рамки данного учебного пособия.
Глава 2. Современные систем программирования
В данной главе мы рассмотрим наиболее популярные системы программирования ведущих фирм-производителей, таких как Borland/Inprise, Misrosoft.
Для краткого описания нами были выбраны только самые известные из всего широкого спектра систем программирования, распространенные именно на рынке Российской Федерации. Информация о данных системах программирования дается как на основании соответствующей литературы, так и на основании личного опыта работы автора.
Отметим основные вехи на пути развития систем программирования:
Переход от одиночных утилит систем программирования к интегрированным диалоговым средам программирования (например, семейство Turbo-продуктов фирмы Borland);
Развитие инструментальных наборов, расширяющих возможности систем программирования, в частности, в области диалога (разного рода Tool Box);
Появление объектно-ориентированных диалектов языков Си и Паскаль; заметим, что по нашему мнению, несмотря на то, что Паскаль является более строгим и корректным языком, феномен Си++ имеет большее значение в силу наличия стандарта;
Возникновение операционной среды Windows со встроенной поддержкой диалога и первых Windows-приложений с помощью SDK (Software Development Keet);
Создание объектно-ориентированных библиотек, поддерживающих диалоговый режим работы в среде DOS и Windows (TurboVision, Object Windows и MFC);
Появление систем программирования, облегчающих создание приложений для DOS и Windows;
Развитие механизма встраивания и связывания объектов OLE 2;
Переход к визуальным системам программирования (Visual Си++, Delphi, Visual Basic), которые ориентированы на разработку информационных приложений.
2.1 Системы программирования фирмы Borland/Inprise
Система программирования Delphi.
Delphi появился на рынке в начале 1995 года и быстро завоевал титул первой системы быстрой разработки приложений для Windows, сочетающей в единой среде высокопроизводительный компилятор, визуальные механизмы двунаправленного проектирования и новую методику масштабируемого доступа к базам данных.
Данная среда является одной из ведущих систем программирования, используемых для разработки современных программных продуктов, и в первую очередь приложений операционной системы MS Windows. Система Delphi базируется на использовании языка программирования Object Pascal, который является логическим продолжением и развитием классического языка программирования Паскаль.
Данное название, подобно названию языка Паскаль, также не является случайным. Свое название система программирования Delphi получила в честь существовавшего в древней Греции города Дельфы, где находился знаменитый храм бога Аполлона.
Систему программирования Delphi подобно системе Турбо Паскаль часто называют интегрированной средой программирования. Слово «интегрированный» (от латинского integrare - восстанавливать, восполнять) означает в данном случае, что в системе объединены в одно целое различные средства, способствующие наиболее быстрой и эффективной разработке программы.
К этим средствам относится, во-первых, файловый менеджер, позволяющий не покидая среду программирования создавать новые программные файлы, сохранять их там, где это необходимо и когда необходимо, а также открывать уже существующие файлы. Во-вторых, это экранный редактор, позволяющий не только набирать и корректировать текст программы, но и в ряде случаев автоматизировать этот процесс и подсказывать программисту те служебные слова, которые можно использовать в данном контексте. В третьих, - это система отладки программы, которая в большинстве случаев не ограничивается указанием характера сделанной ошибки, указывая также строку, в которой эта ошибка была допущена. В четвертых, - это разветвленная справочная система, которая содержит не только сведения теоретического характера, но и конкретные примеры разработки приложений в среде Delphi. Все вышеперечисленное далеко не исчерпывает все многообразие средств, способствующих созданию приложений в данной системе.
Характеризуя среду программирования Delphi, о ней также говорят как о визуальной и событийно-ориентированной. Первое означает, что пользователь визуально, то есть наглядно может увидеть в системе те заготовки, которые в дальнейшем будут использованы для создания экранных объектов в его программе, а затем сам сконструировать ее интерфейс (внешний вид) путем переноса этих заготовок на экранную форму. Второе же означает, что программист может выбрать из имеющегося в системе программирования списка те события, на которые должны реагировать экранные объекты и запрограммировать эту реакцию нужным ему образом.
Существенным дополнением к возможностям обычных систем программирования в системах Delphi является наличие средств подключения и работы с локальными и распределенными системами баз данных. В состав самых первых систем программирования Delphi уже был включен процессор баз данных компании Borland ( BDE - Borland Database Engine). Процессор BDE является посредником между прикладными программами и базами данных. Для уменьшения зависимости прикладных программ от конкретной базы данных этот процессор предоставляет пользователям единый интерфейс, благодаря чему при смене базы данных приложение остается вполне работоспособным. В состав процессора BDE входят драйверы систем управления базами данных (СУБД) для некоторых, наиболее распространенных на персональных ЭВМ СУБД: Microsoft Access, FoxPro, Paradox, dBase и некоторых других. В состав BDE входит также драйвер ODBC (Open Database Connectivity), разработанный для включения в системы Delphi возможностей, предоставляемых для связи с базами данных.
Сама компания Borland продолжила развитие собственной системы программирования в части поддержки работы с базами данных. Ею были разработаны технологии IBX (InterBase Express) и dbExpress, которые полностью заменили процессор BDE. В настоящее время компания рекомендует пользоваться не процессором BDE, а более современной технологией dbExpress, которая использует для получения данных исключительно запросы SQL .
Наконец, еще одним важным достоинством системы программирования Delphi является ее универсальность. Дело в том, что многие современные языки и соответствующие системы программирования созданы для решения узкоспециальных задач. Так, язык Cobol предназначен в первую очередь для создания программ в области экономики, язык Fortran - для инженерно-технических расчетов, языки Lisp и Prolog - для работы над системами искусственного интеллекта и т.д. Система же Delphi позволяет создавать профессиональные и эффективно работающие приложения, используемые в самых различных сферах человеческой деятельности. Поэтому время, затраченное будущим специалистом на изучение данной системы программирования, будет потрачено с пользой, вне зависимости от того, какую специализацию он изберет для себя в дальнейшем.
1. Систем программирования C++Builder.
Язык Си++ появился раньше языка Object Pascal и раньше языка Delphi. Именно на примере Си++ были продемонстрированы принципы объектно-ориентированного программирования и его достоинства.
Новейшая система объектно-ориентированного программирования C++ Builder производства корпорации Borland предназначена для операционных систем Windows. Интегрированная среда C++ Builder обеспечивает скорость визуальной разработки, продуктивность повторно используемых компонент в сочетании с мощью языковых средств C++, усовершенствованными инструментами и разномасштабными средствами доступа к базам данных.
C++ Builder может быть использован везде, где требуется дополнить существующие приложения расширенным стандартом языка C++, повысить быстродействие и придать пользовательскому интерфейсу качества профессионального уровня.
По своим возможностям С++ Builder практически полностью пересекается с системами Delphi: и здесь и там использован метод технического проектирования программы, называемый визуальным программированием. Отличие от систем Delphi в данном случае заключается в том, что базовым языком данной системы программирования является язык Си++.
C++Builder объединяет в себе комплекс объектных библиотек (STL, VCL, CLX, MFC и др.), компилятор, отладчик, редактор кода и многие другие компоненты. Цикл разработки аналогичен Delphi. Большинство компонентов, разработанных в Delphi, можно использовать и в C++Builder без модификации, но обратное утверждение не верно.
C++Builder содержит инструменты, которые при помощи drag-and-drop действительно делают разработку визуальной, упрощает программирование благодаря встроенному WYSIWYG - редактору интерфейса и прочим.
В системе программирования С++ Builder явно прослеживается тенденция построения многоязыковых систем программирования. В большой степени это связано с входящей в состав системы С++ Builder библиотекой визуальных компонентов VCL.
Первоначально эта библиотека была разработана для систем программирования на Паскале, то есть систем Delphi, а позднее была перенесена в С++ Builder. Наличие этой библиотеки в разных системах программирования позволяет пользователю писать программу, состоящую из фрагментов, написанных на разных языках. При этом программист имеет возможность пользоваться одними и теми же абстракциями. В то же время системы Delphi и С++ Builder - это разные системы, поэтому реально создавать многоязыковые программы с их помощью нелегко.
Библиотека VCL замечательна еще и тем, что она полностью построена на принципах объектно-ориентированного программирования и единой иерархии классов с общим базовым классом TObject, находящимся в основе этой иерархии. Все классы VCL являются потомками этого класса. Наличие общего корня библиотеки классов позволяет использовать полиморфизм для реализации общих алгоритмов и структур данных. По своей функциональности библиотека VCL в значительной степени пересекается с другими широко распространенными библиотеками Си++, в частности, со стандартной библиотекой Си++, в том числе со стандартной библиотекой шаблонов STL.
2.2 Системы программирования фирмы Microsoft
К наиболее распространенным системам программирования для настольных ЭВМ относятся системы, выпускаемые компанией Microsoft. Весь комплекс программ, поставляемых компанией Microsoft, следует называть единой операционной средой, предназначенной для разработчиков системного и прикладного программного обеспечения.
Системы, выпускаемые компанией Microsoft, выполнены в едином стиле, их интерфейс хорошо продуман. Многооконный интерфейс позволяет одновременно видеть различную информацию о создаваемой, тестируемой или исполняемой программе. Все системы имеют развитые отладчики, которые работают в терминах базового языка программирования (Basic/Cи++/Язык ассемблера). В любой момент времени у программиста есть возможность проверить состояние того или иного объекта данных, а в процессе отладки можно даже менять некоторые значения переменных и сразу продолжать работу с точки остановки программы без дополнительной перекомпиляции.
1. Система программирования Visual Basic.
Microsoft Visual Basic - сегодня самая популярная в мире система проектирования приложений для Windows. Среда Visual Basic может с успехом использоваться начинающими пользователями для познания секретов программирования и увлекательных занятий по созданию несложных для начала приложений и, в то же время, предоставляет мощные инструменты разработки опытным программистам. Чрезвычайно развитые справочная система, средства обучения, мастера и программы-надстройки позволяют при построении приложения и работе в Visual Basic найти выход из любой ситуации и получить ответ на любой вопрос. Начинать работать с Visual Basic можно практически с любым уровнем подготовки.
Язык Basic, в том виде, каким он предстает в современных системах программирования, сильно отличается от своей первоначальной версии. В настоящее время это объектно-ориентированный язык, обладающий всеми возможностями других, более новых языков программирования, но оставшийся весьма простым для изучения, благодаря простым изобразительным средствам. Процесс создания диалоговых форм и расстановки на них элементов управления диалогом благодаря визуальному подходу стал несложным и понятным. Система программирования в процессе создания форм автоматически создает программу на языке Visual Basic. Отладчик, встроенный в систему программирования, работает в терминах языка Visual Basic, поэтому отладка программ не представляет особой сложности.
В целом, систему Visual Basic можно определить, как инструментальную среду для разработки самых различных программных продуктов. Создаваемые в этой интегрированной инструментальной среде программы обладают свойством автономности и в состоянии после завершения разработки функционировать в отрыве от самой среды. Следует только помнить о необходимости сопровождать распространение программы, написанной в системе Visual Basic, библиотеками, отслеживая совместимость версий стандартных библиотек фирмы Microsoft с версией созданной программы. Отсутствие нужной библиотеки, а иногда и небольшого системного файла в системном каталоге неминуемо заблокирует работу программы.
Если задаться вопросом - что такое Visual Basic - компилятор или интерпретатор, можно смело сказать: «И то, и другое». Его нельзя всецело отнести ни к компиляторам, ни к интерпретаторам.
Основным признаком интерпретатора Visual Basic является то, что созданные с помощью него программы выполняются только в среде разработки. Программу можно запустить непосредственно из среды и если в ней есть ошибки, они сразу же распознаются. Все это наблюдается и в Visual Basic, где можно запустить приложение непосредственно в среде программирования. При этом Visual Basic использует технологию Threaded-p-Code, при которой каждая написанная строка кода преобразуется в промежуточный код - Threaded-p-Code. Это не машинный код, но такой код выполняется быстрее, чем при работе с обычным интерпретатором. Во-первых, Visual Basic сразу же проверяет синтаксис программы и выдает сообщение, если присутствует ошибка. Также можно самим искать эти ошибки.
Но при этом Visual Basic - не просто интерпретатор, так как это означало бы, что приложения выполняются только в среде Visual Basic. Эта среда программирования предоставляет возможность создавать и исполняемые ЕХЕ-файлы, поэтому она относится и к компиляторам.
Visual Basic нельзя назвать чистым компилятором, так как в отличие, например, от Visual C++, Visual Basic не создает исполняемый файл сразу же при запуске из среды разработки. Для создания такого файла необходимо сделать это явно (команда File\Make ***.EXE). Начиная с пятой версии, Visual Basic обладает так называемым «Native Compiler», то есть компилятором, который может создавать машинный код. Таким образом. Visual Basic объединяет в себе возможности, как интерпретатора, так и компилятора. И это имеет больше преимуществ, чем недостатков.
2. Среда программирования Visual C++.
Система программирования Microsoft Visual C++ представляет собой реализацию среды разработки для распространенного языка системного программирования C++, выполненную компанией Microsoft. Эта система программирования в настоящее время построена в виде интегрированной среды разработки, включающей в себя все необходимые средства для разработки результирующих программ, ориентированных на выполнение под управлением ОС типа Microsoft Windows различных версий.
Возможность использовать язык Си++ превращает эту систему программирования в инструмент, позволяющий создавать не только обычные офисные приложения, но и решать другие задачи.
Основу системы программирования Microsoft Visual C++ составляет библиотека классов MFC (Microsoft foundation classes). В этой библиотеке реализованы в виде классов C++ все основные органы управления и интерфейса ОС. Также в ее состав входят классы, обеспечивающие разработку приложений для архитектуры клиент-сервер и трехуровневой архитектуры (в современных версиях библиотеки). Система программирования Microsoft Visual C++ позволяет разрабатывать любые приложения, выполняющиеся в среде ОС типа Microsoft Windows, в том числе серверные или клиентские результирующие программы, осуществляющие взаимодействие между собой по одной из указанных выше архитектур.
Классы библиотеки MFC ориентированы на использование технологий COM/DCOM, а также построенной на их основе технологии ActiveX для организации взаимодействия между клиентской и серверной частью разрабатываемых приложений. На основе классов библиотеки пользователь может создавать свои собственные классы в языке C++, организовывать свои структуры данных.
В отличие от систем программирования компании Borland, система программирования Microsoft Visual C++ ориентирована на использование стандартных средств хранения и обработки ресурсов интерфейса пользователя в ОС Windows.
Система программирования Microsoft Visual C++ выдержала несколько реализаций. В процессе выхода новых версий системы программирования было выпущено и несколько версий библиотеки MFC, на которой основана данная система.
Сама по себе библиотека MFC является, по мнению автора, довольно удачной реализацией широкого набора классов языка C++, ориентированного на разработку результирующих программ, выполняющихся под управлением ОС типа Microsoft Windows. Это во многом обусловлено тем, что создатель библиотеки компания Microsoft одновременно является и создателем ОС типа Microsoft Windows, на которые ориентирован объектный код библиотеки. Библиотека может быть подключена к результирующей программе с помощью обычного компоновщика, либо использоваться как динамическая библиотека, подключаемая к программе во время ее выполнения. Библиотека MFC достаточно широко распространена. Ее возможно использовать не только в составе систем программирования производства компании Microsoft, но и в системах программирования других производителей.
В систему программирования встроен удобный интерактивный отладчик, работающий в терминах языка Си++ или языка ассемблера и позволяющий одновременно видеть на экране тексты различных фрагментов программ, значения переменных и регистров центрального процессора ЭВМ, стек вызовов процедур и другую необходимую при отладке информацию. Отладчик позволяет менять значения переменных, что иногда помогает программисту проверить гипотезу о причинах неправильного поведения программы, а впоследствии и исправить программу.
При работе в системе Visual C++ доступна вся справочная информация, как о самой системе, так и о языке Си++, библиотечных функциях и операционной системе Windows. Справочник снабжен большим количеством примеров, которые часто позволяют повысить эффективность как процесса программирования, так и процесса работы уже подготовленной программы.
Заключение
Итак, нами выполнена курсовая работа на тему « Современные системы программирования». Цель курсовой работы по изучить и рассмотреть современные системы программирования нами достигнута, так как были достигнуты поставленные цели. Мы классифицировали основные этапы развития языков программирования и систем программирования, выделили основные виды систем программирования, подвергли анализу основные компоненты системы программирования, раскрыли требования к системам программирования, осуществили обзор современных систем программирования.
При написании работы были проанализированы различные источники научно-технической литературы и научные статьи в глобальной сети Интернет
На рынке средств разработки в современном мире преобладают системы программирования.
Для известных языков программирования на IBM PC существует множество систем программирования. Естественно, что программисты предпочитают те системы, которые легки в использовании, позволяют получить эффективные программы, имеют богатые библиотеки функций (подпрограмм) и мощные возможности для отладки разрабатываемых программ. В качестве примеров таких систем программирования можно назвать Turbo С, Turbo C++, Turbo Pascal, Microsoft С, Microsoft Basic. В последнее время стали появляться системы программирования на языке Java, они позволяют создавать программы, вызываемые при просмотре Web-страниц в глобальной электронной сети Internet.
Особым классом систем программирования являются системы для создания приложений типа клиент-сервер. Эти системы позволяют быстро создавать информационные системы для подразделений и даже крупных предприятий. В них содержатся средства для создания пользовательского интерфейса, описания процедур обработки данных, заготовки для выполнения типовых действий по обработке данных и т.д. Эти системы, как правило, позволяют работать с самыми различными СУБД - Oracle, Microsoft SQL Server и др.
Системы программирования, прежде всего, различаются естественно по тому, какой язык программирования они реализуют. Среди программистов, пишущих программы для персональных компьютеров, наибольшей популярностью пользуется языки Си, Си+ +, Паскаль и Бейсик.
Из универсальных языков программирования сегодня наиболее популярны следующие: Бейсик (Basic) - для освоения требует начальной подготовки (общеобразовательная школа); Паскаль (Pascal) - требует специальной подготовки (школы с углубленным изучением предмета и общетехнические ВУЗы); Си++ (C++), Ява (Java) - требуют профессиональной подготовки (специализированные средние и высшие учебные заведения).
Для каждого из этих языков программирования сегодня имеется немало систем программирования, выпускаемых различными фирмами и ориентированных на различные модели ПК и операционные системы. Наиболее популярны следующие визуальные среды быстрого проектирования программ для Windows:
Basic: Microsoft Visual Basic
Pascal: Borland Delphi
C++: Borland C++Bulider
Java: Symantec Cafй.
Для разработки серверных и распределенных приложений можно использовать систему программирования Microsoft Visual C++, продукты фирмы Inprise под маркой Borland, практически любые средства программирования на Java.
Тенденция такова, что все развитие систем программирования идет в направлении неуклонного повышения их дружественности и сервисных возможностей. Это связано с тем, что на рынке в первую очередь лидируют те системы программирования, которые позволяют существенно снизить трудозатраты, необходимые для создания программного обеспечения на этапах жизненного цикла, связанных с кодированием, тестированием и отладкой программ. Показатель снижения трудозатрат в настоящее время считается более существенным, чем показатели, определяющие эффективность результирующей программы, построенной с помощью системы программирования.
В качестве основных тенденций в развитии современных систем программирования следует указать внедрение в них средств разработки на основе так называемых языков четвертого поколения 4GL (four generation languages), а также поддержка систем быстрой разработки программного обеспечения RAD (rapid application development).
Языки четвертого поколения 4GL представляют собой широкий набор средств, ориентированных на проектирование и разработку программного обеспечения. Они строятся на основе оперирования не синтаксическими структурами языка и описаниями элементов, а представляющими их графическими образами. На таком уровне проектировать и разрабатывать прикладное программное обеспечение может пользователь, не являющийся квалифицированным программистом, зато имеющий представление о предметной области, на работу в которой ориентирована прикладная программа. Языки четвертого поколения являются следующим (четвертым по счету) этапом в развитии систем программирования.
Описание программы, построенное на основе языков 4GL, транслируется затем в исходный текст и файл описания ресурсов интерфейса, представляющие собой обычный текст на соответствующем входном языке высокого уровня. С этим текстом уже может работать профессиональный программист-разработчик он может корректировать и дополнять его необходимыми функциями. Такой подход позволяет разделить работу проектировщика, ответственного за общую концепцию всего проекта создаваемой системы, дизайнера, отвечающего за внешний вид интерфейса пользователя, и профессионального программиста, отвечающего непосредственно за создание исходного кода создаваемого программного обеспечения.
В целом языки четвертого поколения решают уже более широкий класс задач, чем традиционные системы программирования. Они составляют часть средств автоматизированного проектирования и разработки программного обеспечения, поддерживающих все этапы жизненного цикла CASE-систем.
язык microsoft отладка система
Глоссарий
№ п/п |
Понятие |
Содержание |
|
1 |
СУБД - Система управления базами данных |
совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных. управление данными во внешней памяти |
|
2 |
Операционная система |
комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной системы и прикладными программами, а с другой стороны -- предназначены для управления устройствами, управления вычислительными процессами, эффективного распределения вычислительных ресурсов между вычислительными процессами и организации надёжных вычислений. |
|
3 |
компиляторы |
это средства, служащие для создания программного обеспечения на этапах кодирования, тестирования и отладки |
|
4 |
транслятор |
программа или техническое средство, выполняющее трансляцию программы |
|
5 |
Ассемблер |
(компьютерная программа, компилятор исходного текста программы, написанной на языке ассемблера, в программу на машинном языке. |
|
6 |
Трансляция программы |
преобразование программы, представленной на одном из языков программирования, в программу на другом языке и, в определённом смысле, равносильную первой. |
|
7 |
Интерпретатор |
программа (разновидность транслятора) или аппаратное средство, выполняющее интерпретацию |
|
8 |
Интерпретация |
пооператорный (покомандный, построчный) анализ, обработка и тут же выполнение исходной программы или запроса (в отличие от компиляции, при которой программа транслируется без её выполнения) |
|
9 |
Объектно-ориентированное проектирование |
это часть объектно-ориентированной методологии, которая предоставляет возможность программистам оперировать понятием «объект», нежели понятием «процедура» при разработке своего кода. Объекты содержат инкапсулированные данные и процедуры, сгруппированные вместе, отображая т.о. сущность объекта. «Интерфейс объекта», описывает взаимодействие с объектом, то, как он определен. |
|
10 |
интерфейс |
граница раздела двух систем, устройств или программ, определённая их характеристиками, характеристиками соединения, сигналов обмена и т. п. |
|
11 |
интернет |
всемирная система объединённых компьютерных сетей |
|
12 |
Язык программирования |
формальная знаковая система, предназначенная для записи компьютерных программ |
|
13 |
компьютерная программа |
последовательность инструкций, предназначенных для исполнения устройством управления вычислительной машины |
|
14 |
Интегрированная среда разработки |
система программных средств, используемая программистами для разработки программного обеспечения (ПО). |
|
15 |
Программное обеспечение |
все или часть программ, процедур, правил и соответствующей документации системы обработки информации |
Список используемой литературы
Айвор Хортон. Visual C++ 2010: полный курс = Ivor Horton's Beginning Visual C++ 2010. -- М.: Диалектика, 2010.
Бьянкуцци Ф., Ш. Уорден. Пионеры программирования. Диалоги с создателями наиболее популярных языков программирования. -- СПб.: Символ-Плюс, 2010.
Волкова И.А., Головин И.Г., Карпов Л.Е. Системы программирования: Учебное пособие. - М.: Издательский отдел факультета ВМК МГУ, 2009.
Герберт Шилдт. Полный справочник по C++ = C++: The Complete Reference. -- 4-е изд. -- М.: Вильямс, 2011.
Джесс Либерти, Дэвид Хорват. Освой самостоятельно C++ за 24 часа = Sams Teach Yourself C++ in 24 Hours, Complete Starter Kit. -- 4-е изд. -- М.: Вильямс, 2007.
Жилмер Дж. Дердж, Дэвид Р. Мюссер, Атул Сейни. C++ и STL: справочное руководство = STL Tutorial and Reference Guide: C++ Programming with the Standard Template Library. -- 2-е издание. -- М.: Вильямс, 2010.
Непейвода Н.Н., Скопин И.Н. Основания программирования: Учебное пособие. - М., 2003.
Пестриков В.М., Маслобоев А.Н., Федоров О.К. Основы программирования в системе Borland Delphi: Учебное пособие / СПб ГТУ РП, СПб, 2004.
Иан Грэхем. Объектно-ориентированные методы. Принципы и практика Object-Oriented Methods: Principles & Practice. -- 3-е изд. -- М.: Вильямс, 2004.
Кузнецов С.Д. Проектирование и разработка корпоративных информационных систем [Электронный ресурс]. - Режим доступа: http://citforum.ru/cfin/prcorpsys/infsistpr_04.shtml#311.
Основы среды программирования Microsoft Visual Basic 6.0 [Электронный ресурс]. - Режим доступа: http://www.4-articles.ru/computers/41-programmnoe-obespechenie/2105-microsoft-visual-basic-60.
Страуструп Б. Программирование: принципы и практика использования C++, исправленное издание = Programming: Principles and Practice Using C++. М.: Вильямс, 2011.
1. Страуструп Б. Язык программирования C++. Специальное издание = The C++ programming language. Special edition. -- М.: Бином-Пресс, 2007.
Системное ПО [Электронный ресурс]. - Режим доступа: http://stfw.ru/page.php? id=9944 - Информационные технологии. - Загл.с экрана
Современные системы программирования [Электронный ресурс]. - Режим доступа: http://www.ci.ru/inform12_03/p_22.htm. - Загл. с экрана
Соколов В.В. Эволюция языков программирования [Электронный ресурс]. - Режим доступа: http://www.ait.org.ua/p/pub_evolution.html. - Загл.с экрана
Среда визуального программирования Borland C++Builder [Электронный ресурс]. - Режим доступа: http://www.bourabai.kz/C-Builder/1.htm.
Стивен Прата. Язык программирования C++ (C++11). Лекции и упражнения C++ Primer Plus, 6th Edition (Developer's Library). -- 6-е изд. -- М.: Вильямс, 2012.
Список сокращений
VCL - Библиотека визуальных компонентов (Visual Component Library)
SQL - язык управления базами данных для реляционных баз данных
ОС - Операционная система
СУБД - Система управления базами данных
ООП - Объектно-ориентированное программирование
ОС - операционная система
BDE - Borland Database Engine драйвер баз данных фирмы Borland/Inprise
ЭВМ - Электронная вычислительная машина
4GL (four generation languages) - «язык четвертого поколения»
RAD (rapid application development) - система «быстрой разработки программного обеспечения»
Размещено на Allbest.ru
...Подобные документы
Описание современных языков программирования (Паскаль, Ассемблер, С++, Бейсик, Лого, Форт, Пролог, Рефал и Лекс). Понятие, назначение и составные элементы систем программирования (машинно-ориентированных и машинно-независимых систем программирования).
курсовая работа [96,3 K], добавлен 18.08.2010История развития и классификация высокоуровневых языков логического программирования. Определение понятий графического интерфейса, сетевых протоколов и моделей баз данных. Современные системы программирования компании Borland/Inprise и фирмы Microsoft.
курсовая работа [72,3 K], добавлен 11.07.2011Основные этапы развития языков программирования. Характеристика машинно-ориентированной, проблемно-ориентированной и процедурно-ориентированной систем программирования. Ознакомление с системами программирования Delphi, Visual Basic и Visual C++.
курсовая работа [102,4 K], добавлен 21.07.2012Функции и основные компоненты систем программирования. Средства создания программ. Трансляторы языков программирования. Принципы и фазы работы компилятора, трансформация языка программирования в машинный код. Механизм преобразования интерпретатора.
презентация [3,3 M], добавлен 07.02.2012История развития языков программирования; создание и распространение языка С++; новый подход к разработке объектно-ориентированного программного обеспечения. Применение моделирования предметных областей для структуризации их информационных отражений.
реферат [29,1 K], добавлен 06.12.2010Цели и задачи дисциплины "Технология программирования". Программные средства ПК. Состав системы программирования и элементы языка. Введение в систему программирования и операторы языка Си. Организация работы с файлами. Особенности программирования на С++.
методичка [126,3 K], добавлен 07.12.2011Описание среды разработки Microsoft Visual Studio. Поддерживаемые технологии и языки программирования. Возможности и особенности компьютеризированного тестирования человека. Проектирование программного обеспечения с использованием объектного подхода.
курсовая работа [3,0 M], добавлен 09.02.2013Языки программирования низкого и высокого уровней и среды реализации. Особенности процедурных, логических, объектно-ориентированных языков. Состав системы программирования: трансляторы, библиотеки и отладчик программ, компоновщик, средства редактирования.
презентация [11,9 K], добавлен 23.10.2013Рассмотрение общих сведений и уровней языков программирования. Ознакомление с историей развития, использования языков программирования. Обзор достоинств и недостатков таких языков как Ассемблер, Паскаль, Си, Си++, Фортран, Кобол, Бейсик, SQL, HTML, Java.
курсовая работа [759,5 K], добавлен 04.11.2014Назначение и функции информационной системы как программно-аппаратного комплекса, предназначенного для хранения и обработки данных какой-либо предметной области. Каскадная схема создания ИС с обратной связью. Основные элементы языка программирования С++.
контрольная работа [1,7 M], добавлен 14.05.2012Оценка современного этапа развития компьютерных технологий. История развития, классификации, сведения и уровни языков программирования. Обзор современных языков программирования: Си, его разовидности, Паскаль, Фортран, Бейсик - тенденция их развития.
курсовая работа [46,5 K], добавлен 22.12.2010Машинные коды и ассемблер. Первые языки программирования высокого уровня. Язык программирования FORTRAN. Достоинства и недостатки ALGOL. Научные и бухгалтерские программы. Основные принципы, которые соблюдались при создании языка программирования Basic.
курсовая работа [407,4 K], добавлен 21.06.2014Понятие объектно-ориентированного программирования, общая характеристика языков высокого уровня. Разработка программного обеспечения для реализации компьютерной игры "пинбол" с помощью императивного программирования в среде Microsoft Visual Basic.
курсовая работа [428,9 K], добавлен 19.09.2012Классификация электронных средств обучения, преимущества их использования, рекомендации по созданию. Требования к структуре и содержанию учебного материала. Особенности изучения языков программирования на уроках информатики. Среда программирования Delphi.
дипломная работа [770,2 K], добавлен 12.09.2015Характеристика языков программирования: краткая история, хронология. Основные виды языков программирования: ассемблер; бейсик. Создание и использование формул в Excel. Применение операторов в формулах. Использование функций в Excel. Сайт дома отдыха.
отчет по практике [139,1 K], добавлен 03.06.2011Виды и классификация программного обеспечения. Операционные системы. Виды прикладного программного обеспечения. Программные средства работы с текстом, для вычислительных работ, с графикой, со звуком. Базы данных. Языки и системы программирования.
реферат [87,7 K], добавлен 07.03.2009Классификация систем автоматического программирования по различным критериям, представление о направлениях развития автоматизации программирования, функциональная структура САП Техтран. Проблемно-ориентированный язык программирования оборудования с ЧПУ.
книга [1,4 M], добавлен 14.03.2010Системы программирования и их графические возможности. Разработка мультимедиа курса, способствующего эффективному усвоению учащимися базовой школы темы "Графические возможности языка программирования" (на примере языков программирования Basic и Pascal).
дипломная работа [588,3 K], добавлен 29.12.2010Характеристика базовых конструкций языков программирования. Изучение истории их развития и классификации. Определение основных понятий языков программирования. Описание основных операторов, которые используются в языках программирования высокого уровня.
курсовая работа [400,6 K], добавлен 10.11.2016Сущность и функции языков программирования, их эволюция и оценка популярности различных видов. Особенности компьютерных программ, разработанных на компилируемом, интерпретируемом или смешанном языке. Основные классы и иерархия языков программирования.
презентация [873,4 K], добавлен 23.01.2013