Файл: Классификация языков программирования. Критерии выбора среды и языка разработки программ (ОСНОВНЫЕ ОПРЕДЕЛЕНИЯ ТЕОРИИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ПК).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 31.03.2023

Просмотров: 72

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

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

К таким относятся программные средства:

– Visual C++;

– Delphi;

– С++ Builder;

– Visual Basic;

– Java Builder и другие.

Использование программных средств такого типа является оправданным, когда нужно в самые сжатые сроки создать приложение с удобным интерфейсом.[2]

Приняв во внимание все перечисленные выше аргументы, для создания разного рода программных продуктов целесообразно применить средства быстрой разработки – RAD.

Для функционирования практически любого программного комплекса, также необходима некоторая программная среда, в простейшем случае – ОС. В сложных ситуациях, если система обрабатывает очень большое количество данных, необходимо поддерживать в актуальном состоянии и присутствующую СУБД.

Для обоснованного выбора RAD-средства часто нужна оценка продуктов по критериям.

Непосредственно получить оценку программных средств можно со специальных источников. Хотя указанная оценка дается, имея всю специфику разработки для приложения.

Рациональный выбор средств для разработки приложений можно выполнить лишь в контексте определенного ими проекта и конкретной компании, которая ведет всю разработку.[5]

Поэтому для правильной и корректной оценки всех средств по разработке приложения очень нужна качественная оценка экспертов, которые также ознакомлены с спецификой приложения и вопросами для его модификации. [8]

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

– доступность программных средств;

– cоответствие выбранных программных компонентов уровню программиста;

– возможность программных средств для разработки профессиональных приложений;

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

– качественная оценка средств по надежности, а также производительности и удобства разработки;

– возможность перехода непосредственно с однопользовательского варианта в сетевой;

– стыковка с большим спектром других СУБД, а также возможности переноса БД в другие программные средства;

– модульный принцип построения ПО;

– возможность подключения к самым разным корпоративным сетям, а также поддержка постоянно развивающихся web-технологий;


– скорость процесса компиляции приложения;

– наличие всей документации в электронном исполнении, а также справочных систем;

– скорость функционирования приложения;

– простота ЯП;

– наличие интегрированного отладчика программы ;

– обработка исключительных ситуаций и прочее.

2.2.Классификация ЯП и программных средств

Быстрое развитие вычислительной техники сопровождается всегда созданием и совершенствованием уже существующих методов, средств общения программистов – ЯП.[11]

Под ЯП понимают представления данных, записи алгоритмов для их непосредственной обработки, которые выполняются ЭВМ автоматически. В абстрактном виде каждый ЯП – это средством создания программных приложений.

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

Для понимания тенденции развития языков, надо знать их движущие направления в эволюции.

Языками так называемого низкого уровня (до 1965 г.) называются все языки для ассемблеров, что представляют каждую команду в машинном коде, не как числа, а с применением некоторых условных и символьных обозначений. [14]

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

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

Хотя и при этом:

– требуется хорошо понимать полностью все устройство компьютера,

– сильно будет затруднена отладка огромных программных продуктов,

– результирующая программа не может быть всегда перенесена на ПК другой архитектуры.

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

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


Разрабатывать такие программы с помощью ЯП высокого уровня при использовании мощных и понятных программных команд значительно проще, ошибок при создании их будет допускаться меньше.[17]

Языки программирования можно разделить делят на 5 поколений:[1]

– Первое поколение ЯП. Конец 40-х гг, когда компьютеры лишь появились. Первый ЯП ассемблера, который был создан по принципу «одна инструкция – одна строка кода».

– Второе поколение. С начала 60-х – до середины 60-х годов – разработан так называемый символический ассемблер, где появилось понятие переменной.[13]

Основными примерами ЯП является:

– Fortran (1954-1955);

– Algol-60 (1958-1959);

– Cobol (1957-1961);

– Lisp (1957);

– Basic (1964);

– PL/1 (1962).

Третье поколение. С конца 60-х годов – появились первые универсальные ЯП высокого уровня, при этом с их помощью удается решать задачи практически в любых областях:[13]

– АЛГОЛ-68;

– СИМУЛА-67;

– ПЛ/1.

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

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

Разрабатываются развитые ОС, самые первые СУБД, многие системы автоматизации документирования, системы для управления имеющейся программной конфигурацией.

Четвертое поколение. С середины 70-х годов – по настоящее время – ЯП такого поколения предназначены для качественного использования в крупных программных проектах, повышают также их надежность, скорость проектирования, ориентированы на специальные сферы применения, используют универсальные, проблемно-ориентированные ЯП, которые оперируют также конкретными понятиями в узкой области.

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

Типовым представителем ЯП данного этапа является Pascal. Компонентный подход лежит также в основе всех программных технологий, разработанных при применении COM (компонентная модель для объектов), а также и технологии создания самых разных распределенных приложений под названием CORBA.


Такие технологии используют самые разные сходные принципы, различаются только особенностями для их реализации.[18]

Технология СОМ фирмы Microsoft является качественным продуктом развития технологии обработки данных OLE (внедрение, связывание объектов).

Технология СОМ определяет полную всеобщую парадигму взаимодействия для различных программ: [12]

– приложений;

– операционной системы;

– библиотек.

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

Рисунок 3 – Взаимодействие компонентов программ различных типов

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

Основная идея, что закладывается в указанные языки, – это возможность для автоматического формирования результата универсальных языков программирования.

К тому же, все инструкции вводятся непосредственно в ПК в максимально наглядном виде при применении методов, которые наиболее удобны человеку, что вообще не знаком с основами программирования.

К таким языкам можно отнести:[20]

– Cи;

  • Modula-2;
  • Java;
  • Prolog;
  • Smalltalk;
  • Ada;
  • C++;

– C#.

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

3. ИСПОЛЬЗОВАНИЕ МЕТОДОЛОГИИ ВЫБОРА ПРОГРАММНЫХ СРЕДСТВ ПРИ СОЗДАНИЯ КОНКРЕТНОГО ПРОГРАММНОГО ПРОДУКТА

3.1. Выбор программных средств для разработки ПО

В многочисленных алгоритмах для расчётов предполагается, что человек с дня своего рождения находится под воздействием трех устойчивых и неизменных биологических ритмов, а именно:

– физическом;

– эмоциональном;

– интеллектуальном.

Физический цикл равняется 23 дням. Он также определяет энергию человека, силу, выносливость и координацию движения.

Эмоциональные циклы равны 28 дням и они обусловливает состояние нервной системы, настроение.

Интеллектуальный цикл (длительность – 33 дня), он определяет в основном творческую способность для личности.


Считается также, что все такие циклы состоят из 2-х полупериодов, положительного или отрицательного.

В положительный полупериод для биоритма, человек испытывает положительное влияние биоритма, а в отрицательный полупериод – отрицательное ощущение.

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

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

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

Повсеместно используется следующая формула:

B=(sin(2*pi*(t-f)/P))100 %, где P={23,27,34}

B – это состояния биоритма в процентах либо может выражаться как специальное состояние относительно нуля, состояния нарастания или же спадания.

pi – константа π.

t – количество дней для относительно нулей единиц измерения до настоящего момента.

f – количество дней от начала измерения времени и до даты рождения пользователя.

P – фаза для биоритма.

Следуя с этого программный продукт всячески должен разрабатываться на ЯП высокого уровня.[20]

В качестве ЯП будет использоваться С++, а также среда для разработки C++ Builder.

Указанный язык ориентирован на применение структурного визуального программирования, а также имеет различные средства по контроле и он очень прост в изучении.

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

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

Реализации ЯП могут дать возможность для использования абсолютно всех аппаратных средств.

Применение языка программирования под названием C++ в среде C++ Builder значительно подняло общее требование по надёжности разрабатываемых программных средств через требования к процессу описания применяемых в программе глобальных переменных, а также и проверки согласованности программы.[12]

В разработке будет применено IDE C++ Builder 6, так как проект разрабатывается на компьютерах с незначительными техническими возможностями, а именно:

– Windows XP;