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

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

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

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

Добавлен: 28.03.2023

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

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

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

4.2. Geany

Также интегрированная среда разработки ПО. Поддерживается на ОС Linux, а также на Mac Os и на Windows. Работает с тридцатью двумя языками (также и с русским языком). В составе Geany отсутствует компилятор. Компилятор можно установить как дополнение. Поддерживает достаточно много языков программирования, среди которых присутствуют классический С. С++ и С#.

Пример работы в среде Geany, на Linux OS:

Достоинства: Простота и удобность, подсветка исходного кода, возможность подключать дополнения.

Недостатки: Не включает в свой состав компилятор.

Среда распространена во многих странах (Более чем в тридцати).

4.3. Komodo или ActiveStateKomodo 

Была написана на JavaScript, XUL, Python. Интерфейс данной среды только на aнглийском языке. Рaботает нa теx жe опeрационных систeмах как Geany: на Os Linux, Windоws и Mac Os.

Поддерживает десять языков программирования, среди которые присутствуют: PHP, Ruby, HTML5.

Логотип Komodo:

Пример разработки в среде Komodo:

Достоинства: Дополнение Code Explorer позволяет просматривать объектное дерево скрипта или библиотеки, среда является кроссплатформенной, удобный отладчик с возможностью удаленной отладки, возможность настроить интерфейс среды «под себя».

Недостатки: Высокая стоимость, поддерживает мало языков программирования, сильно загружает компьютер (а именно оперативную память), является сложным для понимания.

Распространена в основном в англоговорящих странах.

4.4. Kylix 

Интегрированная среда. Функционирует на OS Linux. Работает с С, С++ и ObjectPascal.

В данной среде есть возможность писать приложения веб-служб.

Kylix выпускался в трёх пакетах. Эти пакеты: Enterprise Edition — включал в себя сто девяносто компонентов (являлся самым большим и самим дорогим пакетом программы); Professional Edition (более дешевый вариант, который включал в себя около 165 компонентов); Open Edition — бесплатный пакет программы, содержащий в себе 75 компонентов, в нём отсутствует средства для работы с базами данных.

Обновленная версия Kylix 2, в отличии от Kylix работала гораздо быстрее. Например, Kylix 1 осуществлял сортировку пузырьком массива из 115 элементов полторы минуты, Kylix 2 — одну секунду.

В 2002 году данную среду разработки прекратил поддерживать разработчик.

Пример разработки в среде Kylix:

Достоинства: Удобен в переносе написанного с одной операционной системы на другую.

Недостатки: Данная среда больше не поддерживается разработчиком.


Распространена в основном в Европейских странах и США, из-за того что разработчик (Borland) перестал поддерживать Kylix — становится всё менее популярной и не востребованной.

4.5. Netbeans 

Интегрированная среда разработки ПО. Была реализована на программном языке Java. Эта среда разработки высокого качества. Умеет работать на нескольких операционных системах, то есть является кроссплатформенной. Работает более чем с пятью программными языками.

Пример разработки в среде NetBeans:

Достоинства: Является бесплатной, присутствует система контроля версий, подсветка синтаксиса, возможно переименовывать переменную/класс одним кликом, в том случае если вручную переименовывать слишком долго (автоматизированное переименование), имеется возможность форматирования кода по CodeStyle, разработчиком среда постоянно совершенствуется, улучшается.

Недостатки: Временами в среде разработки возникают проблемы с кодировкой, долгий запуск программы.

Распространена во многих странах, в силу того что является удобной и бесплатной.

4.6. Eclipse 

Ещё одна интегрированная среда разработки ПО. Написана на языке Java в две тысячи третьем году. Также является кроссплатформенной. За счёт присоединяемых к этой среде дополнений — имеется возможность создавать программные продукты более чем на пяти языках программного кода.

Пример разработки программы в IDE Eclipse:

Достоинства: Постоянное обновление версий среды разработки, поддержка многих языков (в том числе и русского), является бесплатной, поддержка многих языков программирования, среда имеет промышленный уровень, является гибкой — то есть легко настраивается как под любую платформу, так и под любого пользователя.

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

АНАЛИЗ СРЕД РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ НА ЯЗЫКЕ С++

На сегодняшний день C++ является одним из самых востребованных языком программирования на рынке и важным критерием при приёме программистов в IT компанию.

Для взаимодействия с этим языком используются специальные IDE, или интегрированная среда разработки (англ. Integrated Development Environment) – система программных средств, используемая программистами для разработки программного обеспечения. Сегодня их существует огромное множество, у всех есть свои особенности и недостатки. Целью статьи является сравнение некоторых из них по выбранным критериям и выбор лучших.


Для сравнения были выбраны следующие интегрированные среды разработки:

  1. Visual Studio 2015 от Microsoft.
  2. Dev C++ от Bloodshed Software.
  3. C++ Builder от Embarcadero Technologies.
  4. Eclipse C/C++ Development Tools от Eclipse Foundation.
  5. CodeLite от Eran Ifrah.
  6. NetBeans от NetBeans Community.

Все средства были установлены и протестированы.

5.1 Visual Studio 2015

Интегрированная среда разработки обладает большим числом инструментов и функций: может создавать как приложения в консоли, так и программы с графическим интерфейсом, и даже с помощью технологии Windows Forms. Хотя и работает с полным функционалом сразу после установки, но при отказе одного из компонентов перестаёт работать весь продукт. Удобный интерфейс и лёгкость в понимании работы продукта. Единственная сложность это создание графического интерфейса программы, которая требует дополнительной настройки. Программное обеспечение обладает всем набором функций, необходимым программисту, при желании можно установить дополнительные компоненты. Постоянно обновляется и поддерживается разработчиком, но не обладает свойством портативности и требует установки. К тому же полная версия требует покупки, но и бесплатной версии хватает для нужд начинающего и среднего уровня программистов. Также, бесплатная версия запрещает коммерческое написанных в ней программ. Работает только под OC Windows.

5.2 Dev C++

Интегрированная среда разработки обладает следующими возможностями: поддержка GNU Compiler Collection, втроеннная отладка, менеджер проекта, подсветка кода, просмотрщик классов, автозавершение кода, список функций, поддержка профилей, быстрое создание Windows-приложений, консольных программ, статичных библиотек и библиотеки динамической компоновки, поддержка шаблонов, позволяющих создавать свои типы проектов, создание makefile’а, редактирование и компиляция файлов ресурсов, менеджер инструментов, поддержка печати, средства поиска/замены, поддержка системы одновременных версий. Не требует установки дополнительного программного обеспечения, компилятор встроен. Хорошая среда разработки с большим функционалом и маленьким размером, может быть хорошим выбором как для новичка, так и для профессиональных программистов. Работает только под Windows.

5.3 C++ Builder

Интегрированная среда разработки обладает огромным числом функций: собственный компилятор, поддержка баз данных, поддержка технологии Windows Forms, объекты модулей данных, открытые инструменты интерфейса программирования приложений и т.д. Подойдёт программистам любого уровня, но лучше для новичков, так как, в отличие от Visual Studio, создание приложений с графическим интерфейсом здесь сделать намного легче. Постоянно обновляется и поддерживается разработчиком. Требует установки и покупки, но существует пробная 30-дневная версия.


5.4 Eclipse C/C++ Development Tools

Обладает следующими функциями: плагины, рефакторинг, автоподстановка любых идентификаторов, встроенная поддержка Doxygen, возможность отладки через GNU Debugger, подсветка синтаксиса, сворачивание кода, ссылочная навигация по коду (гипертекстовые ссылки), создание и управление проектами для различных инструментальных средств, стандартная make сборка, визуальные средcтва отладки. Дополнительно требует установку компилятора, без которого интегрированная среда разработки работать не будет. Компилятора в комплекте нет. Также требует наличие Java. Отличное программное обеспечегте для любого уровня умений программиста. Понятный интерфейс и возможность расширения функций с помощью плагинов делает его очень лёгким для освоения и очень эффективным. Сложностью является только установка компилятора. Периодические обновления и полная поддержка пользователей. Выпускается только в виде портативной версии. Бесплатен и работает под различными операционными системами: Windows/Linux/Mac OS X.

5.5 Code:: Blocks

Доступны следующие функции: подсветка кода, сворачивание кода C++ и расширяемый язык разметки, автозавершение кода, просмотрщик классов, быстрая система сборки, поддержка параллельных сборок, импорт проектов Microsoft Visual Studio, импорт проектов Dev-C++, поддержка дебагеров GNU Debugger и Microsoft Constant Data Base. Хотя и обладает понятным интерфейсом и хорошим инструментарием, но новые версии выходят очень редко (раз в год), причём ошибки в коде не подсвечиваются и их надо искать вручную. Полностью бесплатен и обладает портативной версией. Продукт разрабатывается под Windows, Mac OS X и Linux.

5.6 NetBeans

Обладает теми же возможностями и инструментами, что доступны и в Eclipse C/C++ Development Tools. Как и рассмотренная уже Eclipse C/C++ Development Tools, среда разработки NetBeans написана на языке Java (соответственно так же требует установленной виртуальной машины Java). Но, в отличие, от Eclipse требует установки. Бесплатен и доступен для систем FreeBSD/Linux/Mac OS X/OpenSolaris/Solaris/Windows.

Анализ источников [1-4] позволил определить следующие критерии:

  1. Функциональность – возможности программного обеспечения для реализации требуемых задач, инструментарий и разнообразность встроенных функций.
  2. Надежность – способность программного обеспечения работать без ошибок и отказа компонентов на протяжении всего срока экплуатации или времени, требуемого для решения поставленных задач.
  3. Удобство использования – простота интерфейса программного обеспечения и лёгкость в освоении работы с ним.
  4. Эффективность – способность программного обеспечения выполнять поставленные задачи сохраняя общую производительность, не перегружая систему в которой оно установлено.
  5. Удобство сопровождения – поддержка программного обеспечения разработчиком, включающая в себя создание новых версий продукта и поддержку пользователей.
  6. Портативность – способность программного обеспечения работать в различных операционных системах, а также возможность его переноса в другую систему без потери в функционале.
  7. 7.    Доступность – лёгкость в получении программного обеспечения (доступность источника для скачивания, цена продукта).

6. ЗАКЛЮЧЕНИЕ.

Изобретение языка программирования высшего уровня позволило нам общаться с машиной, понимать её (если конечно Вам знаком используемый язык), как понимает американец немного знакомый с русским языком древнюю азбуку Кириллицы. Проще говоря, мы в нашем развитии науки программирования пока что с ЭВМ на ВЫ. Поверьте мне это не сарказм вы только посмотрите как развилась наука программирования с того времени, как появились языки программирования, а ведь язык программирования высшего уровня, судя по всему ещё младенец. Но если мы обратим внимание на темпы роста и развития новейших технологий в области программирования, то можно предположить, что в ближайшем будущем, человеческие познания в этой сфере, помогут произвести на свет языки, умеющие принимать, обрабатывать и передавать информации в виде мысли, слова, звука или жеста. Так и хочется назвать это детище компьютеризированного будущего: «языки программирования "высочайшего" уровня». Возможно, концепция решения этого вопроса проста, а ближайшее будущее этого проекта уже не за горами, и в этот момент, где нибудь в Запорожье, Амстердаме, Токио или Иерусалиме, перед стареньким 133MHz горбится молодой, никем не признанный специалист и разрабатывает новейшую систему искусственного интеллекта, которая наконец-то позволит человеку, с помощью своих машинных языков, вести диалог с машиной на ТЫ.

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

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

Единственный способ изучать новый язык программирования – писать на нём программы.

Брайэн Керниган

7. БИБЛИОГРАФИЯ

1) “LEX - генератор программ лексического анализа”

Давидов Михаил Изгияевич; Антонов Вадим Геннадьевич

МОСКВА – 1985;

2) "BASIC Face-off", Justin J.Crom,

PC Tech Journal, September 1987, p.136

Перевод: Лопухов В.Н. (Интегратор Promt98);