Файл: Средства разработки клиентских программ.pdf

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

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

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

Добавлен: 20.05.2023

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

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

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

Введение

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

Например, js Фреймворки необходимы для создания программ на одноименном языке программирования. Сегодня он является одним из самых распространенных. Фреймворки JS обеспечивают удобную работу со всевозможными приложениями, сайтами и так далее. Относительно новым инструментом разработки является Typescript. Он представляет собой подобие статической типизации в JS. Данный язык продолжает активно развиваться, так как он является относительно новым. Его официальная документация полностью есть на русском языке. Этот инструмент облегчает работу программиста, в итоге в вас получается обычный JS-файл.

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

В целом выделяют клиентские и серверные языки программирования. На серверные языки не влияет использование конкретного браузера. В данном случае все вычисления осуществляются удаленно. Такие языки открывают для программистов намного больше возможностей. Самыми распространенными из них считаются PHP и Perl. Также к ним относятся Ruby, Java, C, Python.

Клиентским языком является JS. Все программы, созданные на этом языке, обрабатываются непосредственно на вашем компьютере. Это имеет как свои преимущества, так и недостатки. У вас нет необходимости отправлять программы на удаленный сервер. Скрипт читается быстрее. Вам не нужно тратить время и средства на пользование сервером. Основным минусом является то, что различные браузеры могут не одинаково обрабатывать скрипты. Поэтому один и тот же документ может иметь различное отображение в зависимости от используемого браузера. Кроме того, код является уязвимым, так как он открыт для посетителей. Такой код сможет увидеть любой пользователь.[2]

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


«Средства разработки клиентских программ»

Объект исследования: Средства разработки клиентских программ.

Предмет исследования: процесс организации средств разработки клиентских программ.

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

Задачи исследования:

  1. Рассмотреть теоритические аспекты клиентского языка программирования
  2. Выявить фреймворки, библиотеки и расширения JavaScript
  3. Рассмотреть основные веб-технологии
  4. Рассмотреть клиентские технологии
  5. Рассмотреть сущность клиентских программ
  6. Рассмотреть средства разработки клиентских приложений
  7. Выявить преимущества клиентских программ
  8. Рассмотреть клиентские программы

Для решении данной проблемы в работе применялись труды и учебные пособия российских и зарубежных авторов (М.М. Мелдман, А.Д. Тейлер, А.В. Леоненков, А.Е. Голубева, Е.И. Мозговая, В.М. Марцинковская, О.Г. Кузмин, Н.П. Клушина, М.И. Рожков, Е. И. Мацяшек, М. И. Конноли и других).

Глава 1. Теоритические аспекты клиентского языка программирования

Клиентский язык программирования

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

Скрипты на стороне клиента встроены в код разметки HTML на веб-сайте, который размещается на сервере на языке совместимым с браузером или скомпилированным для связи с ним. Это и есть клиентский язык программирования. Браузер загружает этот код, а затем обрабатывает его. Если ему требуется запросить дополнительную информацию в ответ на клики пользователей, мыши и т.д. (называемые «событиями»), ещё один запрос отправляется обратно на сервер. [5]


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

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

Например: если существует форма для обновления профиля, то для создания конкретной информации из базы данных берется конкретная информация, в то время как интерфейсные скрипты заполняют форму на клиенте этой информацией.

Самые распространённые из клиентских языков программирования являются — JavaScript и Visual Basic. Особенность таких языков заложена в их названии. Программы, написанные на клиентских языках программирования обрабатываются на клиентском компьютере. Говоря проще, скрипты обрабатывает браузер, стоящий на Вашем компе. Из этой особенности вытекают  их плюсы и минусы.

Самым большим плюсом клиентских языков программирования является то, что нет необходимости отправлять веб-документ  для обработки на сервер. Эта особенность значительно повышает скорость чтения скрипта. Уменьшается трафик,что экономит деньги и снижается нагрузка на сервер. Так же нет надобности ставить дополнительное программное обеспечение для обработки скриптов, т.к. их обрабатывают браузеры.

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


1.2 Клиентские языки программирования и фреймворки

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

HTML и CSS: это основные строительные блоки любого сайта. HTML диктует организацию и контент сайта. CSS содержит код для каждого графического элемента - от фонов до шрифтов - который составляет внешний вид веб-сайта. [9]

JavaScript - это клиентский скриптовый язык программирования. Наиболее широко используемый клиентский скрипт - почти каждый интерфейс сайта - это сочетание JavaScript, HTML и CSS.

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

.


 

1.3 Фреймворки, библиотеки и расширения JavaScript

  • AngularJS: невероятно надежная среда JavaScript для сайтов с тяжелыми данными
  • JQuery, jQuery Mobile: быстрая, небольшая библиотека объектов JS, которая упрощает управление JavaScript в разных браузерах
  • Node.js: серверная платформа, использующая JavaScript, и изменяет способ взаимодействия приложений реального времени с сервером для более быстрого времени отклика и более простого пользовательского взаимодействия. Он работает с другой инфраструктурой JavaScript, Express.js, для создания серверных веб-приложений.
  • Bootstrap: платформа для мобильных устройств, использующая HTML, CSS и JavaScript для ускорения разработки быстродействующих приложений React, для дизайна пользовательского интерфейса Express.js, Backbone.js, Ember.js, MeteorJS и другие.
  • TypeScript: язык компиляции на JavaScript, который является надмножеством JavaScript, созданным Microsoft
  • AJAX (JavaScript + XML) - технология, позволяющая обновлять определенные части сайта без обновления полной страницы путем асинхронного подключения к базе данных и вытягивания фрагментов данных на основе JSON или XML.

1.4 Веб-технологии

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


Графический интерфейс — это система графических изображений, с помощью которых пользователь может “общаться” с компьютером. Это окна, иконки, панели управления — изображения, позволяющие дать компьютеру команду с помощью клика. Для сравнения, противоположностью графического интерфейса является текстовый интерфейс, для работы в котором пользователь вводит специально сформулированные команды в командную строку. Вся информация при этом предстает в текстовом виде, например, как при настройке компьютера в BIOS. [6]

Серверное оборудование (хостинг) — это компьютерное оборудование, оснащенное специальным программным обеспечением для хранения самого сайта и данных пользователей, обеспечения непрерывной доступности сайта в интернете и взаимодействия со сторонними веб-службами. [6]

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

1.5 Клиентские технологии

Типичный сайт состоит из трех частей — интерфейса (который также известен как пользовательская часть), программной и серверной частей. Для начала рассмотрим подробнее пользовательскую часть сайта. Ее также называют frontend и она отвечает за графический интерфейс — правильное отображение контента сайта. Для построения пользовательской части используется HTML-разметка, CSS-стили и JavaScript. HTML (HyperText Markup Language, т.е. язык разметки гипертекста) позволяет отобразить информационный контент — текстовые блоки, ссылки и изображения. Простейшая веб-страница может быть создана используя исключительно HTML, но из-за отсутствия стилевых элементов она скорее всего будет выглядеть грубовато и не слишком привлекательно, поэтому важный элемент создания веб-страницы — это оформление контента. Как будет выглядеть шрифт текста, как будет располагаться сам текст, где будут находиться различные объекты, — за все это отвечает CSS (Cascading Stylesheets).

JavaScript, в свою очередь, нужен для того, чтобы сайт мог взаимодействовать с пользователем — анализировать введенные данные, проверять их корректность, изменять контент страницы согласно запросам, выдавать оповещения, модальные окна или показывать выпадающие меню. Технология AJAX (Asynchronous JavaScript and XML) позволяет сайту отправлять запросы и получать данные с сервера без видимой перезагрузки страницы, что значительно ускоряет работу. AJAX используется, к примеру, в Google Maps — во время прокрутки карты не нужно каждый раз перезагружать страницу. Для упрощения разработки клиентской части сайта можно использовать библиотеки, содержащие готовые сборники компонентов для написания типичных программ. Например, бесплатная библиотека JQuery содержит полезные функции для решения типовых задач на JavaScript. [4]