Categorías: Todo - сервер - программирование - клиенты - архитектура

por WEB 1 hace 6 años

363

WEB-Тема1

Основы веб-разработки включают проектирование серверной стороны, использование различных языков программирования, таких как PHP, Perl, Ruby, Python, а также Java и C++. Архитектурные решения для создания веб-сайтов могут варьироваться от статических HTML-страниц до сайтов, построенных на CMS или фреймворках, таких как Zend Framework, Laravel, CodeIgniter и другие.

WEB-Тема1

Тема 1. Введение в веб-разработку

Проектирование Веб-сайта

CMS системы

CMS (Content management system - Система управления содержимым) - Информационная система используемая для обеспечения и организации совместного процесса создания, редактирования и управления содержимым. На данный момент существует множество готовых CMS систем, как платных так бесплатных, с открытым исходным кодом или закрытым, разработанных на различных языках программирования и в различных программных архитектурах. В сети Internet существует так же множество обзоров и ресурсов где можно найти подходящую систему. В типовой конфигурации наборы web-разработчика имеют поддержку только скриптовых языков программирования (php, perl и.т.д.), для того что бы установить/настроить CMS разработанную на другом языке программирования необходимы дополнительные компоненты или другая платформа. Для возможности работы с CMS системами локально, необходимо создать рабочее окружение на вашем персональном компьютере. Необходим веб-сервер, интерпретатор выбранного языка программирования либо виртуальная машина, база данных и возможно другие компоненты в зависимости от выбранной CMS. Рекомендуется инсталлировать готовое программное окружение состоящее из выше перечисленных компонент, таким пакетом программ может быть набор разработчика: DENWER, XAMPP, WAMPP и др.

Основные функции CMS
Веб-сервер

Веб-сервер — сервер, принимающий HTTP-запросы от клиентов, обычно веб-браузеров, и выдающий им HTTP-ответы, как правило, вместе с HTML-страницей, изображением, файлом, медиа-потоком или другими данными .

Принцип работы HTTP-сервера Apache

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

Принцип работы простого HTTP-сервера

Основная задача HTTP сервера - это ожидание запросов от клиентов и отправка им ответов. Взаимодействие с клиентами происходит по протоколу HTTP (HyperText Transfer Protocol). Клиент (обычно веб-браузер) запрашивает ресурс (обычно HTML файл или графический файл). Сервер связывает запрос с файлом или направляет запрос программе, которая генерирует необходимые данные. После этого сервер отсылает ответ обратно клиенту 

Развертывание веб-сайта(deployment)
Аспекты при выборе хостинга
Хостинг

Хостинг может быть следующих типов:

Технологии веб-разработки
MVVM фреймворки

(Model View View Model)

AngularJS, KnockoutJS.

MVC фреймворки

(Model View Controller)

Zend framework, CodeIgniter, ASP.net.

Адаптивный веб-дизайн и верстка. CSS фрэймворки

Twitter Bootstrap, Foundation и Skeleton.

jQuery и ajax
HTML5
CMS (content management sytem)
Проектирование стороны сервера (Backend)
Языки программирования

Компилируемые языки / компиляторы

Java

C++

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

PHP

Perl

Ruby

Python

Архитектурные решения

Проектирование серверной стороны можно разделить на следующие архитектурные решения:

• Web-сайт на основе статических HTML-страниц без использования DHTML (Dynamic HTML).

• Web-сайт c использованием языка программирования разработка с нуля.

• Web-сайт на основе Content Management System (CMS). 

• Web-сайт на основе framework’а. (Zend Framevork, Laravel,CodeIgniter, Rybu on Rails, Microsoft ASP.net и.т.д.) 

Проектирование стороны клиента (frontend)
Совместное использование вышеперечисленных решений.
Плагины для браузеров
Использование встраиваемых компонент в веб-браузер.

(ActiveX или технологий виртуальных машин Abode Flash, Java, Microsoft Silverlight).

Использование javascript-framework’ов

(jQuery, Dojo, KnockaoutJS, AngularJS и.т.д)

HTML+CSS+javascript.