Сравнительный анализ трех языков программирования на предмет оптимального языка программирования для освоения первоначальных навыков

Курсовая работа

Министерство образования и науки Российской Федерации

ФГБОУ ВПО «Саратовский государственный социально-экономический университет»

Кафедра информационных систем в экономике

Выполнила:

студентка 1 курса 7 группы

факультета учета,

статистики и информатики

Алина Шишлова

Руководитель:

к.э.н., доцент Чекурков Н.А.

г. Саратов 2012

Содержание

Введение

Глава 1. Общее сравнение Pascal, VBA, C++

1.1 Массовость распространения 3-х программ на рынке

1.2 Опрос

Вывод

Глава 2. Сравнение и анализ синтаксиса программ на основе одной задачи

2.1 Задача на Pascal, плюсы и минусы языка

2.2 Задача на VBA, плюсы и минусы языка

2.3 Задача на C++, плюсы и минусы языка

Вывод

Заключение

Список литературы

язык программирование pascal vba

Введение

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

История развития языков программирования началась в ХХ веках. Программирование — это искусство создавать программные продукты, которые написаны на языке программирования. Язык программирования — это формальная знаковая система, которая предназначена для написания программ, понятных для исполнителя. Другими словами, программирование — это четкая заданная последовательность действий, которые пишет программист. Языки программирования делятся на три вида:

  • машинные языки.
  • языки низкого уровня.

Например, Ассемблер.

  • языки программирования высокого уровня. Например, Паскаль, Си, Java.

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

В начале развития программирования программисты писали программы одним файлом целиком и полностью. На протяжении 60-х годов запросы на разработку программного обеспечения возросли и программы стали очень большими. Люди начали понимать, что создание программного обеспечения — гораздо более сложная задача, чем они себе представляли. Это привело к тому, что было разработано структурное программирование. Структурное программирование — это программное обеспечение, в основе которого лежит представление программы в виде иерархической структуры блоков. В данном периоде появились такие структуры, как: структура выбора (условия), структура повторения (циклы), структура следования (действия идут один за другим).

18 стр., 8996 слов

Решение задач: Применение линейного программирования для решения экономических ...

... анализ применения линейного программирования для решения экономических задач. Задачами курсовой работы являются: 1. Теоретико-методическое описание метода линейного программирования; 2. Выявление области применения и ограничения использования линейного программирования для решения экономических задач; 3. Оптимизация прибыли с применением метода линейного программирования; 4. Постановка задачи и ...

Структура выбора рассматривалась, как выбрать действия в зависимости от условия.

Структура повторения — одинаковые действие выполняются несколько раз до какого-то события (условия).

Структура следования — действия идут последовательно без ветвления один за другим.

С развитием программирования начали применять процедуры и функции. То есть если есть задача, которая выполняется несколько раз, то ее проще объявить как функцию или процедуру. И в выполнении программы просто вызывать ее. Общий код программы в данном случае становиться меньше. Функции позволяют создавать модульные программы.

Далее с развитием начали использовать структуры, а затем перешли к классам. Структуры — это составные типы данных, построенные с использованием других типов. Например, структура время. В нее входит: часы, минуты, секунды. Программист мог создать структуру время и работать с ней, как с отдельной структурой. Класс — это структура, которая имеет свои переменные и функции, которые работают с этими переменными. Это было очень большое достижение в области программирования. Теперь программирование можно было разбить на классы и тестировать не всю программу, состоящую из 10000 строк кода, а разбить программу на 100 классов, и тестировать каждый класс. Это существенно облегчило написание программного продукта. Но и этого было мало. Следующим достижением в области программирования было наследование и полиморфизм. Наследование — это способ повторного использования программного обеспечения, при котором новые классы создаются из уже существующих путем заимствования их атрибутов и функций, при этом обогащая новый класс и добавляя в него новые функции. Это достижение сэкономит время на написание новых классов. Так как можно использовать функции предыдущих классов, и наращивать свой функционал и переменные в новом классе. Полиморфизм — это возможность для объектов разных классов, связанных при помощи наследования, реагировать различным образом на одно и то же сообщение(имеется в виду функции).

Все это соединили вместе и получили объектно-ориентированное программирование (ООП).

Объектно-ориентированное программирование — это программирование, в основу которого положено понятие объекта. Объект — это элемент программирования, объединяющий в себе как данные (структуру), так и действия над ними (функции).

То есть когда класс создан, то его можно использовать как новый спецификатор типа. При этом переменная данного класса становится объектом. В нем есть и переменные и функции, которые обрабатывают эти переменные.

17 стр., 8402 слов

Дипломная работа: Решение задач оптимизации с применением пакетов прикладных программ

... MATLAB. ; Освоение средств программирования в системе MATLAB. ; Изучение численных методов решения задач одномерной оптимизации. ; Изучение численных методов решения задач многомерной оптимизации. ; Построение математических моделей некоторых экономических задач оптимизации. ; Изучение методов решения построенной математической ...

Цель курсовой работы: определить какой язык программирования лучше для освоения первоначальных навыков.

Задачи:

  • выяснить на сколько Pascal, C++, VBA распространены на рынке;
  • узнать, какой язык программирования должен быть первым;
  • определить плюсы и минусы языка Pascal;
  • определить плюсы и минусы языка VBA;
  • определить плюсы и минусы языка C++.

Глава 1. Общее сравнение Pascal, VBA, C++

1.1 Массовость распространения 3-х программ на рынке

Самым распространенным языком программирования является VBA. Главная причина проста язык VBA встроен в приложения Office (и не только), и код на языке VBA можно хранить внутри документов приложений Office документах Word, книгах Excel, презентациях PowerPoint и т.п. Конечно же, этот код можно запускать оттуда на выполнение, поскольку среда выполнения кода VBA встроена внутрь этих приложений.

В настоящее время VBA встроен:

;

  • во все главные приложения Office Word, Excel, Access, PowerPoint, Outlook, FrontPage, InfoPath;

;

  • в другие приложения Microsoft, например, Visio и Microsoft Project;

;

  • в более чем 100 приложений третьих фирм, например, CorelDraw и CorelWordPerfect Office 2000, AutoCAD и т.п.

Система программирования Turbo Pascal получила широкое распространение и завоевала свое место на рынке. Основной причиной явилось то, что система впервые была построена в виде интегрированной среды. Данный факт предопределил ее широкое распространение, и, прежде всего, в университетской среде, где требовались простые и понятные в использовании средства разработки.

Первые версии системы программирования были ориентированы только на работу в ОС DOS персональных компьютеров на базе процессоров типа Intel 80×86. На исполнение в среде этой ОС были ориентированы и результирующие программы, разрабатываемые с помощью данной среды программирования.

Система программирования Turbo Pascal получила широкое распространение и дальнейшее развитие. Компания Borland выпустила несколько ее реализаций (наиболее распространенные из них версии 5.5 и 7.0).

Последние реализации данной системы программирования могли создавать результирующие программы, ориентированные на работу как в ОС типа MSDOS, так и в среде типа Microsoft Windows. В них были реализованы все основные преимущества, предоставляемые интегрированной средой программирования, такие, как лексический анализ программ на лету и встроенная контекстная подсказка.

Системa программирования Turbo Pascal это одна из самых распространенных в настоящее время систем программирования учебного назначения. Кроме того, это первая, появившаяся на рынке система программирования, которая полностью реализовала в себе идеи интегрированной среды программирования. Эти идеи, заложенные в системе программирования Turbo Pascal, нашли применение во многих современных системах программирования.

В языке С++ полностью поддерживаются принципы объектно-ориентированного программирования, включая три кита, на которых оно стоит: инкапсуляцию, наследование и полиморфизм. Инкапсуляция в С++ поддерживается посредством создания нестандартных (пользовательских) типов данных, называемых классами. Язык С++ поддерживает наследование. Это значит, что можно объявить новый тип данных (класс), который является расширением существующего. C++ в настоящее время считается господствующим языком, используемым для разработки коммерческих продуктов, 90% игр пишутся на С++ с применением DirectX.

11 стр., 5282 слов

Курсовая работа: Технико-экономический анализ и ‘оценка’ рыночной ...

... и сроки разработки, а также выбираются языки программирования. . Эскизный проект На этом этапе ... документации10211925-26Согласование и утверждение РП121211Внедрение37923-27Проверка алгоритмов и программ решения задачи612626-27Проверка технологии процесса обрабатываемых данных572527-28Опытная ... листкам учета движения больных с периодическим докладом заведующему отделением. По итогам работы отделений ...

1.2 Опрос

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

Вывод

В настоящее время наиболее выгодно использовать язык программирования VBA, потому что многие пользователи используют операционную систему Windows куда и встроен этот язык. Как показал опрос, предпочтение отдано языку С++. Это могло произойти потому что сейчас большое количество программ написано именно на этом языке.

Глава 2. Сравнение и анализ синтаксиса программ на основе одной задачи

В задаче нужно вычислить определитель матрицы.

Матрицей называют совокупность чисел, расположенных в прямоугольной таблице, состоящей из m строк и n столбцов.

Числа называют элементами матрицы. Первый индекс в обозначении элемента (i) указывает на номер строки, а второй индекс (j)- на номер столбца, в которых расположен этот элемент. Если число строк в матрице равно числу столбцов (m=n), как в нашем случае, то матрицу называют квадратной порядка m.

Определитель матрицы третьего порядка мы можем вычислить по формуле

Существует так же удобная схема для вычисления определителя третьего порядка

По схеме, приведенной на рис. 1, произведения соединенных элементов берутся со своим знаком, а по схеме рис. 2 — с обратным. Величина определителя равна алгебраической сумме полученных шести произведений.

2.1 Задача на Pascal,плюсы и минусы языка

Паскаль (англ. Pascal) высокоуровневый язык программирования общего назначения. Один из наиболее известных языков программирования, широко применяется в промышленном программировании, обучении программированию в высшей школе, является базой для большого числа других языков. Был создан Никлаусом Виртом в 1968/9 годах (опубликован в 1970-м) после его участия в работе комитета разработки стандарта языка Алгол-68.

Рассмотрим достоинства и недостатки языка Pascal на примере задачи.

Задаем 9 переменных типа Real. Зарезервированные слова Begin и End обозначают начало и конец программы. Ввод исходных данных с клавиатуры происходит по оператору read (read — читать) или readln (read line — читать строку).

При выполнении команды ввода компьютер ожидает действий пользователя. Пользователь набирает на клавиатуре значения переменных в том порядке, в каком они указаны в списке, отделяя их друг от друга пробелами. Одновременно с набором данных на клавиатуре они появляются на экране. В конце нажимается клавиша <ВВОД> (<Еnter>).

Вывод результатов происходит по оператору write (write — писать) или writeln (write line — писать в строку).Результаты выводятся на экран компьютера в порядке их перечисления в списке. Элементами списка вывода могут быть константы, переменные, выражения. В 20-ой строке нашей программы производиться расчет по формуле приведенной выше, только элементы матрицы, для удобства, были обозначены другими буквами.

12 стр., 5764 слов

Курсовая работа: Линейное программирование

... линейное программирование. Линейное программирование (далее ЛП) — задачи, в которых критерий оптимальности задается в виде линейной формы от входящих в него переменных, на эти переменные накладываются ограничения в виде линейных уравнений или линейных ... 1 — в количестве 26, Товар 2 — в количестве 2 и Товар 3 — в количестве 0. Запрограммируем в MS Office Excel (Приложение№ 1) и в Pascal (Приложение№  ...

Достоинства языка Pascal:

§ Использование вполне понятных английских слов begin, end, or, and, not.

§ Строгая типизация позволяет сэкономить память.

§ Элементы массива можно нумеровать, начиная хоть с нуля, хоть с единицы, хоть даже с тысячи .

§ Наличие компиляторов под большинство ОСей кроссплатформенность.

§ Возможность прямой работы с памятью практически полностью приближает Pascal к С/C++.

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

§ Достаточно низкие аппаратные и системные требования, как самого компилятора, так и программ, написанных на Паскале.

§ Поддержка структурного программирования, а также объектно-ориентированного программирования.

Недостатки языка Pascal:

§ Сравнительно громоздкие конструкции языка. Использование длинных английских слов begin и end вместо фигурных скобок. Недостаток при чтении в блокноте, где они сливаются а особенно, когда begin/end вкладываются друг в друга 3 и более раза

§ Слишком низкий порог вхождения

§ Локальные переменные нельзя определять в том месте, где они начинают использоваться это приводит к засорению пространства видимости, проблемам с оптимизацией (цикл for).

§ Case-insensitive. То есть, begin = Begin = BEGIN = BeGiN. Это не правильно потому что программист пишет идентификаторы в правильном регистре, но чужой код, без соблюдения стиля прочитать очень трудно.

2.2 Задача на VBA,плюсы и минусы языка

VBA (Visual Basic for Applications) это диалект языка Visual Basic, расширяющий возможности Visual Basic и предназначенный для работы с приложениями Microsoft Office и другими приложениями от Microsoft и третьих фирм.

Создаем на форме текстовых полей (TextBox) и 2 кнопки(Commanutton).

В девяти TextBox’ах вводятся элементы матрицы, а в десятом будет выведен результат. Одна из командных кнопок запускает программу, другая ее завершает. Нажав на кнопку «ok» мы увидим вот такую форму, в которой и пишем код программы.

Каждому из девяти TextBox’ам присваивается переменная, а в десятом TextBox’е будет выводится определитель матрицы найденный по заданной формуле. Далее запускаем проект, вводим значения переменных, жмем «ok» и видим полученный результат.

Достоинства языка VBA:

§ Высокая скорость создания приложений с графическим интерфейсом для Windows.

§ Простой синтаксис, позволяющий очень быстро освоить язык.

§ Возможность компиляции, в P-код и в машинный код. Программа, в режиме отладки, всегда компилируется в P-код, что дает возможность приостановить выполнения программы, внести изменения, а после продолжить выполнения. При этом перезапуск программы и полная перекомпиляция не нужны.

35 стр., 17430 слов

Дипломная работа: Способы перевода терминов с английского языка на русский (на ...

... особенностях терминов, определить место терминологии в системе языка. 2. Выделить характерные черты экономической терминологии. 3. Проанализировать основные приемы перевода терминов. 4. Выявить трудности, возникающие в процессе перевода терминов. 5. Классифицировать трудности перевода терминов, ... именно применительно к терминам наиболее остро встает вопрос о возможности достижения эквивалентности при ...

§ Наличие русской версии (VB 6.0), позволяющей начинающему программисту быстро познакомиться с интерфейсом.

§ Защита от ошибок, которые зависят от доступа к памяти и применением указателей. Этот аспект Visual Basic делает более стабильным приложением, но за это он и подвергается критике.

§ Не нужно объявлять переменные.

Недостатки языка VBA:

§ Поддержка операционных систем только семейства Windows и Mac X (Исключение VB1 for DOS).

§ Отсутствие механизма наследования объектов. Существующие в языке наследование, позволяет наследовать только интерфейсы объектов, а не их самих.

§ Требует установленных DLL для работы программы.

§ Медленная скорость работы, поскольку все встроенные функции языка реализованы через библиотеку времени исполнения (runtime library).

Все недостатки языка вытекают из его основного достоинства простоты разработки графического интерфейса. Поэтому многие программисты используют Visual Basic для разработки интерфейса пользователя, а функционал программы реализуют в виде динамически подключаемых библиотек (DLL), написанных на другом языке (чаще всего c++).

2.3 Задача на C++,плюсы и минусы языка

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

Для начала включаем библиотеки, без которых программа не будет работать. Затем объявляем переменные, которые будут использованы в нашем коде. Функция setlocale ( LC_ALL, «Russian» ) позволяет отображать русский шрифт в консоле нормально. Cout- вывод на экран, cin- вод. Далее запускаем нашу программку, вводим необходимые числа, нажимаем Enter и получаем определитель матрицы.

Достоинства языка С++:

§ Поддерживаются различные стили и технологии программирования, включая традиционное директивное программирование, ООП, обобщённое программирование, метапрограммирование (шаблоны, макросы).

§ Предсказуемое выполнение программ является важным достоинством для построения систем реального времени. Весь код, неявно генерируемый компилятором для реализации языковых возможностей (например, при преобразовании переменной к другому типу), определён в стандарте. Также строго определены места программы, в которых этот код выполняется. Это даёт возможность замерять или рассчитывать время реакции программы на внешнее событие.

§ Пользовательские функции-операторы позволяют кратко и ёмко записывать выражения над пользовательскими типами в естественной алгебраической форме.

§ Язык поддерживает понятия физической (const) и логической (mutable) константности. Это делает программу надёжнее, так как позволяет компилятору, например, диагностировать ошибочные попытки изменения значения переменной.

§ Используя шаблоны, возможно создавать обобщённые контейнеры и алгоритмы для разных типов данных, а также специализировать и вычислять на этапе компиляции.

§ Возможность создания встроенных предметно-ориентированных языков программирования.

10 стр., 4865 слов

Курсовая работа: Применение пакетов прикладных программ в экономике

... по полноценной работе (сортировка, выборка, сводные таблицы, анализ) с базами данных. Благодаря наличию языка программирования в Excel возможно создание различных пользовательских программ, ... позволяет "просматривать" информацию, хранящуюся в списке или таблице, а также обрабатывать ссылки. 1.3 Математические и статистические пакеты прикладных программ ... техники, финансов и экономики, физики и ...

§ Используя шаблоны и множественное наследование можно имитировать классы-примеси и комбинаторную параметризацию библиотек.

§ Кроссплатформенность: стандарт языка накладывает минимальные требования на ЭВМ для запуска скомпилированных программ. Для определения реальных свойств системы выполнения в стандартной библиотеке присутствуют соответствующие возможности (например, std::numeric_limits <T>).

Доступны компиляторы для большого количества платформ, на языке C++ разрабатывают программы для самых различных платформ и систем.

§ Эффективность. Язык спроектирован так, чтобы дать программисту максимальный контроль над всеми аспектами структуры и порядка исполнения программы.

§ Имеется возможность работы на низком уровне с памятью, адресами.

Недостатки языка С++:

§ Сложность и избыточность, из-за которых C++ трудно изучать.

§ В языке практически полностью сохранён набор конструкций Си.

§ Шаблоны в своём исходном виде приводят к порождению кода очень большого объём.

§ Метапрограммирование на основе шаблонов C++ сложно и при этом ограничено в возможностях.

Некоторые считают недостатком языка C++ отсутствие встроенной системы сборки мусора. С другой стороны, в C++ имеется достаточно средств, позволяющих почти исключить использование опасных указателей, нет принципиальных проблем и в реализации и использовании сборки мусора (на уровне библиотек, а не языка).

Отсутствие встроенной сборки мусора позволяет пользователю самому выбрать стратегию управления ресурсами.

Вывод

Pascal— считается верным языком, но для ряда современных задач (даже большинства, если смотреть со стороны web-программиста) безнадежно устарел.VBA в последнее время стал очень популярен во-первых потому что, очень широко распространен и используется не только в качестве самостоятельного средства, но и в виде системы программирования, встроенной в многочисленные прикладные программы (в частности Office).

Во-вторых, превратившись в серьезный профессиональный инструмент, остался очень удобным средством для обучения программирования и решения небольших задач. Как было обещано в первом издании книги «Бьерн Страуструп. Язык программирования С++ «, запросы пользователей определили развитие С++. Его направлял опыт широкого круга пользователей, работающих в разных областях программирования. Язык C++ явился мощным и стремительным рывком в развитии программирования. C++ и по сей день занимает господствующее положение среди языков программирования в мире. Огромное множество профессиональных программистов использует именно его при разработке разного рода проектов. Очевидно, этот язык будет сохранять свое солидное положение ещё не один год, при этом по-прежнему развиваясь и совершенствуясь.

Заключение

Сравнив одну задачу, написанную на трех языках программирования можно прийти к выводу что наиболее простым языком является С++. В коде нет нагромождений, четко видно его начало и конец, он самый маленький по количеству строк и символов, затраченных на его написание. Что касается времени, то его потратилось мало, так что пользователь врядли заметит разницу между 0,1 и 0.01 секунды.

На самом деле, ссылаясь на одну задачу нельзя делать каких-либо выводов, потому что каждый язык по-своему сложен и уникален, каждый имеет свои достоинства и недостатки и является преимущественным в определенной среде.

13 стр., 6261 слов

Курсовая работа: Информатика программирование : Экономические информационные системы ...

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

Список литературы

1. «Бьерн Страуструп. Язык программирования С++»

2. Джесс либерти, «Освой самостоятельно C++ за день», изд. Дом «Вильямс», Москва — Санкт-Петербург — Киев, 2001

3. Н. Секунов, «Самоучитель Visual C++ 6», изд. «БХВ-Петербург», Санкт-Петербург, 2003