Файл: Классификация языков программирование. Категории выбора среды и языков разработки программ..pdf
Добавлен: 01.04.2023
Просмотров: 214
Скачиваний: 2
Из-за быстрого развития вычислительной техники, нужда в эффективных средствах разработки ПО привела к появлению системы «Быстрой разработки» RAD-Системы (Англ. Rapid Application Development – Среда Быстрой Разработки Приложений), в подобных системах в основном используется визуальное проектирования и событийного программирования. Суть RAD-систем в том, чтобы рутинную работу делал не программист, а среда разработки, а программисту остаётся тока конструирования экранных форм и функция обработки событий. И исходя из этого можно сказать, что программист со RAD-системой имеет высокую производительность.
Кроссплатформенность программное обеспечения, или просто кроссплатформенность – это Программное Обеспечения (ПО), работающее более чем одного аппаратной платформе и/или Операционной Системой (ОС).
Интегрированные в среды разработке содержит следующие модули для написания программ.
- Редактор кода – это программная система, которая обеспечивает первоначальную подготовку исходного текста и его исправления во время разработки. В отличии от универсальных текстовых процессоров (Один из известных MS World), а редакторы кода специализируются на исходные текстовые программы. В данный момент существуют много различных редакторов кода, начиная от простого набора текста, заканчивая автоматическим форматированием с учетом правилами оформления кода, для разлечных языков программирования.
- Компилятор – проверяет текст написанной программы и проверяет её на наличия синтаксически ошибок, и транслирует программу, пере конвертирую из высокоуровневого языка на машинный код, непосредственно понятный компьютеру. В этой программе могут использоваться кусочку уже сделанного кода, который располагается в иных Библиотеках, например в файлах с расширений .lib. Но на этапе компиляции библиотека не будет подключена к только написанному машинному коду. Она подключиться на следующем этапе.
- Отладчик – нужен для отладки программ. Синтаксические ошибки допускают многие программисты, новички и профессионалы. Отладчик являться тестировщиком программ, он выявляет логические ошибки. Компилятор создает объектный код, обычно он содержит «дыры» из-за этих частей отладчик связывает объектный код с отсутствующих функций, это нужно чтобы создать исполняемый загрузочный модуль, который будет без «дыр». В итоги создаться файл с расширений, оно зависит от операционный системы для Windows это .exe, для Linux это .out.
- Трассировка – это ведения протоколов работы программы. Во время трассировки программист может отслеживать последовательность исполнения операторов, и так же динамику изменения значения переменных программ.
На данный момент существую не мало ИСР, но за рассмотрения я возьму тока некоторые из них, опишу их сановные моменты и в чем их особенности.
- Visual Studio – это набор инструментов для создания программного обеспечения или Быстрая Среда Разработки (RAD) от кампании Microsoft, базирующаяся на платформе .NET. .NET Framework – это платформа для построения и использования приложений, она облегчает написания надёжного программного кода в сжатые сроки. Можно планировать, разрабатывать пользовательский интерфейс, писать код, тестировать, анализ качества кода и производительности и так далия. При помощи этой среды разработки можно создавать:
- Приложения, игры, которые могут использоваться как на Windows, так и на Андроиде и IOS.
- Веб-сайты, веб-службы на основе ASP.NET, JQuery, AnngularJS и другие.
- Приложения для различных платформ, Office, HoloLens и Интернет Вещей.
- Графические приложения для устройств Windows, Xbox, с поддержкой DIirectX.
(Рис.2 Интерфейс Visual Studio)
- Android Studio – это относительно новая IDE/ИСР (Интегрированная среда разработки) от компании Google для разработчиков на ОС Андроид и есть версия ОС Windows. Андроид Студия основана на InetelliJ IDEA, это тоже ИСР, и она тоже сделана для разработки на Андроид. Из-за большой роли java функции и методы будут написаны именно, основанные на языке java:
- MainActivity.java – это класс активити, то есть это то, что видит пользователь при запуске приложения. В нем используются стандартные методы, которые позволяют отобразить нужное содержимое, а также метод takeScreenshot (это нужна для получения скриншотов с ключевыми словами в тексе)
- BinarizationActivity.java – это класс активити, который средствами выбора пользователя и параметров запускает алгоритмы по обработке изображения.
- GystogramActivity.java – это отображения получения гистограмма на весь экран.
- Binarize.java – это реализация методов, которое позволяют получать из цвета изображения полутоновые, а дальше бинарные.
- ColorWordsProcesso.java – это сегментация слов, который может красить их в разные цвета.
- Recognizer.java – это исполнитель распознавания ключевых слов среди кандидатов, которые были получены на предыдущих этапов.
Пример интерфейса Android Studio.
(Рис.3 Интерфейс Android Studio версии 1.0.1)
- XCode – это IDE, то есть Интегрированная Среда Разработки по созданию приложений для iOS и OS X. Это важный инструмент для программистов которые разрабатывают программное обеспечения для Appel. В нем встроенные симуляторы iPhone, Apple Watch и Apple TV. XCode исполузует язык C, C++, PHP, Perl, Swift, AppleScript и другие языки программирования, известные или мало известные. В ней есть такие возможности как:
- Xcode IDE (Кодировка, создания и отладка приложений)
- Interface Builder (Разработка пользовательского интерфейса)
- Инструменты для анализа поведения и производительности
- Interface builder – это средства для разработки пользовательского интерфейса, является частью Интегрированной среды разработки (IDE)
Интерфейс Xcode на данный момент. (см. Рис.4)
(Рис.4 Интерфейса Xcode)
- IntelliJ IDEA – Это интегрированная среда разработки (IDE) программного обеспечения (ПО), на многих языках программирования, и в частности Java, JavaScript, Python. Разработана компанией JetBrains – это IT-компания, мировой производитель Программного Обеспечения. С 2007 года с версии 9.0 доступные две версии, Community Edition и Ultimate Editi.
- Community Edition – Является свободной версией, доступной по лицензии Apache 2.0.
- Умное автодополнение, инструменты длф анализа качества кода, удобная навигация, расширения рефакторинги и форматирования для Java. Groovy, Scala, Clojure, Clojure и Erlang.
- Профессиональный набор инструментов для разработки приложений Android.
- Поддержка JavaFX 2.0? интеграция с SceneBuilder. И дизайнер интерфейса для Swing.
- Интеграция с атематическими инструментами сборки и управления проекта, такие как Maven, Grable и другие.
- Интеграция для тестирования с поддержкой Junit, TestNG, Spock, ScalaTest и spec2.
- Интеграция со системами управления версиями, такие как Git, Subversion, Mercurial и CSV.
- Ultimate Editi – версия ИСР для создания коммерческих приложений.
- Умный автодоополнение, инструменты для анализа качества кода, удобная навигация, расширения рефакторинга и форматирования для Java, Groovy, Scala, HTML, CSS, JavaScript, CoffeeScript, ActionScript, XML и многие другие языки.
- Поддержка популярных фреймворков и платформ, включая Java EE, Spring Framework, Grails, Play Framework и многие другие.
- Интеграция с серверами, такими как Tomcat, TomEE, GlassFish, JBoss, Resin и многие другие.
- Интеграция с коммерческими системами управления версиями, Perforce, Team Foundation Server и так далия.
- Инструменты для запуска текстов и анализ кода, и еще поддержка популярных фреймворков для тестирования.
Интерфейс IntelliJ IDEA на данный момент. (см. Рис.5)
(Рис.5 Интерфейс IntelliJ IDEA)
- Embarcadero Delphi – это среда быстрого разработки приложений (RAD). В названии фигурирует язык Delphi – это язык общего назначения, он основан на диалекте Object Pascal, а ядром является Borland Turbo Pascal. С этим языком поставляется своя Среда разработки. Он позволяет создавать кросс-платформенную разработку (То есть скомпилированную) приложений из одной базы кода. В настоящие время поддерживает такие Операционные Системы. Windows, OSX, iOS и Android. Этот ИСР поставляется две визуальные структуры.
- VCL (Visual Component Library), она спирально разработана для Операционной Системы Windows, обретает собственные средства управления Виндовс и поддерживает создания пользовательских.
- FMX Межплатформенная платформа FireMonkey для всех поддерживаемых платформах.
Интерфейс Embarcadero Delphi 10.3 Rio на данный момент. (см. Рис.6)
(Рис.6 Интерфейс Embarcadero Delphi 10.3 Rio)
- Eclipse (с англ. Затмения) – это один из лучших инструментов созданные за последние годы для Java. SDK Eclipse представляет собой Интегрированную Среду Разработки (ИСР/IDE), с открытым исходным кодом. Создателем выступает Object Technology International (OTI), которую потом купят IBM. По факту Eclipse это просто платформа, которая позволяет разрабатывать дополнительные плагины, которые естественным образом встраиваться в платформу. Следующие языки используются в ИСР, C/C++, HTML, Cobol, Perl, Ruby и другие.
- Инструменты Eclipse Java включает в себя редактор исходного кода (Создания и редактирования), средства отладки и интеграция с Ant.
- Есть как бесплатные, так и платные дополнения (Палагины), например, как инструментальные средства создания схем UML, разработка без данных и многие другие.
Интерфейс Интегрированной Среды Разработки Eclipse на момент 2018 года. (см. Рис.7)
(Рис.7 Интерфейс Eclipse 2018 года)
Появления Интегрированных Сред Разработки (ИСР/IDE) связаны с несколькими факторами. Это стремления человека автоматизировать свой труд, как и в производстве, так и программировании. Ну и на данный момент времени, внешний вид значит не малое, раньше это все было в новинку, поэтому сильно на это не обращали внимания, но прошло не мало времени.
Если обобщить, теперь нужно не тока сделать хорошие Содержания, но и хорошо оформить визуально. ИСР как раз токи и есть эта формула.
Глава 3 Языки разработки программ и парадигмы
В предыдущий главах я пытался не касаться подробного описания языков программирования и принципов, но оставлять это без внимания нельзя. Я опишу как работают некоторые языки, которые созданы для разработки программ, возьму такие языки как C, Java…
Но перед тем, как описать языки с точки зрения программирования, нужно знать основные принципы программирования.
Нечем с того, что у каждой технологии существуют одно или несколько парадигм (гре. Пример, образец. Теоретическое понятие принятыми учеными) программирования. Это влияет на подход разработки программ.
Есть четыре основные парадигмы, на них написанные большинство сегодняшних методов программирования, императивная, аппликативная, основанная на системе правил и Объектно-ориентированная.
- Императивная парадигма – это последовательность выполнения операторов программ и процедур. Это система выходит из-за особенности аппаратной части стандартного компьютера, исполняющий команды последовательно. На основе него разработано операторно-ориентированные языки программирования, на нем разработаны FORTRAN, ALGOL, PL, Basic, C, Pascal, Ada, Smalltalk, COBOL.
- Аппликативная парадигма – это функции, которые выполняют программу, и какую функцию нужно пременить к начальному состоянию машины.
- Парадигма, основанная на системе правил – Языки, которые основаны на этой парадигме, которые осуществляют проверку наличия необходимого разрешённого условия, в случаи нарушения правила, то выполняется соответственное действия.
- Объектно-ориентированная парадигма – В этой системе стариться сложные объекты данных. Для операций определяется несколько ограниченных методов. Созданные объекты могут наследовать свойства более простые объекты.
Существуют еще такие как Визуальное программирования и параллельное программирования, это объясняется тем, что необходимость решать разные задачи порождают парадигмы программирования.
Программы различаются по их назначению, выполнимыми функциями, формами реализации. Но существуют некоторые общие принципы, которые следует использовать при разработки программ.
- Частный принцип. – Основан на выделении из алгоритмов и данных особых групп по частности их использования. Для действий, которые наиболее часто встречаются при работе программ, создаться условия быстрого выполнения.
- Принцип модульности. – Под модулем в этом контексте является функциональность элементов рассматриваемой в системе, и имеющий средства сопряжения с подобными элементами или более высокого уровня элементы данной или другой системе.
- Принцип функционального изобретательности. – Он является логическим продолжателем частного и модульного принципа, используется при проектировании программ. В программах выделяются некоторая часть модулей, которые постоянно должны быть в состоянии готовности для эффективной организации вычислительных процессов.
- Принцип генерируемости. – определяет такой способ исходное представления программы, который бы позволял осуществлять настройку на конкретную конфигурацию технических средств, круг решения проблем, условия работы пользователя.
- Принцип функциональной избыточности. – принцип заключается в тои что бы учитывать возможность провидения одной и той же работы различными средствами.
- Принцип «По умолчанию». – применяется для облегчения организация связей с системой как на стадии генерации, так и на стадии работы с готовыми программами. Этот принцип основан на хранение в системе некоторые базовые описания структур, модулей, конфигурацию оборудования и данных, определяющий условия работы с программой.