В середине 2018 года в Sports.ru задумались о переезде на новый WYSIWYG-редактор текста для пользовательских постов. С июня 2019 года редактор работает в режиме бета-версии. За это время мы решили множество проблем, связанных как с проектированием архитектуры всего сервиса, так и с реализацией самого редактора в браузере на основе библиотеки ProseMirror, и решили поделиться своим опытом.
Рубрика «проектирование сайтов»
Как в Sports.ru писали свой WYSIWYG-редактор
2020-03-13 в 14:54, admin, рубрики: rich text edit, wysiwyg, wysiwyg-редактор, Блог компании Sports.ru | Tribuna Digital, проектирование сайтов, Разработка веб-сайтовПроектирование интернет-магазина для SEO: (теория + чеклист)
2019-08-07 в 15:09, admin, рубрики: e-commerce, usability, веб-дизайн, интерфейсы, проектирование, Проектирование интернет-магазинов, проектирование интерфейсов, проектирование сайтов, прототипирование, Разработка под e-commerceЧто стоит учесть при проектировании интернет-магазина, чтобы не пришлось переделывать пол сайта для начала продвижения.
Статья разбита на две части.
Теория: о том, что в принципе можно учесть в SEO интернет-магазина и как это работает.
Чек-лист: 80 пунктов, по которым легко проверить, насколько удобно будет продвигать ваш сайт после разработки
По этому чек-листу мы проверяем все прототипы в студии, что сильно упрощает дальнейшую работу с сайтом для пользователей, администратора и для команды поддержки/продвижения.
Читать полностью »
Поваренная книга разработчика: DDD-рецепты (5-я часть, Процессы)
2019-06-04 в 13:48, admin, рубрики: clean architecture, domain-driven design, ruby, ruby on rails, Screaming Architecture, UML, uml-проектирование, use cases, Анализ и проектирование систем, архитектура приложений, Программирование, Проектирование и рефакторинг, проектирование сайтов, проектирование систем, Роберт Мартин, эрик эвансВведение
В рамках предыдущих статей мы описали: область применения, методологические основы, пример архитектуры и структуры. В данной статье, я хотел бы рассказать как описывать процессы, о принципах сбора требований, чем отличаются бизнес требования от функциональных, как перейти от требований — к коду. Рассказать о принципах применения Вариантов Использования (Use Case) и как они нам могут помочь. Разобрать на примерах варианты реализации шаблонов проектирования Interactor и Service Layer.
Примеры приведенные в статье даны с использованием нашего решения LunaPark, оно поможет вам с первыми шагами в описанных подходах.
Отделяем функциональные требования от бизнес требований.
Снова и снова случается так, что многие бизнес-идеи на самом деле не превращаются в конечный, намеченный продукт. Зачастую это происходит из-за неспособности понять разницу между бизнес-требованиями и функциональными требованиями, что в конечном итоге, приводит к несоответствующему сбору требований, ненужной документации, задержкам проекта и крупным проектным сбоям.
Или иногда мы сталкиваемся с ситуациями, в которых, хотя окончательное решение отвечает потребностям клиентов, но каким-то образом бизнес-цели не достигаются.
Поэтому крайне важно разделить бизнес-требования и функциональные требования, до того момента, как вы начнете их определять. Давайте разберем пример.
Поваренная книга разработчика: DDD-рецепты (4-я часть, Структуры)
2019-01-15 в 13:36, admin, рубрики: clean architecture, DDD, domain-driven design, Entity, patterns, ruby, ruby on rails, Screaming Architecture, Value Object, Анализ и проектирование систем, архитектура приложений, Программирование, Проектирование и рефакторинг, проектирование сайтов, проектирование систем, Роберт Мартин, эрик эвансВведение
Итак, мы уже определились с областью применения, методологией и архитектурой. Перейдем от теории к практике, к написанию кода. Хотелось бы начать с шаблонов проектирования, которые описывают бизнес логику — Service и Interactor. Но прежде чем приступить к ним, изучим структурные паттерны — ValueObject и Entity. Разрабатывать мы будем на языке ruby. В дальнейших статьях разберем все паттерны, необходимые для разработки с использованием Вариативной архитектуры. Все наработки, являющиеся приложениями к данному циклу статей, соберем в отдельный фреймворк.
И мы уже подобрали подходящее название — LunaPark.
Текущие наработки выложенны на Github.
Разобрав все шаблоны, соберем один полноценный микросервис.
Поваренная книга разработчика: DDD-рецепты (3-я часть, Архитектура приложения)
2018-11-13 в 13:44, admin, рубрики: clean architecture, domain-driven design, ruby, ruby on rails, Screaming Architecture, Анализ и проектирование систем, архитектура приложений, Программирование, Проектирование и рефакторинг, проектирование сайтов, проектирование систем, Роберт Мартин, эрик эвансВведение
В рамках предыдущих статей мы выделили область применения подхода и рассмотрели основные методологические принципы Domain Driven Design.
В данной статье я хотел бы обозначить основные современные подходы к построению архитектуры корпоративных систем: Supple, Screaming, Clean и дать им свою четкую интерпретацию в виде полноценного готового решения.
В дальнейшем рассмотрим каждый шаблон проектирования подробно: обозначим область применения, приведем примеры кода, выделим рекомендуемые практики. В итоге, напишем готовый микросервис.
Проблемы понимания MVC в ASP.NET MVC и не только
2017-11-20 в 7:30, admin, рубрики: .net, adr, ASP, ASP.NET, asp.net mvc, mvc, архитектура приложений, Веб-разработка, паттерны, Проектирование и рефакторинг, проектирование сайтов, Разработка веб-сайтовСлучалось ли вам делать рефакторинг "толстых" контроллеров? Приходилось ли создавать многоэтажные модели представлений? Добавлять в представление данные и переписывать при этом код контроллера? Казалось ли вам, что что-то идёт неправильно?
Причина в том, что многие MVC-фреймворки не вполне следуют шаблону MVC, а люди, использующие их, сами того не замечая, ещё больше отклоняются от него. Казалось бы, он довольно прост, и описан в Википедии, но раз за разом возникают проблемы его понимания.
Создание продающих сайтов с помощью STM модели
2016-09-09 в 15:11, admin, рубрики: веб-аналитика, веб-дизайн, интернет-маркетинг, Повышение конверсии, проектирование сайтовКак нужно проектировать страницы сайта, чтобы он продавал? Вот некоторые критерии, которые часто применяют заказчики и проектировщики:
- Чобственный опыт — «получилось на прошлом сайте, получится и сейчас»;
- Мнения экспертов и информация из статей — «телефон обязательно должен быть в шапке», «обязательно внедрите модуль сравнения товаров»;
- Мнения авторитетных сотрудников — «дизайнер сказал, что в левом блоке нужно разместить новости»;
- Сравнение с конкурентами — «у компании N на сайте есть модуль избранного, их сайт продает, значит и нам он нужен».
WebProfy сделал шаг
2015-10-06 в 12:56, admin, рубрики: Блог компании Kokoc Group, дизайн сайта, Медиа, проектирование сайтов, управление проектамиСтудия веб-дизайна WebProfy (Kokoc Group) разработала дизайн сайта Фестиваля «Всероссийский День ходьбы», который впервые прошел в стране по инициативе Олимпийского комитета России 3 октября 2015 года.
Создание Responsive Landing Page на WordPress от А до Я
2015-02-23 в 7:11, admin, рубрики: front-end, web-разработка, wordpress, wordpress.com, веб сайты и графический дизайн, веб-дизайн, Веб-разработка, верстка сайтов, дизайн интерфейсов, дизайн сайтов, Мобильный веб, проектирование интерфейсов, проектирование сайтовНовый видеокурс по созданию адаптивного одностраничного сайта и посадке на CMS WordPress. В процессе обучение рассмотрены такие моменты, как проектирование интерфейса, создание скетча, адаптивная верстка и подключение Front-End плагинов, посадка на WordPress и создание опций шаблона. При разработке темплейта учитывалась возможность дистрибуции и распространения темы.
Читать полностью »
Каким должен быть интерфейс
2014-08-22 в 6:02, admin, рубрики: интерфейсы, проектирование взаимодействия, проектирование интерфейсов, проектирование сайтовПлан статьи:
- Этапы проектирования интерфейса;
- Пользователи;
- Взаимодействие и требования;
- Инфраструктура;
- Детализация;
- Инструменты для создания прототипов.
Любое сложное действие можно декомпозировать на более простые. Когда не представляешь, как решить задачу нужно пытаться ее разбивать на простые до тех пока не поймешь, что нужно делать. Проектирование интерфейсов — трудная задача, поэтому декомпозируем ее на этапы:
Исследование -> Моделирование пользователей -> Выработка требований -> Определение общей инфраструктуры -> Детализация -> Обсуждение.
Читать полностью »