Дино Эспозито: Разработка современных веб-приложений. Анализ предметных областей и технологий. Верстка статических страниц HTML. Приступаем к изучению Web-технологий

18.04.2019

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

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

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

Это приложение, которое может помочь вам создавать свои собственные профессиональные стандартные сайты за несколько минут. Это лучшее приложение, которые вы должны рассмотреть, если ищете инструмент для веб-разработки, который будет делать за вас все, особенно если вы являетесь пользователем Windows. Есть две версии - бесплатная и расширенная (платная версия), но обе они одинаково впечатляют. Приложение сочетает в себе WYSIWYG дизайн и кодирование, предоставляя вам инструмент, который не только работает очень быстро, но также очень легкий в освоении. В бесплатной версии могут отсутствовать некоторые функции, которые имеются в платной версии, но это все равно удивительное приложение, заслуживающее вашего внимания.

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

Это универсальный текстовый редактор, который поставляется с множеством удивительных инструментов для веб-разработчиков. Он может быть не самый лучший, но, однозначно, он хорош. Это интерфейс Windows, который предлагает отличный редактор программирования, включающий шаблоны для наиболее распространенных языков программирования, таких как HTML, VBScript, FTP-клиент, PHP.

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

Это лучшее приложение, которое вы можете использовать, если хотите создать потрясающие анимации для ваших сайтов. Чаще всего она используется дизайнерами, занимающимися непосредственно анимацией и рекламой, поэтому если вы являетесь тем самым дизайнером, создающим анимированные элементы для использования в других программах, которые могут быть доступны на всех платформах, тогда это приложение то, что вам нужно. Существует ряд компонентов, которые вам, наверняка, понравятся в этом приложении, включая интеграцию с Google Drive, мероприятия, 3D-объекты, слои и другое.

Очень простой редактор «drag-and-drop», лучше всего подходящий для новичков, которые разрабатывают свои первые сайты. Это приложение поставляется с бесплатным хостингом и неограниченным количеством страниц, среди всех других замечательных особенностей. Если вы хотите создать фантастический сайт, не тратя слишком много времени для его создания, то эта программа будет как нельзя кстати.

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

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

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

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

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

Что такое разработка веб-приложений?

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

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


Видео | 15 минут | Языки программирования

В этом докладе рассказывается о том, зачем нужны языки программирования, какие они бывают, для каких целей предназначены. Также кратко упоминаются языки разметки (HTML), представления данных (XML) и запросов (SQL).


Видео | 23 минуты | Языки программирования

В этом докладе даётся краткий обзор языка программирования C#, его основных особенностей и конструкций, демонстрируются примеры создания простейших консольных и оконных приложений для Windows в Visual Studio 2010.

Ознакомьтесь с богатыми возможностями операционной системы Windows, которые можно и нужно использовать при разработке веб-приложений.

4 средства разработки


Видео | 10 минут | WebMatrix

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


Видео | 11 минут | Internet Explorer

В этом докладе дается краткий обзор технологии Pinned Sites ("Прикрепленные сайты"), появившейся в Internet Explorer 9. Демонстрируется работа с Jump Lists, Overlay Icons и Thumbnail Toolbar Buttons.

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

СОВРЕМЕННЫЕ СРЕДСТВА РАЗРАБОТКИ ИНТЕРНЕТ-САЙТОВ И WEB-ПРИЛОЖЕНИЙ

Крупина Татьяна Александровна 1 , Щербакова Светлана Михайловна 1
1 Московский педагогический государственный университет, магистрант


Аннотация
Данная статья посвящена обзору современных средств разработки Интернет-сайтов и Web-приложений. Также рассматриваются проблемы обучения студентов и школьников этим технологиям.

MODERN DEVELOPMENT TOOLS ONLINE SITES AND WEB-APPLICATIONS

Krupina Tatiana Aleksandrovna 1 , Shcherbakova Svetlana Mikhajlovna 1
1 Moscow State Pedagogical University, Graduate of the Department of Applied Mathematics and IT


Abstract
This article provides an overview of the development of modern websites and Web-based applications. It also discusses the problem of training students and pupils of these technologies.

Информатизация современного общества связана с внедрением средств и методов информационных и коммуникационных технологий (ИКТ) в различные области человеческой деятельности. Особая роль в этом процессе, несомненно, принадлежит развитию сетевых технологий и коммуникаций, которая, в том числе, проявляется в создании корпоративных автоматизированных информационных систем и сетевых проектов электронной коммерции. Действительно, деятельность любого современного предприятия, так или иначе, связана с созданием и ведением корпоративного интернет-сайта.

Современные Федеральные государственные образовательные стандарты (ФГОС) по многим не только инженерным, но и гуманитарным направлениям требуют от выпускников умений по разработке и управлению Интернет-сайтами.

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

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

  • создание HTML документа, т.е. с помощью редактора «Блокнот» набрать код на языке HTML в ручном режиме и реализовать его с помощью браузера на клиентском рабочем месте, а впоследствии опубликовать у провайдера, воспользовавшись его услугами хостинга;
  • создание того же HTML документа, с помощью редактора Adobe Dreamweaver, пользуясь большим набором функций и удобств;
  • воспользоваться готовыми сайтами-оболочками для разработки Web-сайтов различных тематических направлений и дизайна и также опубликовать сайт в интернете, воспользовавшись услугами бесплатного или платного хостинга.

В отличии от разработки простых и не интерактивных сайтов, для разработки Web-приложений, которые запускаются и выполняют обработку данных на сервере, необходимы методы и средства дополняющие указанные в предыдущем абзаце. Разработка Web-приложений связана кроме создания HTML-кода с программированием на специальном языке. Для разработки Web-приложений используется язык программирования PHP, а также не обойтись без, например, локального сервера Apache и баз данных MySQL.

Рассмотрим еще средства программирования Web-приложений:

  • язык программирования JavaScript используется для создания интерактивных HTML документов;
  • VBScript используется для написания сценариев клиента, а также для написания сценариев на сервере;
  • Perl используется для разработки инструментов системного администрирования, а также в разработке CGI-сценариев, систем автоматической обработки электронной почты и поддержки узлов Web.

Для самостоятельной разработки Web-приложений можно воспользоваться свободно распространяемым ресурсом Denwer.

Denwer (от сокр. ДНВР - джентльменский набор Web -разработчика) - набор дистрибутивов и программная оболочка, которые предназначены для создания и отладки Web-приложений и другого динамического содержимого Web-страниц на ПК под управлением ОС.

В состав набора Denwer входят:

  • локальный сервер Apache для запуска приложений на компьютере пользователя, имитируя функциональные возможности сервера, где у провайдера впоследствии будет установлено разработанное приложение. Apache – это программное обеспечение –кроссплатформенное, свободно распространяемое и поддерживающее различными операционными системами;
  • система программирования PHP – Cи-подобный язык для разработки программных кодов встраиваемых в HTML-код сайта и исполняемых на сервере, с целью обработки данных, поступающих от пользователей того или иного сайта. PHP (Hypertext Preprocessor – «Препроцессор гипертекста», первоначально Personal Home Page Tools – «Инструменты для создания персональных веб-страниц») – скриптовый язык общего назначения, применяемый для разработки Web-приложений, был создан Расмусом Лердорфом в 1994 году;
  • MySQL – свободно распространяемое программное обеспечение для обработки баз данных, в том числе используется при работе с данными поступающих с клиентских браузеров. MySQL (Structured Query Language – «Структурированный язык запросов») был создан Майклом Видениусом из шведской компании TcX в 1995 году.

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

  • Абдулгалимов Г.Л., Кугель Л.А. Обучение проектированию информационных систем и анализу данных. Профессиональное образование. Столица. 2013. № 4. С. 31-33.
  • Абдулгалимов Г.Л. Система подготовки преподавателей ИТ- дисциплин. Высшее образование в России. 2010. № 3. С. 156-158.
  • Люк Веллинг, Лора Томсон. Разработка web-приложений с помощью PHP и MySQL. Издательский дом “Вильямс”. 2010. -837. ISBN: 978-5-8459-1574-0.
  • Количество просмотров публикации: Please wait

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

    10-15 лет назад большинство Web-сайтов представляло собой набор статических HTML-страниц. Сегодня подобные сайты по-прежнему встречаются - нередко именно так выполнены небольшие персональные Web-сайты, а также сайты небольших компаний, не претендующие ни на что, кроме размещения относительно небольшого объема редко меняющейся информации. Отметим, однако, что в процессе превращения Интернета из набора информационных ресурсов в инструмент ведения бизнеса технологии создания сайтов существенно изменились - большинство Web-сайтов крупных компаний представляет собой набор приложений, обладающих интерактивностью, средствами персонализации, средствами взаимодействия с клиентами (вплоть до приема заказов и платежей) и партнерами, а нередко - и средствами интеграции с «внутренними» корпоративными приложениями компании. О средствах создания подобных Web-сайтов чуть более подробно будет рассказано в статье «Продукты для создания корпоративных Интернет-решений» в настоящем номере журнала. В данной статье мы лишь кратко осветим технологии, лежащие в основе современных Web-приложений. Пользователь, имеющий дело с Web-приложениями (а в последнее время - и с Web-сервисами), общается с ними посредством Интернет-клиентов (чаще всего браузеров, но не только их - существуют и другие типы клиентских приложений, например чат-клиенты). Поэтому уместно отдельно поговорить о том, что может применяться в клиентских приложениях, а что — на Web-серверах.

    Технологии, применяемые в Web-клиентах

    дним из направлений развития Web-приложений стало размещение некоторой части логики приложения (такой как проверка корректности вводимых данных) в самом Web-клиенте, например в Web-браузере. В частности, современные Web-браузеры способны интерпретировать код на скриптовых языках, выполнять Java-апплеты и элементы управления ActiveX, использовать другие дополнения, такие как Macromedia Flash Player. Рассмотрим все эти возможности браузеров подробнее.

    Скриптовые языки

    Большинство современных Web-браузеров способно интерпретировать код на скриптовых языках, таких как VBScript и JavaScript. Код на этих языках внедряется в Web-страницу и интерпретируется браузером. Типичный пример применения скриптовых языков - проверка корректности данных, вводимых пользователем в соответствующие поля HTML-формы, непосредственно в процессе ввода или после него, без обращения к Web-серверу. Подобные примеры применения скриптовых языков можно обнаружить при заполнении некоторых анкет и получении сообщений о том, что не заполнены обязательные поля (справедливости ради отметим, что далеко не все анкеты реализованы подобным образом).

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

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

    Java-апплеты

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

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

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

    Элементы управления ActiveX

    Некоторые из современных браузеров (в частности, Microsoft Internet Explorer) могут служить контейнерами для элементов управления ActiveX - специальных COM-серверов, выполняющихся в адресном пространстве браузера и также получаемых в составе Web-страницы.

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

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

    Приложения Macromedia Flash

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

    Модель безопасности приложений Flash основана на том, что Macromedia Flash Player, как и виртуальная Java-машина, выполняет приложения в ограниченном адресном пространстве, при этом выполняемые приложения не имеют доступа к файловой системе (кроме одного конкретного каталога, используемого Macromedia Flash Player для служебных целей) и другим ресурсам компьютера пользователя; исключение делается для микрофонов и видеокамер, однако пользователь должен дать разрешение на передачу данных, полученных с этих устройств. Доступ к сетевым ресурсам ограничивается доменом, с которого было получено приложение. Отметим, что приложения Flash также могут управляться с помощью кода JavaScript, присутствующего на той же странице. Сам Macromedia Flash Player для Microsoft Internet Explorer является элементом управления ActiveX и использует возможности элементов управления ActiveX для доступа к свойствам приложений Flash из скриптовых языков.

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

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

    Технологии создания серверных частей Web-приложений

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

    CGI

    Common Gateway Interface (CGI) - это стандартный интерфейс, позволяющий выполнять серверные приложения, вызываемые через URL. Входной информацией для таких приложений служит содержимое HTTP-заголовка либо тело запроса, в зависимости от применяемого протокола. CGI-приложения генерируют HTML-код, который возвращается браузеру. Отметим, что в свое время широко использовался и термин «CGI-скрипт», происхождение которого объясняется тем, что подобные приложения писались на скриптовых языках типа Perl, выполняющихся, тем не менее, не в браузере, а на сервере. CGI-приложения можно создавать с помощью практически любого средства разработки, генерирующего консольные приложения для операционной системы, под управлением которой функционирует Web-сервер.

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

    ISAPI и Apache DSO

    Проблему ограниченной производительности Web-приложений, которые выполняются в отдельном адресном пространстве, можно решить, создав приложение в виде библиотеки, загружающейся в адресное пространство Web-сервера и при необходимости остающейся там для обработки последующих запросов от других клиентов; естественно, в этом случае Web-сервер должен поддерживать загрузку таких библиотек. Подобные приложения для Microsoft Internet Information Servise носят название ISAPI (Internet Server Application Program Interface), а для весьма популярного Web-сервера Apache такие библиотеки называются Apache DSO (Dynamic Shared Objects). Отметим, однако, что при создании как CGI-, так и ISAPI-приложений было довольно сложно отделить задачи Web-дизайна от задач, связанных с реализацией функциональности и логики приложений, - подобные приложения генерируют Web-страницы целиком, поэтому все данные, связанные с дизайном этих страниц, должны в общем случае содержаться внутри исполняемого файла.

    ASP, JSP, PHP

    Очередной шаг в развитии технологий создания Интернет-приложений - появление средств, позволяющих отделить задачи Web-дизайна от задач, связанных с реализацией функциональности приложений. Первой из таких технологий стала Active Server Pages (ASP), построенная на основе ISAPI-фильтра. Основная идея ASP заключается в создании Web-страниц с внедренными в них фрагментами кода на скриптовых языках. Однако, в отличие от рассмотренных выше средств применения скриптовых языков для расширения функциональности браузеров, указанные фрагменты кода интерпретируются не браузером, а сервером (точнее, предназначенной для этого ISAPI-библиотекой), и результат выполнения этих фрагментов кода замещает сам фрагмент кода в той версии страницы, которая передается в пользовательский браузер. Вскоре после ASP появились и другие технологии, реализующие идею размещения внутри Web-страницы кода, выполняемого Web-сервером. Наиболее известной из них сегодня является технология JSP (Java Server Pages), основная идея которой - однократная компиляция Java-кода (сервлета) при первом обращении к нему, выполнение методов этого сервлета и помещение результатов выполнения этих методов в набор данных, отправляемых в браузер. Еще одной популярной технологией подобного типа является PHP (Personal Home Pages), которая использует CGI-приложения, интерпретирующие внедренный в HTML-страницу код на скриптовом языке.

    ASP .NET

    Новейшей версией технологии Active Server Pages является ASP .NET, ключевая в архитектуре Microsoft .NET Framework. Основное отличие этой технологии от ASP с точки зрения архитектуры приложений заключается в том, что код, присутствующий на Web-странице, не интерпретируется, а компилируется и кэшируется, что, естественно, способствует повышению производительности приложений.

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

    В общем случае клиентом Web-сервера может быть не только персональный компьютер, оснащенный обычными Web-клиентами (например, Web-браузером), но и мобильные устройства, отличающиеся ограниченным размером экрана, малым объемом памяти, а нередко и невозможностью отображения графики. Для этих устройств существуют свои протоколы передачи данных (Wireless Access Protocol, WAP) и соответствующие языки разметки (WML, Wireless MarkupLanguage, СHTML, Compact HTML и т.п.). При этом необходимо передавать данные на мобильное устройство в соответствующем формате, для чего нередко создаются специальные сайты (например, поддерживающие WAP и WML). Более удобным представляется создание приложений, которые способны генерировать тот или иной код в зависимости от типа клиента. Именно такой подход и реализован в Microsoft ASP .NET.

    Несколько слов о серверах приложений

    С ростом объема используемых данных и числа посетителей Web-сайтов возрастают требования к надежности, производительности и масштабируемости Web-приложений. Для удовлетворения этим требованиям бизнес-логика, реализованная в Web-приложении, а также сервисы обработки данных и реализации транзакций, отделяются от интерфейса приложений и переносятся на сервер приложений в виде бизнес-объектов. Серверы приложений и соответствующие бизнес-объекты могут быть различного типа (наиболее распространенными из них сегодня являются серверы, поддерживающие спецификацию Java2 Enterprise Edition, и серверы, базирующиеся на технологиях COM и Microsoft .NET). Впрочем, рассмотрение серверов приложений выходит за рамки данной статьи…

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

    Web-сервисы

    Говоря о серверных Web-технологиях, нельзя обойти вниманием такую важную, как Web-сервисы XML. На Web-сервисы XML в настоящее время нередко возлагается решение многих задач, связанных с интеграцией приложений, в том числе созданных на разных платформах. Создавать Web-сервисы можно и в виде исполняемых файлов, и в виде библиотек, и в виде интерпретируемого кода; существуют также средства представления бизнес-объектов в виде Web-сервисов. Методы Web-сервисов можно вызывать из обычных приложений, Web-приложений и других Web-сервисов, и, за редким исключением, конечные пользователи непосредственно с Web-сервисами дела не имеют. Тем не менее в последнее время отмечается массовое появление приложений, использующих Web-сервисы, в том числе и приложений, предназначенных для конечных пользователей.

    Заключение

    Данной статье мы обсудили наиболее популярные технологии, применяемые при создании Web-приложений, а именно: средства расширения функциональности браузеров, такие как скриптовые языки, элементы управления ActiveX, Java-апплеты и приложения Macromedia Flash, а также технологии создания серверных Web-приложений, такие как CGI, ISAPI, ASP, JSP, PHP, ASP .NET.

    В связи с этим вопрос – что ещё нужно знать?

    Бэкенд вам в любом случае нужен.
    Если я правильно понимаю, Angular, Vue и прочие фреймворки – это только фронтенд.

    Все верно.
    Куда не сунься, везде о веб-разработке говорится, как о разработке именно фронтенда, а также это непременно связано с Node.js (дабы что-то написать на ангуляре, без него никак). Каким боком связан фронтенд с Node.js - я не понимаю, т.к. Node.js - это, по сути, способ запустить JS вне браузера.

    Скорее всего вы читаете статьи о фронтенде, потому в них о бэкенде ничего и нет. Как вы знаете фронтенд пишется на JS и многих подкупает то, что можно поднять NodeJS на бэкенде и используя один язык создавать сайты.
    Если я хочу запустить приложение в браузере, то зачем мне node? Это всё меня вводит в ступор, я вижу лишь противоречия.

    Вы не путайте. Есть технологии, которые используются в процессе работы приложения и есть технологии, которые используются в процессе разработки приложения. Все эти Gulp, Grunt, Babel, Webpack и прочие - это инструменты разработки. Они ускоряют, упрощают, повышают качество работы. В то время jQuery, Angular, React - это библиотеки и фреймворки, с помощью которых приложение будет работать.

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

    Здесь я лишь могу предположить, что сервер вместо html должен обмениваться данными с приложением посредством json или чего-то ещё.

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

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

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

    Что ещё нужно изучить? Или перечисленных знаний достаточно?

    Не думаю, что достаточно. Вы точно определите задачи, которые должен решать ваш проект и под них подбирайте технологии. Вам нужно остановиться на чем-то одном, вы не сможете изучить все современное, не хватит времени.
    Можно ли не использовать Node.js и, соответственно, npm, если JS (TS) требуется только в браузере? При этом тестирование тоже необходимо.

    Да, вполне. На стороне клиента, к примеру, JS+Angular. А на стороне бэкенда, к примеру, PHP+Laravel. Сейчас очень много языков и еще больше фреймворков под них. Выбирайте то, что для вас проще.
    Похожие статьи