Средства создания программ для компьютера это

Обновлено: 04.07.2024

Средства разработки программ - это специальные программы для создания программ. Вот такое вот получается “масло масленное”.

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

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

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

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

Так сначала появились текстовые редакторы, ассемблеры и компоновщики, а потом компиляторы и интерпретаторы.

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

Где создаются программы

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

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

  1. Редактор исходного кода. Это текстовый редактор, который от обычных редакторов отличается возможностью подсветки синтаксиса. Подсветка синтаксиса - это выделение ключевых слов и других важных элементов языка программирования цветом и/или шрифтом. Конечно, для создания программ можно использовать и обычный текстовый редактор.
  2. Компилятор (или интерпретатор). Специальная программа, которая преобразует исходные коды в готовую программу - исполняемый файл. В операционных системах Windows такой файл обычно имеет расширение EXE.
  3. Отладчик. Это специальная программа, которая помогает искать ошибки в исходных кодах.

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

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

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

Дополнительную информацию о средствах разработки можно найти здесь.

Обзоры популярных (и не очень) средств разработки разных времён можно найти здесь:

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

Возможностей Visual Studio Code хватит для любительской и профессиональной разработки. В редактор встроены средства для действий с Git‑репозиториями и инструменты для рефакторинга. Расширить функциональность можно за счёт тысяч плагинов — ищите их прямо в среде по названию или по языку, на котором вы пишете.

Быстрее редактировать код в Visual Studio Code помогут сочетания клавиш. Они обеспечат быструю навигацию по вашему проекту и впечатлят рекрутера на собеседовании.

2. Atom

Простой и удобный редактор с открытым исходным кодом — детище GitHub Inc., крупнейшего сервиса для хостинга и совместной разработки программного обеспечения, который сейчас принадлежит Microsoft. Atom поддерживает огромное количество языков и подходит для кросс‑платформенной разработки.

Здесь доступны плагины, написанные на Node.js, — они серьёзно расширят ваши возможности. Atom работает быстро и надёжно, поддерживает синхронизацию с Git, сворачивание блоков кода, автоматическое дополнение слов и другие функции профессиональных редакторов.

С инструментом Teletype for Atom вы сможете совместно с коллегой писать код в режиме реального времени. Это идеальное средство для парного программирования, быстрых багфиксов и мозговых штурмов в R & D.

Редактор поставляется с четырьмя вариантами интерфейса и восемью темами — светлыми и тёмными. Также есть инструменты для ручной кастомизации на CSS/Less, HTML и JavaScript — всё это поможет вам настроить исключительно комфортную рабочую среду.

3. Sublime Text 3

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

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

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

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

Вообще, Sublime Text 3 — проприетарный редактор: его можно купить за 80 долларов. Но пробная версия доступна бесплатно, и срок её использования разработчики пока не ограничивают.

4. IntelliJ IDEA

  • Языки: Java, Kotlin, Scala, Groovy, С, С++, CSS, Go, HTML, PHP, Python, Ruby, XML, YAML и другие.
  • Платформы: Windows, macOS, Linux.

Среда изначально создавалась для Java и актуальна в первую очередь для Java‑подобных языков, к примеру Kotlin, Scala и Groovy. Развивает её компания с российскими корнями JetBrains. Она, собственно, создала Kotlin — язык, который Google назвала приоритетным для Android‑разработки.

IntelliJ IDEA Overview of IntelliJ IDEA — мощная, хоть и не очень быстрая система с большим набором инструментов для создания десктопных, мобильных и веб‑приложений, ПО для интернета вещей. Версии две: платная Ultimate для компаний и бесплатная Community с открытым исходным кодом.

В Community нет полноценной поддержки фреймворка Spring, а также Java EE (Enterprise Edition), JavaScript, TypeScript, SQL. Но в целом здесь есть всё необходимое для старта небольших проектов, к примеру отладчик, поддержка фреймворков для сборки Maven и Gradle, систем контроля версий Git и SVN. А набор встроенных инструментов для Android такой же, как в официальном Android Studio от Google.

5. PyCharm

  • Языки: Python, Jython, Cython, IronPython, PyPy, Django и другие.
  • Платформы: Windows, macOS, Linux.

Ещё одна интегрированная среда разработки от JetBrains, но уже с упором на Python и его фреймворк Django. Версии также две: Professional c полноценной поддержкой научной (создание моделей, графиков, тестирование гипотез) и веб‑разработки на Python, HTML, JS и SQL; Community — только для Python и с открытым исходным кодом.

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

На сайте и во встроенном меню PyCharm вы найдёте множество плагинов. Это средства для работы с большими данными, написания кода на определённых языках программирования (например, R или Rust), создания тем оформления, анализа логов.

6. Brackets

  • Языки: HTML, CSS, JavaScript и другие.
  • Платформы: Windows, macOS, Linux.

Лучший редактор с открытым исходным кодом для веб‑разработки. Сам он создан на JavaScript, HTML5 и CSS3.

Brackets — детище Adobe Systems. Он появился в 2014 году и активно развивается, чтобы обеспечить веб‑разработчикам как можно больше возможностей.

Особенно удобен Brackets для фронтенда: встроенные инструменты ускоряют действия с CSS, позволяют увидеть все селекторы, отредактировать их и сразу оценить результат. Также в наличии JavaScript‑отладчик Theseus и локальный веб‑сервер для тестирования проектов.

Код из Brackets вы можете просматривать в браузере в режиме реального времени. Среда синхронизируется с Git и поддерживает сотни расширений, а также пользовательские горячие клавиши и JavaScript‑подсказки.

Обратите внимание на средства быстрого редактирования в Brackets. Они позволяют вносить изменения сразу в несколько элементов, функций или свойств, а также менять код на CSS или JavaScript не выходя из связанного HTML‑файла. Результат можно увидеть в браузере — с подключением бэкенда или без него.

7. Vim

  • Языки: С, С++, Shell Script, Bash Script, Java и другие.
  • Платформы:Windows, macOS, Linux.

Наследник легендарной серии Vi, которая создавалась ещё для Unix, обеспечивает полную свободу настройки и автоматизации разработки. Правда, новичкам будет непросто его освоить. Потому что нельзя просто взять и выйти из Vim с первого раза.

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

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

Чтобы переключиться в режим ввода, надо нажать кнопку I или Insert, обратно — Esc. И только в нормальном режиме у вас получится корректно выйти из Vim. Если введёте ZQ или :q!, то покинете файл, не сохранив изменения, а по ZZ, :wq или :x — выйдете после сохранения файла. В первые дни работы с Vim эти комбинации хочется написать на стикере, который всегда будет перед глазами, но со временем к ним привыкаешь.

8. Eclipse

  • Языки: Java, C, С++, Perl, PHP, JavaScript, Python, Ruby, Rust, Scout, 1C V8 и другие.
  • Платформы: Windows, macOS, Linux.

Универсальная интегрированная среда, на базе которой создаются другие системы для разработки на определённых языках или для тестирования. Компания IBM вложила в проект около 40 миллионов долларов, а затем открыла код Eclipse и передала его сообществу для дальнейшего развития.

Фактически на базе Eclipse создаются расширения, которые позволяют комфортно работать с различными языками и проектами. Расширения — это модули, редакторы панели, перспективы и так далее. Один из самых известных — Eclipse JDT (Java Development Tools). Этот модуль позволяет писать код на Java, интегрирован с системой контроля версий Git, может обмениваться данными с трекером ошибок Bugzilla и с инструментами отслеживания задач вроде Jira.

На официальном сайте доступны готовые Eclipse IDE для Java, C, C++, PHP, JavaScript и других популярных языков. Также вы можете загрузить саму платформу и модули для решения конкретных задач. Отдельно отметим 1C: Enterprise Development Tools для работы с платформой «1C:Предприятие».

9. Aptana Studio

  • Языки: HTML, JavaScript, CSS, Ruby on Rails, PHP, Python и другие.
  • Платформы: Windows, macOS, Linux.

Этот мощный и удобный редактор для веб‑разработки — один из самых известных дистрибутивов Eclipse. На старте в нём есть подсветка синтаксиса и автодополнение кода на HTML, JavaScript и CSS. С помощью плагинов можно адаптировать Aptana Studio под Ruby on Rails, PHP, Python.

Интегрированная среда разработки поддерживает кросс‑платформенность и автоматически дополняет введённый текст. Она сообщает об ошибках в коде и помогает быстро от них избавиться.

Для комфортной отладки в Aptana Studio есть встроенный веб‑сервер Jaxer, который позволяет выполнить JavaScript на своей стороне и предоставить результат. Кроме того, среда взаимодействует с сервисом Aptana Cloud. Он облегчает развёртывание веб‑приложений в облаке и создание масштабируемой инфраструктуры.

Вы можете загрузить версию редактора для нужной ОС. А если у вас установлена среда Eclipse, достаточно будет плагина Aptana для неё.

10. Notepad++

Этот текстовый редактор с открытым исходным кодом — нечто гораздо большее, чем просто умная замена блокнота. Он поддерживает подсветку синтаксиса для всех популярных (и не только!) языков, систем сборки и разметки — вплоть до Ada, COBOL и Fortran.

Notepad++ очень лёгкий и быстрый. Тысячи плагинов делают его редактором на все случаи жизни: здесь есть и проверка грамматики на разных языках, и сравнение файлов, и генерация цифровых подписей, и конвертация в различные кодировки, и многое другое. А самое удобное — в отличие от блокнота, если вы закроете Notepad++ и оставите в нём несохраненные файлы, они автоматически откроются при следующем запуске программы.

11. Emacs

  • Языки: C, C++, Java, Perl, Lisp, Objective‑C и другие.
  • Платформы: Windows, macOS, Linux.

Небольшой редактор макросов (Emacs расшифровывается как Editor MACroS) с годами переродился в целое семейство. После серии Vi и её наследника Vim он стал настоящим откровением и здорово облегчил жизнь тем, кто писал код лет 30–40 назад.

Но и сегодня Emacs в умелых руках сможет многое. В нём есть основной и множество дополнительных режимов, например для разных языков программирования, просмотра каталогов, работы с почтой. Поддерживается быстрое перемещение по тексту и файлам с помощью сочетаний клавиш. Редактор можно гибко настраивать: от установки количества пробелов для каждого уровня отступа до запуска определённых функций после изменения буфера обмена.

Пасхалки в Emacs — отдельная история. Например, здесь предусмотрены игры и специальный режим психотерапевта — разговор с виртуальной собеседницей Элизой. Более того, вы можете установить расширение для Emacs и автоматизировать игру в тетрис — в перерывах между работой над кодом, конечно.

12. Komodo IDE

  • Языки: Python, Perl, Ruby, HTML, CSS, JavaScript и другие.
  • Платформы: Windows, macOS, Linux.

Бесплатный редактор кода от канадской компании ActiveState, разработчика версий языков программирования Active Perl и Active Python. Есть также вариант Komodo Edit c меньшим набором возможностей — без встроенной поддержки юнит‑тестов и отладчиков.

Komodo IDE предоставляет подсветку синтаксиса, автодополнение, возможность работы с различными концами строк и кодировками. Здесь удобно редактировать файлы на разных языках программирования и гипертекстовой разметки. Для Perl, PHP, Python, Ruby, TCL, JavaScript есть и проверка синтаксиса — сторонние средства не понадобятся.

Программы для программирования

Программирование – процесс творческий и интересный. Для того, чтобы создавать программы не всегда нужно знать языки. Какой же инструмент нужен для создания программ? Вам необходима среда программирования. С ее помощью ваши команды переводятся в понятный для компьютера бинарный код. Вот только языков существует очень много, а сред программирования еще больше. Мы рассмотрим список программ для создания программ.

PascalABC.NET_

Free Pascal

Free-Pascal

Фри Паскаль – это кроссплатформенный компилятор, а не среда программирования. С его помощью вы можете проверить программу на правильность написания, а также запустить ее. Но вы не сможете откомпилировать ее в .ехе. Free Pascal имеет высокую скорость выполнения, а также простой и понятный интерфейс.

Так же, как и в многих подобных ему программах, редактор кода в Free Pascal может помогать программисту завершая за него написание команд.

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

Turbo Pascal

Turbo-Pascal

Практически первый инструмент для создания программ на компьютер – Турбо Паскаль. Эта среда программирования создана для операционной системы DOS и чтобы запустить ее на Windows нужно устанавливать дополнительное ПО. Поддерживается русский язык, обладает высокой скоростью выполнения и компиляции.

Lazarus

Lazarus

Это визуальная среда программирования на языке Паскаль. Ее удобный, интуитивно понятный интерфейс позволяет с легкостью создавать программы с минимальными знаниями языка. Lazarus практически полностью совместим с языком программирования Delphi.

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

К сожалению, если у вас возникнут вопросы, то ответы искать вам придется в интернете, так как Лазарус не имеет документации.

HiAsm

HiAsm

HiAsm – это бесплатный конструктор, который доступен на русском языке. Вам не нужно знать язык для создания программ – здесь вы просто по кусочку, как конструктор, собираете ее. Здесь доступно много компонентов, но вы можете расширить их ассортимент, установив дополнения.

В отличии от Алгоритма, это графическая среда программирования. Все, что вы будете создавать отобразится на экране в виде рисунка и схемы, а не кода. Это довольно удобно, хотя некоторым текстовая запись нравится больше.

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

Алгоритм

Алгоритм

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

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

В бесплатной версии можно компилировать проект из .alg в .exe только на сайте разработчика и только 3 раза в день. Это один из основных минусов. Вы можете приобрести лицензионную версию и компилировать проекты прямо в программе.

IntelliJ IDEA

IntelliJ IDEA

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

Eclipse

Eclipse

Чаще всего Eclipse используют для работы с языком программирования Java, но он также поддерживает работу и с другими языками. Это один из основных конкурентов IntelliJ IDEA. Отличие Eclipse от ему подобных программ в том, что к нему можно устанавливать различные дополнения и его можно полностью настроить под себя.

Но также, как и все IDE для Java, Эклипс все же имеет свои системные требования, поэтому работать он будет не на каждом компьютере. Хотя не такие уж эти требования и высокие.

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

Закрыть

Мы рады, что смогли помочь Вам в решении проблемы.

Отблагодарите автора, поделитесь статьей в социальных сетях.

Закрыть

Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.

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

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

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

  1. Проектирование приложения.
  2. Реализация программного кода приложения.
  3. Тестирование приложения.

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

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

  1. Анализ требований.
  2. Разработка архитектуры будущего программного обеспечения.
  3. Разработка устройств основных компонент программного обеспечения.
  4. Разработка макетов Пользовательских интерфейсов.
  • BPMN (Vision 2003 + BPMN, AcuaLogic BPMN, Eclipse, Sybase Power Designer);
  • блок-схемы (Vision 2003 и многие другие);
  • ER-диаграмы (Visio 2003, ERWin, Sybase Power Designer и многие другие);
  • UML-диаграмы (Sybase Power Designer, Rational Rose и многие другие);
  • макеты, мат-модели и т.д.

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

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

  • целевая платформа;
  • гибкость языка;
  • время исполнения проекта;
  • производительность;
  • поддержка и сообщество.

Аналогичный аргумент применим и для Web-сайтов. Они должны выглядеть и работать одинаково во всех браузерах. Использование тегов CSS3 и HTML5 без проверки совместимости с браузерами приведет к разному отображению и поведению сайта в разных браузерах.

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

Рассмотрите следующие вопросы, связанные с гибкостью:

  1. Можно ли использовать новую функциональность без подключения новой библиотеки?
  2. Если нет, доступна ли эта функциональность в библиотеке языка?
  3. Если эта функциональность не встроена в язык и не доступна в библиотеке, какие усилия нужно приложить для ее создания с нуля?

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

Время исполнения проекта очень зависит от размера кода. Теоретически, чем легче изучить язык и чем меньше объем кода, тем меньше это время.

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

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

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

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

Если же все-таки выбор языка реально возможен, то нужно иметь в виду, что все существующие языки программирования можно разделить на следующие группы:

  • универсальные языки высокого уровня;
  • специализированные языки разработчика программного обеспечения;
  • специализированные языки пользователя;
  • языки низкого уровня.

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

Все это сделало С и C++ основными языками, используемыми для создания операционных систем, и, в свою очередь, служит для них дополнительной рекламой. Однако С и C++ имеют и серьезные недостатки:

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

Альтернативой С и C++ среди универсальных языков программирования, используемых для создания прикладного программного обеспечения, на сегодня является Pascal, компиляторы которого в силу четкого синтаксиса обнаруживают помимо синтаксических и большое количество семантических ошибок. Версия Object Pascal, использованная в среде Delphi, сопровождается профессиональными библиотеками классов, упрощающими ведение больших разработок, в том числе и требующих использования баз данных, что делает Delphi достаточно эффективной средой для создания приложений Windows.

Кроме этих языков к группе универсальных принадлежат также Basic, Modula, Ada и некоторые другие. Каждый из указанных языков, так же, как C++ и Pascal, имеет свои особенности и, соответственно, свою область применения.

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

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

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

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

В настоящее время языки типа Ассемблера обычно используют:

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

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

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

Наиболее часто используемыми являются визуальные среды Delphi, C++ Builder фирмы Borland (Inprise Corporation), Visual C++, Visual Basic фирмы Microsoft, Visual Ada фирмы IBM и др.

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

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

  1. Тестирование на отказ и восстановление.
  2. Функциональное тестирование.
  3. Тестирование безопасности.
  4. Тестирование взаимодействия.
  5. Тестирование процесса установки.
  6. Тестирование удобства пользования.
  7. Конфигурационное тестирование
  8. Нагрузочное тестирование.

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

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

Читайте также: