Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Создание веб-сайта. Курс молодого бойца / Хабр

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

Условно процесс создания сайта (web-проекта) можно разделить на 3 этапа:

Данный этап можно разделить на несколько подэтапов:
  • Создание идеи
  • Разработка структуры проекта
  • Проработка макета проекта

Создание идеи


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

Разработка структуры проекта


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

Проработка макета проекта


После того, как мы определились со структурой проекта можно составить макет проекта (схематично).

Для отрисовки наброска можно использовать бумагу и ручку, Photoshop, любой другой редактор графики (раньше часто использовали Adobe Fireworks). Важно отметить, что данный этап – это не отрисовка готового дизайн-макета, а всего лишь схематичный набросок, выполненный для понимания того, как на сайте будут располагаться основные информационные блоки, графика и прочие элементы дизайна.

Основные элементы страницы


Зачастую основными элементами страницы являются: содержащий блок (wrapper, container), логотип, навигация, контент, футер (нижний колонтитул), свободное пространство (по сути свободное пространство — это не элемент дизайна, но понятие, помня о котором при составлении макета страницы, наш проект не будет выглядеть как нагромождение блоков).Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Содержащий блок (контейнер)

Роль контейнера на странице может выполнять непосредственно элемент body или же div. Ширина содержащего блока может быть резиновой (fluid), а может быть фиксированной (fixed).
Логотип

Текстовая или графическая составляющая проекта и выделяющая его среди других. Логотип чаще всего располагается в верхнем левом углу страницы или же посередине (в зависимости от идеи, макета).
Навигация

Основная навигационная панель содержит ссылки на основные разделы сайта. Навигационная панель часто располагается в верхней части страницы (в независимости от того вертикально или горизонтально располагаются элементы навигации).
Контент

Контент – это основная составляющая веб-страницы. Он занимает главенствующую роль в дизайне страницы, поэтому занимает большее пространство, подкреплён, помимо текста, графикой.
Нижний колонтитул (footer)

Данный элемент располагается внизу страницы и обычно содержит информацию о правообладателе, контактные и юридические данные, ссылки на основные разделы сайта (зачастую дублирует основную навигацию), ссылки на социальные сети, форму обратной связи и пр.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Резиновый и фиксированный макет


Фиксированный макет

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

«Резиновый» макет подразумевает, что страница сайта будет стараться занять всё доступное ей пространство на экране пользователя, подстраиваясь под разрешение.

В данном контексте стоит уяснить такие понятия, как отзывчивый веб-дизайн (Responsive Web Design aka. RWD) и адаптивный веб-дизайн (Adaptive Web Desing aka. AWD). Первое понятие укладывается в концепцию «резинового» и означает, что при изменении размера экрана ваш сайт подстраивается под него, второе понятие подразумевает, что при разработке вы определяете основные разрешения (размеры экрана), под которые будет подстраиваться (адаптироваться) ваш контент. В обоих случаях следует разрабатывать не один, а несколько макетов, которые будут соответствовать разным разрешениям экрана.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр Часто создаётся 3 макета под разрешения iPhone (Android Phone), iPad (Android Tablet) и Desktop.

На данном изображении показаны оба подхода. Сверху блок «отзывается» на любые изменения размера контейнера, снизу «адаптируется» под определённую ширину

Полезные ссылки по теме:


Почему при «резиновом» дизайне создаётся несколько макетов, а не используется один?


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

Модульная сетка


Перед составлением схемы проекта так же необходимо уяснить понятие модульной сетки. Модульная сетка подразумевает под собой разделение страницы на отдельные колонки по вертикали и выстраивание контента, при разработке дизайн макета, именно по этой сетке.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Наиболее популярной системой является модульная сетка 960 Grid System (http://960.gs), которая максимально делит страницу на 12, 16 и 24 колонки. Максимум в ширине сетка имеет 960 пикселей. Данное решение основано на том, что большинство современных мониторов, на момент создания сетки, имели разрешение не меньше 1024 на 768 пикселей. Создание макета на основе данной сетки, в дальнейшем, поможет ускорить процесс разработки (вёрстки).

Так же стоит отметить, что при разработке «резинового» макета страницы существует понятие максимальной ширины. Данное утверждение основывается на удобстве восприятия информации. Если предположить, что наш сайт не имеет максимального значения по ширине, то на больших мониторах информация будет сильно растягиваться и её неудобно будет читать. Чаще всего ограничиваются шириной в 1280 пикселей.

Модульная сетка 960GS отвечает концепции «фиксированного» дизайна, для «резинового» дизайна можно обратить внимание на адаптацию этой же сетки на сайте http://www.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр designinfluences.com/fluid960gs/ или воспользоваться сеткой, которую предлагает фрэймворк Bootstrap (http://getbootstrap.com/css/#grid).

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

Модульная сетка, по сути, – это некая визуальная абстракция, визуальное деление страницы на равные по ширине столбцы с равными отступами между ними. Визуализировать данную модель можно посредствам направляющих или отдельного слоя, на котором будут изображены эти столбцы. Именно такое решение вы найдёте в шаблонах сетки 960gs.

Полезные ссылки и материалы:


Макеты веб-страниц


Среди всего многообразия составления макета веб-страницы можно выделить четыре наиболее распространённых:
  • Навигация в левом столбце

  • Навигация в правом столбце

  • Навигация в трёх столбцах

  • Горизонтальная навигация.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр
    На данном этапе сайты с таким типом навигации составляют большинство. Удобство такого подхода легко объяснить тем, что в данном случае у нас остаётся больше пространства для контента, составляющего наш сайт.


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

Mobile First


С учётом тенденций последних лет данный подход плотно занимает свою нишу в разработке и дизайне сайтов. Тенденция такова, что практически около 60% пользователей интернета используют для доступа в сеть мобильные устройства, поэтому правилом хорошего тона становится разработка не только десктопной версии сайта, но и мобильной версии. При использовании данного подхода разработка макета сайта, дизайна и вёрстки начинается с мобильной версии, а затем уже прорабатываются макеты для других разрешений: добавляются блоки, баннеры, дополнительные элементы дизайна и пр.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Данный подход учитывает практически весь цикл разработки, поэтому мы ещё к нему вернёмся.

Усвоив всё вышесказанное можно переходить к следующему этапу – Дизайн.


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

Один из способов определения основного цвета в проекте – это составление mood board. Для этого необходимо выписать себе все синонимы, связанные с темой проекта, а затем каждый синоним набрать в поиске по картинкам Google или Yandex. На основе найденных изображений выписать себе цвета, которые чаще всего встречаются на них (каких цветов больше). Найденные цвета будут составлять визуальное восприятие нашего проекта и вызывать у пользователя соответствующие чувства.

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

  • Color Scheme Designer 3 (http://colorschemedesigner.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр com/csd-3.5/). Помимо выбора цветовой схемы данный сервис позволяет посмотреть пример того, как выбранные цвета будут смотреться на сайте

  • Adobe Color CC (https://color.adobe.com/ru/). Данный ресурс, в отличие от Color Scheme Designer 3, позволяет создавать палитры ещё и на основе загруженных изображений (которые, например, могли появиться у нас на этапе составления mood board). Так же данный сервис обладает большим архивом палитр других пользователей.

  • COLORlovers (http://www.colourlovers.com/). Обширное сообщество, где можно подобрать различные палитры.

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

При работе над дизайном главной и внутренних страниц стоит помнить о некоторых основных принципах.

Элементы Call to Action


Понятие призыва к действию относится к интерактивным элементам сайта: кнопки, баннеры и пр.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр Данные элементы оформляются таким образом, что пользователю должно хотеться непременно на них нажать. Например, это может быть кнопка с призывом к действию (Нажми, Купи, Сэкономь), яркий баннер с заманчивым предложением, яркой картинкой и пр.

Данное понятие хорошо вписывается в принцип AIDA (Attraction Interest Desire Action).

AIDA


Данное понятие применяется чаще при дизайне главных страниц, страниц акций и пр., где необходимо подтолкнуть пользователя к тому или иному действию: подписка, покупка и пр. Если перевести данный акроним на русский, то мы получим следующие понятия:
  • Привлечение внимания
  • Интерес
  • Желание
  • Действие

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

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

Схема просмотра страницы


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

Визуальные направляющие


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

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

Тот же эффект продемонстрирован на втором изображении с наложенной тепловой картой: в первом случае нас привлекает в основном прямой взгляд ребенка (прямо в глаза), во втором случае направление взгляда ребенка и его поза невольно обращают взгляд пользователя на блок справа.

Фрэймворки


Стоит так же отметить, что иногда, при разработке дизайна страницы, используют фрэймворки Bootstrap, Foundation, Material Design Lite, которые, помимо готовых элементов дизайна (кнопки, формы ввода и пр.), предлагают свою модульную сетку, CSS сниппеты (часть кода, разметки, которая может неоднократно использоваться) для вставки элементов в страницу (тех же кнопок, элементов форм и пр.) и классы разметки, а так же JS скрипты для соответствующих интерактивных элементов.

Использование данных библиотек может в значительной мере сэкономить время при разработке проекта (дизайне, вёрстке), правда в то же время может сделать ваш сайт похожим на другие, если использовать элементы дизайна фрэймворков как есть.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр На основе каждого фрэймворка можно найти огромное количество платных и бесплатных тем и страниц, а так же разработать свои.


Готовые элементы дизайна из Bootstrap, Foundation и Material Design Lite (MDL)

Трэнды


Нельзя не упомянуть о некоторых наметившихся трендах последнего времени в качестве компоновки и дизайна страниц.

Во-первых, стоит упомянуть о так называемых лэндинговых страницах, которые подразумевают под собой длинную страницу, разделённую на соответствующие секции и знакомящие пользователя с основным контентом сайта. Часто лэндинг является единственной страницей, на которой сразу удаётся показать всю необходимую информацию, не заставляя пользователя переходить по страницам. Лэндингам обычно сопутствует хороший дизайн, выверенная и продуманная подача информации, элементы call-to-action, интерактивность (счётчики, анимация и пр.).

Стоит так же сказать о внешнем виде страниц и вспомнить такие понятия как скевоморфизм и плоский дизайн.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Скевоморфизм


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

Плоский дизайн


Плоский дизайн использует минимум текстур и оформление, создание дизайна базируется на понятиях контраста, соотношения цветов и размеров.

Не маловажную роль на тренды в веб-дизайне оказало развитие мобильных операционных систем. Чаще всего двигателем прогресса становятся решения от компании Apple, которая в своих дизайн-решениях iOS сначала использовала имитацию реальных объектов, а затем всё упростила до плоского дизайна (Flat UI).Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр Сейчас в вебе главенствует Flat дизайн и Material дизайн, который активно развивает Google.

Неплохой сайт-сравнение двух концепций: http://www.flatvsrealism.com/

По основам веб-дизайна и прототипированию неплохим подспорьем может стать данная книга: Джейсон Берд: Веб-дизайн. Руководство разработчика.


Итак, процесс дизайна макета страницы плавно перетекает в процесс «оживления» сделанного на предыдущих этапах. Прежде чем сразу начинать писать HTML, CSS и JS стоит немного поговорить о редакторах кода и структуре проекта.

Редакторы кода


Из наиболее популярных редакторов кода на сегодня можно выделить три:

От части, все эти редакторы похожи по принципу работы, когда при установке мы получаем редактор, в который затем можем «доставить» необходимые модули и плагины, так сказать, «редакторы на стероидах». Разница лишь в технологиях, которые были использованы при написании редакторов, если Sublime Text написан при помощи C++ и Python, то 2 других используют JavaScript, HTML, CSS (Less).Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр За счёт этой разницы Sublime Text может работать чуть быстрее своих коллег.

Существуют так же более продвинутые IDE (студии) такие, как Web Storm, PHP Storm и пр., но для вёрстки проекта вполне подойдёт редактор кода, а не целая студия (IDE).

Чтобы определиться, что подходит лично вам для разработки, стоит самим покопаться в многообразии средств и выбрать то, что больше всего удовлетворяет вашим потребностям.

Обзоры текстовых редакторов:


Структура проекта


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

Лучше всего отдельные категории файлов помещать в свои папки: картинки в папку images или img, css в папку css, javascript в папку js.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр В корне будет лежать только index.html и страницы сайта, либо только index.html, а страницы в отдельной папке pages. Соблюдая эти правила вы никогда не запутаетесь в проекте.

Так же стоит сказать и об именовании файлов проекта. Чаще всего применяются следующие имена: главная страница – это index.html, стили проекта styles.css, скрипты scripts.js или app.js, минимизированные версии файлов имеют префикс .min, картинки носят не пространные названия на русском языке или набора цифр, а отражают то, что на них изображено, например, button.png, download-icon.png, logo.png и т.д.

Работа над проектом


Итак, определившись с редактором кода, структурой мы можем приступать к разработке. Прежде всего стоит отметить, что вёрстка страницы делается поэтапно: сначала пишется HTML-структура (HTML-код), затем добавляются стили, а после, если необходимо, пишутся скрипты (JS), добавляются необходимые плагины и библиотеки.

Учитывая вышесказанное, мы можем условно разделить работу над проектом на следующие этапы:


Написание HTML


Сейчас при написании HTML кода уже смело можно использовать тэги и элементы разметки, которые появились вместе с стандартом HTML5, если вам необходимо поддерживать старые браузеры, то можно использовать, например, плагин html5shiv (https://github.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр com/afarkas/html5shiv), который обеспечивает поддержку новых стандартов в старых браузерах или библиотеку Modernizr (https://modernizr.com/) (html5shiv входит в сборку Modernizr), которая определяет возможности браузера, с помощью которого просматривается сайт.

При вёрстке сайтов в настоящее время, априори, используется блочный подход, никаких таблиц, iframe’ов и пр. Таблицы выполняют только свою прямую роль – представление информации в виде таблицы. В вёрстке таблицы используются лишь при работе с электронными письмами.

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

При написании разметки мы так же сразу можем прописывать элементам классы и идентификаторы.

Правила именования классов

В проекте во всём должен быть порядок: от структуры проекта до имен классов, разметки и написания кода.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр Если при разметке важно следить за типом информации и размещением её в соответствующих блоках (заголовок, список, ссылка, строчный элемент, параграф и пр.), то при именовании классов и идентификаторов важно соблюдать здравый смысл. Классы должны давать абстрактное понятие о блоке, к которому они относятся, чтобы код было легче читать, а затем и писать стили. В принципе здесь не должно быть ничего сложного, если мы размечаем меню, то логично содержащему блоку дать класс .nav или .navigation, если это блок с текстом, то можно дать ему класс .block-text и т.д.
БЭМ

На сегодняшний день есть один популярный подход, который касается принципов построения проекта в целом, но на данном этапе нас интересует именно именование классов. Подход называется БЭМ и расшифровывается, как Блок Элемент Модификатор.

Вкратце можно описать данный подход, как некое соглашение по именованию классов и представлению разметки страницы. Каждый элемент страницы являет собой сущность, которая может существовать независимо от контекста, тогда мы говорим о Блоке (.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр block) или же только в контексте другой сущности, тогда мы говорим об Элементе (.block__element). Каждый Блок или Элемент могут иметь различные модели представления: цвет, форму, прозрачность и пр. За подобные свойства будет отвечать Модификатор (.block__element_mod).

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

Более полная информация о методологии: https://ru.bem.info/

SMACSS

Так же существует подход SMACSS (расшифровывается данный акроним как Scalable and Modular Architecture for CSS – Масштабируемая и Модульная Архитерктура для CSS), который разделяет понятие о классах и разметке на несколько уровней: базовый, макет, модуль, состояние, тема.
  • К базовому уровню будет относиться всё, что касается непосредственно тэгов html.
  • К уровню макета мы будем относить всё, что касается основных составляющих страницы: секции.
  • К уровню модуль мы будем относить всё, что касается переиспользуемых элементов страницы: баннеры, навигация, списки, блоки информации и пр.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр
  • Уровень Состояние описывает как будут выглядеть модули и секции в том или ином состоянии: отображаются или не отображаются, сжатые или раскрытые, активны или неактивны и пр.
  • Уровень темы чем-то схож с уровнем Состояния и отражает как модули или секции могут выглядеть.

В данном подходе используются следующие соглашения по именованию. Уровни определяются при помощи префиксов и соответствующего буквенного обозначения:
  • Макет: .l- или .layout-
  • Так как модули составляют основную часть проекта именовать их, используя префикс module- избыточно. Поэтому для них используются имена как есть, например: .example {}, .afisha {} и пр.
  • Состояния имеют префикс .is-, например .is-hidden {}
  • Уровень Темы именуется подобно модулям.

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

Информация о методологии и онлайн книга: https://smacss.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр com/
Русскоязычный перевод книги по SMACSS: https://github.com/andrew—r/smacss

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

Небольшой курс по основам HTML: Смотреть

Написание CSS


Правила именования классов подводят нас к следующему этапу. Когда написана html структура проекта, определены классы можно переходить к написанию CSS стилей и нарезке макета.

Стоит упомянуть о 2-х CSS файлах-дополнениях: normalize.css и reset.css.

Reset.css


Изначально в проектах повсеместно использовался reset.css, написанный Эриком Мейером. Цель данного свода правил – сбросить стили браузера, которые он по умолчанию использует для отображения элементов разметки. Таким образом при использовании reset.css нам не нужно переписывать стили браузера, по сути мы работаем с «чистым листом» и можем сосредоточиться на написании собственных стилей с нуля.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Normalize.css


Normalize.css наоборот, не сбрасывает все стили «в ноль», а нормализует их, приводит отображение стилей проекта к более-менее однообразию во всех современных браузерах.

У обоих сводов правил есть свои плюсы и минусы, на данный момент популярен normalize.css. Популярность данного свода правил обусловлена ещё и тем, что вам не приходится при разработке заново прописывать основные свойства для базовых элементов страниц, а лишь модифицировать их по необходимости.

Так же стоит упомянуть о, так называемом, «быстром сбросе», когда мы абсолютно для всех элементов страницы с помощью селектора * прописываем свойства {margin: 0; padding: 0}. Таким образом мы сбрасываем все внутренние и внешние отступы для всех элементов страницы. Но данную технику не рекомендуется использовать, так как она замедляет процесс отрисовки страницы, да и по сути имеет мало смыла (на мой взгляд).

Так же стоит отметить, что все размеры и отступы берутся непосредственно из дизайн-макета.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр Для получения данных значений нам необходимо использовать инструмент «линейка» и направляющие (речь про инcтрументарий Adobe Photoshop), а затем переносить полученные значения в код. Если мы работаем с фиксированным макетом, то значения переносятся в пикселях как есть, если же у нас «резиновый», то значения нужно переводить в проценты. Основная формула – это ширина элемента, делённая на ширину контекста (ширина содержащего блока). Например, если блок, содержащий текст и картинку имеет на макете ширину 400px, а блок с текстом в нём должен иметь ширину 340px, то в процентном выражении это будет (340 / 400) * 100%, то есть 85% будет занимать блок с текстом.

Не стоит перегружать ваши стили чрезмерной специфичностью, например, если мы хотим, чтобы ссылка внутри списка имела красный цвет, то не обязательно записывать всю линейку классов и тэгов: .main –nav ul li a, достаточно просто указать .main-nav a. Слишком «специфичные» правила делают правила контекстно зависимым и заставляют вас писать лишний код, а так же влияют на скорость отрисовки страницы, так как при разборе правил CSS парсер читает их справа налево и ему сначала, если брать описанный выше пример, нужно взять все ссылки (a), затем отбросить все ссылки, которые не лежат в li и т.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр д. пока он не доберётся до содержащего класса.

Специфичность кода, так же означает чрезмерную привязку к базовым тэгам. Например, если мы хотим, чтобы элемент внутри .block был синим и при разметке использовали элемент span (в правилах мы написали .block span {background-color: blue}), то при замене его на div, например, нам нужно будет написать новое правило уже для div внутри .block. Таким образом наш код будет обрастать ненужными правилами, которые по сути дублируют друг друга. Гораздо проще определить всего лишь один класс (класс элемента), который при присвоении внутренним элементам будет приводить нас к желаемому результату.

Ещё один пример контекстной зависимости кода – это использование имен тэгов вместе с именами классов, например, div.block {display: block}. Если мы захотим тот же класс применить к span, то нам придётся написать опять span.block {display: block} или span.block, div.block {display: block}, что в любом случае приведёт к увеличению кода на лишнюю строчку.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

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

Если, вы используете правила, относящиеся к спецификации CSS3, то не поленитесь проверить необходимость использования браузерных префиксов на сайте http://caniuse.com.

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

Полезные ссылки и материалы:


Написание JS


Итак, заключительным этапом является написание JS скриптов.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр При создании веб страниц стало, практически, стандартом использование библиотеки jQuery, которая позволяет с лёгкостью манипулировать элементами web-страницы (DOM узлами), навешивать прослушку событий, отправлять запросы на сервер, обрабатывать результат выполнения и пр. Но не стоит слепо доверять трендам, на сегодняшний день нативный JavaScript достиг такого уровня, что вам возможно уже не нужен jQuery. Поэтому, прежде чем слепо прикреплять jQuery, стоит задуматься, так ли он нужен для ваших задач и не достаточно ли встроенных возможностей языка JavaScript.

Есть неплохой ресурс, который приводит альтернативы одних и тех же манипуляций на языке JavaScript и с помощью библиотеки jQuery: http://youmightnotneedjquery.com/, так же неплохим подспорьем является сайт https://developer.mozilla.org/ru/, на котором, помимо описания методов и свойств JavaScript, можно найти полифиллы для тех или иных методов (библиотека или часть кода, которая добавляет в старые браузеры поддержку возможностей современных функций и методов JavaScript).Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Важно отметить, что не рекомендуется использовать JavaScript для стилизации, то есть не стоит для того или иного объекта DOM (элемента страницы) добавлять портянку CSS свойств с помощью JavaScript, чтобы выделить его состояние и пр. Рекомендуется использовать классы, то есть заранее в CSS определить классы-состояния (активный, не активный, скрытый, использованный и пр.) и при манипуляции элементами просто добавлять или убирать соответствующие классы.

Например, у нас есть элемент списка с классом .list__item, для того, чтобы показать активный элемент в данный момент (выбран пользователем) или нет, можно просто добавить класс (.list__item—active), а не прописывать все стили, присущие этому классу в JS:

document.querySelector(‘.list__item’).style.color = ‘red’;
и т.д.
Небольшой пример с возможными способами присваивания класса (присвоение модификатора происходит при нажатии на зелёный квадрат): http://jsbin.com/.

Не рекомендуется решать задачи, которые явно относятся к уровню CSS с помощью JavaScript, пытаясь как-то выровнять объект или добавить ему стили при наведении и пр.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Опять-таки, возвращаясь к теме Mobile First, нельзя не упомянуть о 2-х концепциях, которые коррелируют с данной техникой. Progressive Enhacement и Graceful Degradation, что переводится как прогрессивное улучшение и последовательное ухудшение. Данные принципы описывают 2 разных подхода к разработке: в первом случае мы разрабатываем наш сайт, пишем скрипты с учётом старых браузеров и систем или же определяем поведение при невозможности запуска скриптов, а затем постепенно улучшаем скрипт, вводя современные функции и методы, таким образом мы получаем сайт, который будет одинаково хорошо работать в старых и новых браузерах и средах (то же касается и css).

При Graceful Degradation подход противоположный – мы разрабатываем для современных браузеров и, лишь, потом начинаем вносить доработки и изменения с учётом старых версий.

Подход Mobile First чем-то схож с Progressive Enhacement.

Проверка кода


После написания html, css и js для нашей страницы необходимо проверить всё ли сделано верно.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр Для этого можно использовать online средства:
Благодаря данным сервисам можно проверить не забыли ли вы где-то закрыть тэг, верно ли используете параметры и атрибуты, всё ли в порядке с вашими стилями и правилами в них, а так же проверить ваш код на правильность написания функций, методов и пр.

Статьи с рекомендациями по написанию JS, HTML и CSS:


Средства автоматизации


На сегодняшний день практически все рутинные процессы разработки (за исключением дизайна) можно в той или иной степени автоматизировать.

960GS


Мы уже говорили об этом средстве разработки в разделе про модульные сетки и дизайн. Нужно сказать, что 960GS предлагает не только макеты для создания дизайна, но и свою систему именования классов. Используя предлагаемые классы при вёрстке и при подключении css файла системы в проект, блоки сайта будут выстроены по этой сетке, что сэкономит время на написании практически того же самого самостоятельно.
<div>
  <div>
      <div>
          .Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр ..
      </div>
      <div>
          ...
      </div>
      <div>
          ...
      </div>
  </div>
  <div>
      ...
  </div>
</div>

Emmet


Emmet – это средство работы с html и css (http://emmet.io/). Плагин для работы с данным средством можно установить, например, в Sublime Text, тогда у вас появляется возможность не писать громоздкие куски кода на html и css, а записывать их в строчку, раскрывая затем в полноценную разметку. Например, строка .block>ul.list>li.list__item*3, может быть раскрыта в полноценный код:
<div>
  <ul>
    <li></li>
    <li></li>
    <li></li>
  </ul>
</div>

Затем вам просто необходимо вписать текстовые значения в элементы списка. То же касается и css: строка w:100px+h:150px+bgc:#ff0 раскрывается в:
width: 100px;
height: 150px;
background-color: #ff0;

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

Jade


Далее стоит упомянуть и о таком языке работе с шаблонами, как jade (http://jade-lang.com/). Опять-таки, с помощью jade писать html становится быстрее и удобнее, а так же появляется возможность создания переиспользуемых блоков кода и миксинов, передавая которым на вход те или иные параметры мы будет получать нужную нам разметку. Благодаря jade в проекте, касательно разметки и написания страниц, может поддерживаться модульность, а часто используемые названия и блоки кода могут выноситься в качестве переменных (названия, имена страниц и пр.) или миксинов в отдельные файлы настроек и файлы, соответственно. Для работы с jade, а точнее для преобразования написанного кода из jade в html, необходимо использовать командную строку, а так же установить на ваш компьютер платформу nodejs (https://nodejs.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр org/en/, http://nodejs.ru/).

Командная строка


Работа в командной строке так же может ускорить некоторые этапы работы над проектом, например, создание папок и файлов. Запустив консоль в директории проекта и набрав в ней всего лишь одну строку:
mkdir project && cd project && mkdir css && touch css/styles.css && mkdir images && mkdir js && touch js/app.js && touch index.html

После нажатия enter мы получим папку project в которой будут находиться папки css, images, js, в папках css и js файлы styles.css и app.js, соответственно, а в корне project лежать файл index.html. Таким образом мы сэкономили время на создание папки, написание её названия, создание файлов и пр. Так же командная строка используется для работы с остальными средствами автоматизации.

Sass


Далее стоит поговорить о таком языке как Sass (http://sass-lang.com/). Данный язык упрощает работу с css. Благодаря Sass можно записывать вложенные классы, проводить математические вычисления прямо в коде, выносить переиспользуемые величины в качестве переменных в отдельные файлы или в начало файла, что в значительной степени упрощает дальнейшую работу со стилями и упрощает изменение тех или иных величин, так как они все будут храниться в одном месте и не нужно будет «ходить» по всему проекту и вносить соответствующие правки.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр Так же, благодаря Sass в проекте можно придерживаться принципа модульности, храня части разметки в соответствующих файлах и подключать их все в основной, затем с помощью консольной команды можно собрать весь код в один css файл, так же поддерживается сборка результирующего файла на лету по мере написания стилей. Опять-таки для работы с Sass потребуется командная строка. Процесс установки пакета можно изучить здесь: http://sass-lang.com/install.

HTML5Boilerplate


HTML5Boilerplate (https://html5boilerplate.com/) представляет собой заранее скомпонованный проект, в котором уже есть index.html, normalize.css и пр. В index.html, например, уже заранее прописаны основные куски кода, которые необходимы при написании html страницы. Проект позволяет скачать архив со всеми файлами как есть или же использовать кастомную сборку: http://www.initializr.com/. Опять-таки, принцип прост: зачем тратить время на написание одних и тех же строк или на проделывание одних и тех же манипуляций, если мы сразу можем сосредоточиться непосредственно на работе с проектом.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Gulp и Grunt


Gulp (http://gulpjs.com/) и Grunt (http://gruntjs.com/) представляют собой сервисы запуска задач, которые описываются в основных файлах данных сервисов, выполняются с помощью совместимых модулей и запускаются на выполнение с помощью консоли.

Данные сервисы помогают использовать в разработке, например, вышеописанные средства Jade и Sass, автоматически преобразовывать их в соответствующие файлы html и css, сжимать их, если необходимо, а так же проверять, например css свойства, на необходимость использования браузерных префиксов и подставлять их в автоматическом режиме.

Оба сервиса используют различный подход в описании выполнения задач, но суть их работы одинакова. Полезным будет данное сравнение: http://frontender.info/gulp-grunt-whatever/

Так же многие сервисы вроде autoprefixer (автоматическая простановка браузерных префиксов), jshint (проверка JS кода на валидность) могут быть установлены как сторонние плагины в текстовом редакторе (Sumblime Text, Atom, Brackets) и инициализированы при нажатии определённого сочетания клавиш.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Bootrstrap, Foundation, Material Design Lite


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

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

Со всеми возможностями и примерами можно ознакомиться на соответствующих сайтах:


Данное описание не является исчерпывающим и представляет собой лишь поверхностный взгляд на некоторые технологии. Но прежде чем пускаться во все тяжкие, используя средства автоматизации, библиотеки, framework’и, готовый код и прочее, стоит, всё-таки, изучить основы работы с html, css и js.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Надеюсь, что все описанные вещи будут полезны вам в изучении темы веб-дизайна и фронтенд разработки.

С чего начать работу над проектом: 6 обязательных действий

С чего начать, когда приступаете к работе над проектом, как не запутаться в массе данных, учесть интересы всех заинтересованных лиц? Виктор Степанов, руководитель проектного офиса холдинга «Изовак», тренер компании BusinessTools, эксперт в сфере управления проектами рассказал о необходимых действиях на старте проекта. Они помогут эффективно подготовиться к работе и достичь результатов.

Фото с сайта termalfudro.net

1. Определяем владельца проекта

В самом начале следует ответить на вопрос: кому и зачем нужен этот проект? В случае с внешним заказчиком все просто – там есть конкретный клиент. Во внутренних же проектах главное заинтересованное лицо – это владелец проекта.

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

Определить владельца проекта можно по двум признакам: проект решает какую-то проблему этого человека, и сам он способен решить судьбу проекта (дать ему «зеленый свет» или остановить). До тех пор, пока вы не поймете, для кого делаете проект, можно даже не начинать работу: без увлеченного владельца проект обречен. Рано или поздно интерес к нему угаснет.

2. Определяем всех заинтересованных лиц

В каждом проекте кроме владельца есть такие обязательные роли, как:

  • инициатор,
  • руководитель проекта,
  • конечные пользователи.

Бывают также члены команды проекта, их руководители (проекты редко ограничиваются одним подразделением компании), руководитель программы (если проект является частью стратегической программы), поставщики и подрядчики, внешние контролеры, – словом, все, чьи интересы затрагивает проект. В проектной методологии заинтересованных лиц называют «стейкхолдерами».Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр Причем, их интересы не только различаются, но часто противоречивы.

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

3. Определяем цели проекта

80store.ru

Любой проект ориентирован, прежде всего, на цели его владельца. Если проект не соответствует интересам, скажем, поставщика или специалиста – в проекте просто будет другой поставщик или специалист, и это не трагедия. Но если владелец проекта не получает то, что ему нужно – проекта не будет.

Проект-менеджеру важно детально обсудить с владельцем проекта, зачем ему все это нужно, какие проблемы должны быть решены или какие должны быть использованы возможности. Например, компания разрабатывает новый продукт. Зачем это делается? Чтобы продавать больше имеющимся клиентам? Или чтобы привлечь новых клиентов, диверсифицировать риски и потеснить конкурентов? Ответы на эти вопросы и становятся целями.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

4. Определяем результаты проекта

Цели и результаты проекта – отчасти синонимичны, ведь и то, и другое для нас желанно. Но если цели – это «зачем» проекта, его движущая сила, то результаты – это нечто конкретное: вещи, документы, программное обеспечение, которые берется получить команда к концу проекта.

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

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

Результаты проекта – это четкое обязательство команды проекта, в то время как цели проекта – его путеводная звезда.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр Вы можете пойти не тем путем, выбрав ошибочный способ реализации проекта; но вы всегда можете «перезагрузить» проект, согласовав с его владельцем новые результаты проекта, притом, что цели его останутся неизменными.

5. Беремся за планирование проекта

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

Я рекомендую такой прием: соберите команду на так называемый «семинар по планированию». Выберитесь из стен компании в отдельное помещение (если бюджет проекта не позволяет, можно собраться у кого-то дома или на даче) и посвятите целый день проработке проекта. Закажите пиццу, возьмите большие листы, фломастеры и стикеры – это позволит не отвлекаясь работать с большим объемом разрозненной информации и не упустить важные детали.

Уточните формулировки целей и набор результатов, «поштурмуйте» разные подходы к реализации проекта, вместе оцените сроки и прикиньте бюджет.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр День пролетит быстро, не факт, что вы получите идеальный план, но можете быть уверены: это будет основа, на которую команда «подпишется» вместе с вами.

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

6. Составляем устав проекта

Зафиксировать все это (цели, результаты, критерии успеха, ответственность каждого) можно в уставе проекта. Готовый устав проекта должен утвердить его владелец.

Нужен ли этот документ для любого проекта? Здесь я могу провести аналогию между началом проекта и открытием бизнеса. Сегодня можно зарегистрировать фирму за один день, и никто в исполкоме даже не будет читать ваш устав: за содержание этого документа полностью ответственны учредители.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр Но чем хуже проработан устав регистрируемой компании, тем сложнее будут разбирательства на более поздних стадиях развития бизнеса (причем, как в случае проблем, так и в случае успеха бизнеса).

Отсюда и совет: не закладывайте мину под свой проект, договаривайтесь на берегу. Я считаю, 80% своей пользы устав приносит на старте, т.к. помогает всем участникам проекта понять друг друга, устранить разночтения, зафиксировать обязательства.

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

Виктор Степанов

Консультант по управлению и инвестициям, руководитель проектов. Автор и ведущий ряда семинаров по управлению проектами, в том числе курса «Менеджер профессионал advanced».
 

Опыт ведения корпоративных программ обучения проектному подходу и инструментам проектного управления: «Геймстрим» (Wargaming), «Велком», «Милавица», «Санта Бремор» и др.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Как создать образовательный проект

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

Инструкция

1.Ознакомьтесь с содержанием требований к образовательным проектам.

Основные требования кобразовательному проекту:

  • Наличие социально значимой задачи – исследовательской, информационной, практической.
  • Планирование действий по разрешению проблемы: определение вида продукта и формы презентации.
  • Пооперационная разработка проекта: перечень конкретных действий с указанием выходов, сроков и ответственных.
  • Исследовательская  работа учащихся: поиск информации, которая будет обработана, осмыслена и представлена участникам проектной группы.
  • Выход проекта: продукт.
  • Представление продукта  заказчику и (или) представителям общественности.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр
  • Проект– это «пять П»:Проблема – Проектирование (планирование) – Поиск информации – Продукт – Презентация.
  • Шестое “П” проекта – его Портфолио, т.е. папка, в которой собраны все рабочие материалы проекта, в том числе черновики, дневные планы и отчеты и др.
  • Важное правило: каждый этап работы надпроектом должен иметь свой конкретный продукт!

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

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

4.Подготовьте подробный отчет о деятельности вашей образовательной организации.

В нем должны быть указаны:

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

5.Создайте план реализации вашего проекта.

Он должен включать:

  • цели,
  • задачи
  •  показатели того, как изменится система образования в лучшую сторону

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

6.Заполните специальные документы для получения финансирования. Сделайте это согласно всем требованиям. Некоммерческие организации будут благосклонны в том случае, если вы будете использовать глаголы в активном залоге, представлять реальные факты и отвечать на ключевые вопросы.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр Им важно знать, почему именно вам должны дать средства для проекта, и какие выгоды получит организация. Если вы покажете много преимуществ, вам выделят средства для реализации образовательного проекта. Тогда вы уже сможете реализовать его согласно заготовленному плану.

Виды проектов:

a.Исследовательский проект  по структуре напоминает научное исследование.

Он включает :обоснование актуальности избранной темы

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

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

b.Информационный проект направлен на сбор информации о каком-то объекте, явлении с целью ее анализа, обобщения и представления для широкой аудитории.

Продуктом такого проекта часто является публикация в СМИ, в том числе, в Интернете.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Характер контактов между участниками проекта:

  • внутриклассные;
  • внутришкольные;
  • региональные;
  • межрегиональные;
  • международные.

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

Классификация проектов по продолжительности:

a.Мини– проекты могут укладываться в один урок или менее.

b.Краткосрочные проекты реализуются в  течение  4 – 6 уроков.

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

с.Недельные проектывыполняются в группах в ходе проектной недели.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Их выполнение занимает примерно 30 – 40 часов и целиком проходит при участии руководителя.

d.Годичные проекты (долгосрочные) могут выполняться как в группах, так и индивидуально. Весь годичный проект – от определения проблемы и темы до презентации выполняются во внеурочное время.

 

Как написать план проекта за 8 простых шагов

День пятницы. Вы поговорили со своей командой, ваши проекты достигли цели, и вы готовы к следующей неделе. Ваши выходные выглядят яркими.

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

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

Как написать план проекта за 8 простых шагов …

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

Первый шаг в любом проекте — определить «что» и «почему».Ключевые заинтересованные стороны имеют влияние и полномочия для определения успешности проекта, и их цели должны быть выполнены. Даже если проект исходит от самого генерального директора, вам все равно нужна его поддержка.

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

Вопросы, которые следует рассмотреть вместе с заинтересованными сторонами:

  • Как написать план проекта, соответствующий целям компании?
  • Чего ожидают заинтересованные стороны? Чего от них ожидать?
  • Как измерить успех?
  • Какие у вас ресурсы?
  • Какие активы или результаты ожидаются от этого проекта?

Шаг 2: Составьте список целей, приведите в соответствие OKR и наметьте проект

По словам руководителей, отсутствие четких целей является причиной неудач проекта в 37%.Без четких целей вы обнаружите, что требования, задачи и сроки, которые вы устанавливаете для рабочего плана проекта, не имеют ничего общего с ними. Но теперь, когда у вас есть список потребностей ключевых заинтересованных сторон и их заинтересованность, начните соотносить их с целями и OKR.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр OKR — это метод планирования и постановки целей, ставший знаменитым для Intel и Google. Ваш проект должен соответствовать OKR вашей команды и компании.

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

Шаг 3. Создайте документ о содержании проекта

Теперь, когда у вас есть набросок проекта, ваши задачи согласованы с целями и поддержка команды, пора создать документ о содержании проекта, в котором подробно описаны элементы проекта, перечисленные на шаге 2.

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

Хотя подготовка документации по содержанию проекта и расчет освоенной стоимости должны быть стандартной практикой, каждый четвертый руководитель проекта, опрошенный в рамках исследования Wellingstone State of Project Management Survey, сказал, что они «никогда» или «иногда» готовят стандартные документы по определению объема работ.Его создание поможет вам выделиться из толпы и поможет всем оставаться на одной волне.

Шаг 4. Составьте подробный график проекта

С вашими целями, задачами и этапами, уже обозначенными для вас, пора начать включать ваш проект в расписание. Диаграмма Ганта — это удобный инструмент, который помогает легко визуализировать временную шкалу проекта. Это интерактивная временная шкала, которая дает вам полное представление о ходе проекта, объеме работ и зависимостях.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Зависимости — это задачи, которые необходимо выполнить, прежде чем можно будет начать другие задачи.При планировании задач используйте подзадачи, чтобы разбить более крупные на более мелкие. Это может упростить создание отчетов (вы можете ознакомиться с нашим руководством по написанию отчета об управлении проектом!) И управление ресурсами. Определим каждую:

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

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

Шаг 5: Определите роли, обязанности и ресурсы

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

Диаграмма RACI помогает вам конкретно определить, кто и что будет делать для вашего проекта. Это матрица всех задач проекта, связанных с ответственными (назначенными для выполнения работы), подотчетными (имеет право да / нет / вето), с которыми проводились консультации (необходимо одобрить или вносить вклад) и информированными (необходимо знать о действии) или решение). Здесь вы найдете все, что вам нужно знать о диаграммах RACI.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Когда вы начнете назначать задачи, убедитесь, что учитываете пропускную способность. Уточните обязанности и ожидания каждого человека.Имейте в виду, что 95% сотрудников сообщают, что работают более чем в одной команде или над несколькими проектами одновременно, и если проекты не согласованы, рабочие нагрузки становятся слишком стрессовыми для команд. Согласно нашему недавнему докладу «Эпидемия стресса», стресс заставляет около 50% работников искать другую работу, а 25% вообще бросают текущую работу.

При планировании проекта подумайте о том, как вы будете фильтровать входящие запросы, которые влияют на график или бюджет проекта. Знание того, как рассчитать освоенную стоимость, чтобы отслеживать уровень выполненной работы над проектом по сравнению с планом, является обязательным.Для руководителей проектов такие инструменты, как Wrike Resource, могут помочь визуализировать задачи вашего проекта с точки зрения рабочего процесса команды, обеспечивая наглядность и гибкость для балансировки рабочих нагрузок.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Шаг 6: Определите процесс связи и регистрации

По данным McKinsey, сотрудники тратят около 20% рабочей недели на поиск и сбор информации. Кроме того, неэффективное общение и сотрудничество — две основные причины стресса на рабочем месте.Когда заинтересованным сторонам приходится копаться на страницах электронных писем или постоянно спрашивать обновления, они разочаровываются и мотивация падает.

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

Шаг 7: Планируйте, что все идет не так, как планировалось

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

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

Шаг 8: Устройте вечеринку по случаю запуска!

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

  • Определите цели проекта и ценность, которую они приносят.
  • Перечислите активы, которые, как ожидается, принесет проект.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр
  • Проведите связь между требованиями заинтересованных сторон и задачами проекта.
  • Покажите временную шкалу (диаграмму Ганта) проекта, чтобы каждый мог видеть зависимости и знать ожидаемые даты.
  • Опишите роли и обязанности каждой заинтересованной стороны.
  • Просмотрите, как и где все будут общаться на протяжении всего проекта, где они могут получить информацию — например, ваш документ о содержании — и к кому обращаться с вопросами.
  • Обсудите риски и убедитесь, что команда подготовлена.
  • Получите это окончательное обязательство!

Бонусный совет: Вам не нужно каждый раз начинать с нуля! Теперь, когда вы знаете, как написать план проекта, который будет использоваться вашей командой, вы можете скопировать план проекта в шаблон, чтобы использовать его снова и снова.По мере вашего роста вы можете создавать несколько шаблонов для определенных типов планов работы по проекту. Давайте сразу приступим к работе с этими бесплатными образцами шаблонов планов проектов.Как создавать проект: Создание веб-сайта. Курс молодого бойца / Хабр

Как добраться до «конца»

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

Теперь, когда вы научились составлять план проекта, вот основные советы по управлению проектами, которые помогут вашей команде работать более эффективно.

Как создать план управления проектом

План управления проектом (PMP — не путать с сертификацией Project Management Professional) определяет не только, когда проект будет реализован, но и то, как он будет реализован. Если документ содержит только то, что и когда будет сделано, это не настоящий План управления проектом.

Это может сбивать с толку, поскольку существует ряд веб-сайтов о том, как создать план управления проектом или план проекта, которые не включают ключевые компоненты. Полный план управления проектом должен включать в себя то, как проект выполняется, отслеживается и контролируется. Согласно Project Management Institute, он должен ответить на все вопросы, перечисленные ниже:

  1. Что делать?
  2. Когда это произойдет?
  3. Сколько это будет стоить?
  4. Кто это будет делать?
  5. Какие товары или услуги будут предоставлены в результате этих усилий?
  6. В чем ответственность и разработчика, и пользователя?
  7. Кто отвечает за приемку изделия в завершенном виде?
  8. От чего зависит выполнение задачи?
  9. Какая механика будет формально работать с механикой?
  10. Как будет измеряться фактический прогресс?

Как написать план управления проектом

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

  • Базовый план содержания проекта и план управления содержанием
  • Базовый план графика проекта и план управления расписанием
  • Базовый план стоимости проекта и план управления стоимостью
  • План управления человеческими ресурсами
  • Связь План управления
  • План управления рисками

В зависимости от проекта могут также быть дополнительные дополнительные планы, такие как:

  • План управления проблемами
  • План управления качеством
  • План управления закупками
  • План управления требованиями
  • Управление конфигурацией план
  • План управления процессами
  • План управления изменениями
  • План управления заинтересованными сторонами
  • План обучения
  • Приложения к плану также могут включать:
  • Утвержденное бизнес-обоснование для плана
  • Утвержденный Устав проекта
  • 90 019 Ключевые термины и сокращения
  • Любая дополнительная соответствующая информация, например:
  • Отчет о работе
  • Документация по требованиям клиентов
  • RACI (матрица ответственности)
  • План управления заинтересованными сторонами

Как разработать план управления проектом

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

Шаг 1. Встреча с заинтересованными сторонами проекта

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

Шаг 2: Определите ключевые роли в проекте

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

Шаг 3: Проведите стартовую встречу
  • Стартовая встреча объединяет заинтересованные стороны для обсуждения проекта и начала планирования. Некоторые темы, которые обычно обсуждаются на стартовом совещании: Экономическое обоснование проекта
  • Ожидаемые результаты и преимущества проекта
  • Роли и обязанности заинтересованных сторон
  • Информация о коммуникации и отчетности (частота встреч по проекту и т. Д.)
  • График и процесс выполнения плана проекта
Шаг 4: Разработка базовых планов проекта

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

Шаг 5: Создание планов управления базовыми планами

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

Шаг 6. Создайте другие планы управления

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

Дополнительная литература

Как создать план коммуникаций для управления проектом

Загрузите наш бесплатный шаблон плана коммуникации и мгновенно создайте план коммуникации для своего проекта.

Успешные проекты работают на эффективном общении.Вот почему так важен план коммуникации.

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

Что такое план коммуникации по проекту?

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

Почему важен план коммуникации по проекту

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

План коммуникации играет важную роль в каждом проекте:

  • Создание письменной документации каждый может обратиться к
  • Установление четких ожиданий относительно того, как и когда будут публиковаться обновления
  • Повышение прозрачности проекта и его статуса
  • Предоставление возможностей для обмена отзывами
  • Повышение продуктивности собраний команды
  • Обеспечение соответствия проекта целям

Методы коммуникации команды проекта

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

  • Электронная почта
  • Встречи (лично, по телефону или в видеочате)
  • Доски обсуждений
  • Отчеты о состоянии
  • Приложения для совместной работы
  • Списки дел
  • Опросы

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

Как написать план коммуникации по проекту

Готовы изложить свой план коммуникации на бумаге? Составить план коммуникации для управления проектом так же просто, как выполнить следующие 5 шагов:

  1. Составить список коммуникационных потребностей вашего проекта . Каждый проект индивидуален. Примите во внимание размер проекта, характер выполняемой работы и даже уникальные предпочтения клиента, когда вы определяете, какие типы коммуникации необходимы этому проекту для успеха.
  2. Определите цель . Бомбардировка людей слишком большим количеством электронных писем или ненужных встреч может помешать их работе и заставить их упустить важные обновления. Составьте план целенаправленно и убедитесь, что каждое сообщение, которое вы включаете, имеет причину. Если вы действительно амбициозны, опишите основную повестку дня по темам, которые будут рассматриваться на каждой встрече или в каждом отчете.
  3. Выберите способ связи . Вам действительно нужна встреча, чтобы делиться еженедельными обновлениями, или достаточно доски для обсуждения вашего проекта? Продумайте, как ваша команда работает лучше всего, чтобы они могли оставаться в курсе, оставаясь при этом продуктивными.Если ваш клиент предпочитает индивидуальный подход к телефонному звонку, включите это в свой план.
  4. Установить ритм для связи . Установление регулярной частоты общения упрощает процесс, устанавливая четкие ожидания с самого начала. Это не только освобождает вас от случайных запросов на обновление статуса. Это также позволяет участникам проекта заранее выделить место для важных встреч и отчетов.
  5. Определите владельца и заинтересованные стороны .Передача права собственности создает ответственность, так что ваш тщательно разработанный план может полностью раскрыть свой потенциал. Как руководитель проекта вы будете нести ответственность за большую часть коммуникаций, но некоторые из них вы, возможно, захотите передать другим. Называя имена, перечислите аудиторию или заинтересованные стороны для каждого типа коммуникации. Таким образом, ключевые игроки будут готовы предоставлять обновления, когда это необходимо.

Примеры и шаблон плана коммуникации по проекту

Вы лучше всех знаете свою команду и заинтересованные стороны, поэтому как организовать детали — решать вам.Просто убедитесь, что это легко понять. Эти примеры показывают вам 3 различных варианта построения одного и того же коммуникационного плана.

Пример простого матричного плана коммуникаций Пример плана коммуникаций по методам Пример плана коммуникаций по аудитории

Хотите использовать этот формат плана коммуникации для своих будущих проектов? Загрузите наш бесплатный шаблон плана связи здесь.

Как включить план коммуникации по проекту в TeamGantt

С TeamGantt легко применить ваш план коммуникации в повседневной практике.Вот лишь несколько способов упростить взаимодействие по проекту и управлять им с помощью TeamGantt: