Файл: Классификация языков программирования. Критерии выбора среды и языка разработки программ (Основы программирования).pdf

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

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

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

Добавлен: 25.04.2023

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

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

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

Рассмотрим средства разработки и языков программирования исходя из различных сфер.

3.1 Средства разработки мобильных приложений

В связи с тем, что на данный момент наиболее популярной операционной системой для мобильных устройств является ОС Android, целесообразно рассмотреть каким средствами разрабатываются приложения на устройства с данной операционной системой.[28]

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

История Android началась в далеком 2002 году, когда корпорация Google заинтересовались наработками Энди Рубина и решила сделать из этого большой проект. И в 2007 году Google решил организовать большой альянс разработчиков мобильных устройств с целью продвигать Android, как операционную систему для телефонов. Как мы видим на сегодняшний день это у них отлично получилось. По итогам 2014 года Android занимает лидирующую позицию на рынке операционных систем и доля его составляет 48,8 %. Прогнозы относительно данной платформы положительные. Немаловажными аспектами роста динамики явились такие характеристики как, открытость системы, возможность вносить изменения в основные приложения, возможность быстрой и легкой разработки. Поэтому выбор разработки приложения для Android является очень актуальным.


Разработчику работающего с платформой Android дается возможность писать код на Java абстрагируясь от ядра. [29]У данной операционной системы имеются такие плюсы как: фреймворк, имеющий широкий набор API для созданий разнообразных видов приложений и дающий возможность повторного использования и замены компонентов, предлагаемые платформой и другими приложениями. А также наличие виртуальной машины Dalvik, обеспечивающий запуск приложений. Кроме того инструментами Android являются база данных SQLite, 2D и 3D графика, Media Player, коммуникации, протоколы обмена и различные библиотеки.

Если необходимо создать приложение на Java для открытой платформы Android первое, что необходимо, это Java Development Kit от Oracle[30].

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

Android Studio — удобная среда разработки приложений для устройств, работающих под управлением операционной системы Android. Программа обладает большим набором инструментов, благодаря чему разработчики с её помощью могут создавать приложения для android любого уровня сложности. Интерфейс среды разработки для мобильных платформ под ОС Android представлен на рисунке 1.[31]

Рисунок 1 – Интерфейс среды разработки Android Studio

Данная среда разработки появилась сравнительно недавно, но уже завоевала немалую популярность и множество положительных отзывов разработчиков, и с каждым днём желающих программу Android Studio скачать становится всё больше и больше. Android Studio будет очень полезной для разработчиков, имеющих опыт в создании приложения для Android. Для тех пользователей, которые только начинают осваивать азы создания приложений, данная программа станет отличным инструментов для обучения.[32]

В приложении также реализована функция Google Cloud Messaging, благодаря чему можно через облако пересылать данные с сервера прямо на устройства. Есть в программе и функция локализации приложений. Многофункциональная среда разработки Android Studio обладает полным набором всех необходимых инструментов и функций, благодаря которым даже такое трудоемкое и сложное дело, как создание приложения для андроид становится простым и интересным. При этом программа работает надежно и стабильно, проста в освоении и отлично подходит как для профессиональных разработчиков, так и для новичков в программировании приложений для ОС Android.


Дополненная реальность полностью меняет восприятие обычных приложений и игр. Технология AR в мобильных приложениях в 2018 году получит новый импульс. Например, Microsoft обещает взорвать массовый рынок своими AR-приложения. Ждем с нетерпением!

Блокчейн.

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

Искусственный интеллект.

Apple разрешила разработчикам интегрировать Siri в свои приложения только в 2017 году. Скоро искусственный интеллект будет встроен в самые разные области. Пока только крупные компании могут позволить себе развитие искусственного интеллекта в мобильных приложениях. Но 2018 год должен все изменить.

Боты.

Разве не классно оптимизировать бизнес-процессы, все упрощать, и увеличивать прибыль? Будь вы в хоть в B2C, хоть в B2B, боты станут для вас незаменимыми. Подобно промышленной революции XIX века, боты перевернут мобайл и сделают эту отрасль лучше.

Интернет вещей.

Интернет вещей уже не кажется нам чем-то загадочным. Умные дома, интеллектуальный электрический чайник, домашние приборы и все, что имеет префикс «умный», можно объединить в единую инфраструктуру с авторизованными пользователями. Аналитики прогнозируют значительные изменения в этой области в 2018.

Безопасность и защита данных пользователей приложений.

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

Электронная и мобильная коммерция.

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

Игры.

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

Бонус-трек.

Топовые языки программирования в 2018:

Kotlin

Kotlin был недавно представлен Google в качестве альтернативы старой Java для Android-разработки. Язык быстро набирает популярность. Разработчиков привлекает упрощенный синтаксис и фокус исключительно на мобильной разработке.


Swift

Крепко стоит на рынке и не сдаст позиций на протяжении всего 2018 года.

JavaScript

Сейчас почти все может быть разработано с помощью Javascript. Когда у вас ограниченный бюджет, но список функций чрезвычайно велик, возможен только вариант разработки гибридных приложений. Javascript является ядром всей гибридной разработки на Ionic, React Native, но не Xamarin . Последний использует .NET-технологии.

Objective-C

Хоть Swift и завоевала сердца разработчиков iOS, тем не менее ветеран Objective-C все еще жив . Почему? Чрезвычайно мощный язык, который предпочитают разработчики с большим опытом. Полезен не только для мобильных разработок, но и для macOS.

3.2 Средства разработки веб-приложений

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

Но прежде необходимо понять разницу между языком веб-программирования и фреймворком. Язык программирования содержит базисный синтаксис, зачастую обладает стандартной библиотекой. Фрейворк представляет разработчику различные библиотеки. Некоторые языки и фреворки представляют собой одно целое, например JSP или ASP.NET. Другие языки используются без фреворка – PHP или Perl.[33]

Языки веб-программирования и фреймворки классифицируются на:

Клиентские – используют для написания программ на стороне клиента. К ним относятся такие языки и фреймворки, как JavaScript, SilverLight, AdobeFlash.

Серверные – применяются для написания программ на сервере. Наиболее популярными из них являются PHP, JSP (Java), ASP.NET, Perl, Ruby.

Среди клиентских языков необходимо выделить JavaScript.

JavaScript - это язык управления сценариями просмотра гипертекстовых страниц Web на стороне клиента. Если быть более точным, то JavaScript - это не только язык программирования на стороне клиента. Liveware, прародитель JavaScript, является средством подстановок на стороне сервера Netscape. Однако наибольшую популярность JavaScriptобеспечило программирование на стороне клиента.[34]


JavaScript стандартизован ECMA (European Computer Manufacturers Association - Ассоциация европейских производителей компьютеров). Соответствующие стандарты носят названия ECMA-262 и ISO-16262. Этими стандартами определяется язык ECMA Script, который примерно эквивалентен JavaScript 1.1. Отметим, что не все реализации JavaScript на сегодня полностью соответствуют стандарту ECMA. В рамках данного курса мы во всех случаях будем использовать название JavaScript.

Название «JavaScript» является собственностью Netscape. Реализация языка, осуществленная разработчиками Microsoft, официально называется Javascript. Версии JavaScript совместимы с соответствующими версиями JavaScript, т.е. JavaScript является подмножеством языка JavaScript.

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

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

Язык программирования JavaScript разработан фирмой Netscape для создания интерактивных HTML-документов. Это объектно-ориентированный язык разработки встраиваемых приложений, выполняющих как на стороне клиента, так и на стороне сервера. Многие люди считают, что JavaScript - это то же самое, что и Java, лишь потому, что эти языки имеют схожие названия. На самом деле это не так. Клиентские приложения выполняются браузером просмотра Web-документов на машине пользователя, серверные приложения выполняются на сервере.

При разработке обоих типов приложений используется общий компонент языка, называемый ядром и включающий определения стандартных объектов и конструкций (переменные, функции, основные объекты и средство Live Connect взаимодействия с Java-апплетами), и соответствующие компоненты дополнений языка, содержащие специфические для каждого типа приложений определения объектов.

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

Основные области использования языка JavaScript при создании интерактивных HTML-страниц:

  • динамическое создание документа с помощью сценария;
  • оперативная проверка достоверности заполняемых пользователем полей форм HTMLдо передачи их на сервер;
  • создание динамических HTML-страниц совместно с каскадными таблицами стилей и объектной моделью документа;
  • взаимодействие с пользователем при решении «локальных» задач, решаемых приложением JavaScript, встроенном в HTML страницу.[36]