Категории: Все - база - сервер - программирование - дизайн

по Озонов Алексей 6 лет назад

351

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

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

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

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

CMS системы

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

Основные функции CMS

 Предоставление инструментов для создания содержимого, организация совместной работы над содержимым,

 Управление содержимым: хранение, контроль версий, соблюдение режима доступа, управление потоком документов и т. п., 

 Публикация содержимого,

 Представление информации в виде, удобном для навигации, поиска

Проектирование стороны сервера (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 и.т.д.) 

Развертывание веб-сайта(deployment)

Аспекты при выборе хостинга
Хостинг

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

Веб-сервер

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

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

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

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

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

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

MVVM (Model View View Model) - AngularJS, KnockoutJS;
MVC фреймворки:Zend framework, CodeIgniter, ASP.net; (Model View Controller)
• Адаптивный веб-дизайн и верстка. CSS фрэймворки: Twitter Bootstrap, Foundation и Skeleton.
• jQuery и ajax
• HTML5
• CMS (content management sytem)

Проектирование стороны клиента (frontend)

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

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

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

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

HTML+CSS+javascript.