Любой портал – сайт, но не каждый сайт – портал. Эта формулировка может показаться путаной, однако имеет много смысла при разработке в веб.
Веб портал – это система сайтов, разработанная под большую нагрузку и широкую аудиторию. Обычный сайт, в свою очередь – одна или несколько страниц, объединенных между собой единой темой и часто созданных под определенную аудиторию.
Веб-порталы могут быть нескольких видов:
Сайты, в свою очередь, включают блоги, визитки, лендинги, портфолио, промо-сайты, простые интернет-магазины или сайты-витрины. Они не отличаются широким функционалом, а потому к ним применяются другие методы веб-разработки и программирования.
Программирование портала включает в себя несколько этапов:
Так как порталы разрабатываются под более высокую нагрузку и с большим количеством интерактивных сервисов, для их программирования используются:
Это самые популярные решения, которые используются для написания исходного кода и его редактирования. Современные редакторы экономят время и нервы разработчиков, расставляя отступы, скобки, закрывая кавычки. Самые мощные программы могут хранить историю изменений проекта, а также обновлять файлы, хранящиеся на удаленных серверах.
Прототип – схема будущего ресурса или его отдельных страниц. Прототипирование, в свою очередь, подразумевает процесс создания такой схемы. Это один из главных этапов на пути к началу разработки веб-порталов и визуализации каждого проекта.
Хороший прототип станет крепким фундаментом для остальных этапов работы. Кроме того, затраченное на проработку схемы портала время обязательно сэкономит часы в будущем. Важность прототипирования не только в том, что вы увидите потенциальный образ будущего веб-ресурса, но и сможете обдумать расположение элементов на каждой странице и их взаимодействие, а также внести правки в схему еще до начала создания портала. В ином случае, если на этапе разработки окажется, что некоторые элементы работают не так, как нужно, переделывать придется в разы больше, а на это потребуются дополнительное время и финансовые траты.
Проекту любого размера нужен прототип, важно лишь выбрать правильный его вид.
По глубине проработки выделяют:
По месту хранения:
По возможности взаимодействия:
Логично, что прототип может совмещать в себе эти характеристики: возможны такие комбинации как эскиз на бумаге или статичный прототип с низкой детализацией, а также статичный или интерактивный с высокой детализацией.
Какой выбрать? Зависит только от сложности и требуемой глубины проработки. Чем сложнее проект, тем больше внимания нужно уделить созданию прототипа. Если создается лэндинг, то достаточно будет статичной схемы расположения элементов на бумаге. Но мы говорим о крупных, многостраничных проектах с большим количеством сервисов, а значит, для них потребуется тщательно продумать схему каждой страницы прежде чем приступать к веб-разработке.
Один из важнейших этапов разработки веб-порталов – выбор IDE.
Vim. Вариант свободного текстового редактора vi разросся благодаря многочисленным расширениям и плагинам. Теперь Vim – почти совершенный редактор, который не требует мощной станции и работает с огромным количеством языков и платформ. Кроме того, для этой среды есть функция работы в виде только консоли и бесконечно много возможностей расширения.
Adobe Brackets. Несмотря на относительную «юность» этого редактора, Brackets заслужил доверие многих разработчиков. Особенно он подходит работающим с UI и фронтендом программистам и дизайнерам, так как упор в этом редакторе делается на визуализацию и CSS. Редактор позволяет просматривать HTML-код прямо в браузере, а работа с PSD-файлами оптимизирована, и импортировать их можно в Adobe Photoshop. Наконец, у редактора открытый исходный код, поэтому его можно подстраивать под нужды специалиста.
Visual Studio Code. Многофункциональный и при этом компактный редактор изначально предназначался для обработки JavaScript и его расширений. Однако плагины к VSC позволяют добавить и другие популярные языки, которые помогут при разработке портала. Кроме того, программа хорошо работает с платформой Node.JS.
Sublime Text 3. Кроссплатформенный редактор, поддерживающий множество плагинов и имеющий открытый исходный код. В нем есть удобное переключение между разными файлами, а широкие возможности настроек позволяют «подогнать» ПО под свои требования – от хоткеев до настройки цветовой темы.
Eclipse. Редактор подойдет специалистам, часто переключающимся между языками и платформами веб-разработки. Хорошо работает с Java и JavaScript и многими другими популярными языками.
Этот этап крайне важен для любого интернет-ресурса. Тестирование – тщательная проверка сайта на предмет потенциальных ошибок. Оно проводится как в процессе разработки портала, так и перед самым запуском. Во время проверки выявляются не только ошибки и баги, но и оценивается привлекательность сервиса для пользователей, удобство и безопасность использования. Кроме того, тестирование определяет, достигаются ли поставленные в начале работы над проектом бизнес-цели.
Специалисты выделяют несколько типов тестирования:
Функциональное тестирование. Проверяет работу каждой функции веб-портала, его возможность решить поставленные пользователем задачи. Его смысл – установить соответствие ресурса исходным функциональным требованиям клиента. Включает в себя проверку работы ссылок, пользовательских форм, проверку HTML/CSS-кодов, проверку workflow и отрицательных сценариев (например, вывод сообщений об ошибке при вводе некорректных данных).
Тестирование юзабилити (удобства использования). Выявляет характер взаимодействия человека с порталом. Упор делается на простоту навигации и субъективное удовлетворение посетителя от использования сервиса.
UI-тестирование (интерфейса пользователя). Проверка графического интерфейса пользователя. Помогает понять, удобно ли нажимать на кнопки, понятны ли иконки, определяет, насколько читабелен выбранный формат текста и шрифты. Также помогает определить, правильно ли расположены акценты и к чему стоит привлечь внимание. Кроме того, UI-тестирование определяет, как сайт будет выглядеть в других браузерах.
Тестирование производительности. Веб-порталы создаются под большую нагрузку, поэтому тестирование производительности обязательно включает:
Тестирование безопасности. Необходимо для выявления потенциальных уязвимостей, слабых мест и лазеек, которые могут привести к потере данных, дохода или репутации.
На этом этапе необходимо настроить модули портала, иерархию пользователей, а также интегрировать его со сторонними сервисами.
Веб-портал – огромный проект с большим количеством информации, которая хранится на разных модулях, поэтому важно разграничить доступ всех основных пользователей. Так, рядовым посетителям можно дать возможность комментировать публикации, в то время как администрация может как публиковать контент, так и комментировать его, таким образом общаясь с посетителями портала.
Наиболее распространены следующие роли:
Возможности каждого уровня пользователя должны учитываться при разработке веб портала.
Помимо создания иерархии доступа, нужно уделить внимание интеграции ресурса со сторонними сервисами. Хороший проект не может быть изолирован: внешняя интеграция позволяет решить многие бизнес-задачи и повысить юзабилити сайта.
Можно выделить некоторые наиболее популярные системы для интеграции:
Портал можно интегрировать и с другими типами ПО, которое разрабатывается индивидуально под отдельные проекты.
Высоконагруженные порталы – основа портфолио DDPlanet, в котором есть и наши собственные большие проекты – Выберу.ру и Мир квартир. Мы более 10 лет делаем уникальные ресурсы со сложной структурой и функционалом и находим нетиповые решения, которые не боимся применять на практике.
Мы убеждены, что каждый проект и его задачи уникальны. Поэтому не используем шаблоны и стандартные методы программирования, с головой погружаемся в специфику каждого проекта и проводим тщательный анализ рынка и бизнеса наших заказчиков. Все это – залог продуктивной работы по веб-разработке.
В нашем штате более 150 сотрудников, каждый из которых – часть команды. В каждом проекте задействован полный штат специалистов, от менеджера, аналитиков и разработчиков до контент-менеджеров. При этом все работы ведутся исключительно инхаус – мы не привлекаем сторонних специалистов, поэтому полностью отвечаем за качество готовых продуктов.
К тому же члены команды DDPlanet не стоят на месте и постоянно учатся и повышают квалификацию. Это настоящие профессионалы в своем деле, которые не боятся новшеств и экспериментов и следят за новыми веяниями в программировании. При разработке порталов используются технологии, ставшие стандартом для многих крупных IT-компаний, в том числе Asp.Net, Microsoft.Net, SharePoint.