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

Олеся Мельник, фотография

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

Знакомство с компанией:

  • визитки,
  • корпоративные сайты.

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

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

Как создать Portable версию любой программы

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

Блог не обязательно делать с нуля — платформ для этих целей, вроде LiveJournal, Blogger, Blogspot, Tumblr и других, хватало во все времена.

  • соцсети,
  • форумы,
  • сайты знакомств.

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

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

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

и — это синонимы , поэтому не теряйтесь, если встретите такие формулировки.

Хороший сервис всегда выглядит лаконично. Чем меньше деталей отвлекает пользователя от основной функции, тем лучше. Наглядный пример — любые сервисы «Яндекса» или Google: на странице с картами вы найдёте только карты, а на сайте — только инструмент для управления финансами, без лишних ссылок и рекламы других продуктов.

Как создать логотип онлайн бесплатно за 5 минут (практический урок)

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

Почему создавать сайты сервисов сложнее и дороже, чем визитки

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

Что же усложняет создание такого сайта?

  • Более высокие затраты на , UX/ и . Сервисом будут пользоваться люди со специфическими потребностями, и чем более узкую задачу надо закрыть, тем острее интерфейс должен быть заточен под своего пользователя. Не стоит недооценивать важность пользовательского интерфейса.
  • Затраты на бэкенд-разработку. Лендингу или визитке бэкенд не нужен, потому что их контент статичный и не предполагает никакого интерактива. , наоборот же, надо работать с кучей данных: сортировать товары по стоимости, бренду или другому признаку, оформлять бронь в кинотеатре на конкретный фильм, время и место
  • Интеграция с разными сервисами. Это может быть что угодно: CRM, , , , оплата. Эту часть проекта можно сделать ещё дороже, если разрабатывать, например, собственный платёжных шлюз, но зачем, если есть готовые решения.
  • Отсутствие коробочных решений и конструкторов. Визитку можно сделать из шаблона, а — на основе сотен готовых CMS. Но если тебе нужна система по управлению отгрузками нефтепродуктов с уникальной механикой, заточенной под твои , то тебе не обойтись без кастомной разработки с нуля, а это долго и дорого.

Из чего складывается цена разработки

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

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

Читайте также:
Описание программы adobe premiere pro

На стадии дизайна продумываются пользовательский опыт (UX), интерфейс (UI) и внешний вид сервиса.

Чтобы сервис был хорош собой на всех устройствах, делают адаптивную HTML/ и в целом силой кода приводят в движение созданный дизайн, а налаживают взаимодействие и со стороны сервера.

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

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

Что входит в стек технологий

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

  • Языки программирования PHP, Python, Ruby.
  • Фреймворки Laravel, Yii2, Symfony, Django, Ruby On Rails.
  • Базы данных MySQL, PostgreSQL, Redis, MongoDB.
  • Операционные системы Ubuntu, CentOS.

Сколько стоят

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

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

Стоимость разработки веб-сервиса

Информационный сайт или маркетплейс

Иногда сервис — это отдельный ресурс, который решает определённые задачи. К примеру, системы бронирования Airbnb или Skyscanner нужны для того, чтобы найти жильё или купить билет на самолёт. Это яркий пример лаконичного сервиса с одной главной функцией.

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

LinguaCompass, дизайном и разработкой которого занималась компания Лайв Тайпинг, отчасти тоже одним решением закрывает две проблемы: он помогает родителям найти место за границей, где дети не только отдохнут, но и будут изучать иностранный язык с его носителем. С поиском места поможет очень гибкий фильтр, где можно задать и страну, и язык, и диапазон цен, и активности помимо учёбы.

Самая затратная функциональность маркетплейса — это корзины и оформление заказов. Логика корзины сложно устроена. Минимум, который она должна уметь — хранить выбранные товары, пополнять и убирать их с пересчётом итоговой суммы, а максимум — учитывать, как на итоговую сумму влияют и акции в духе «добавь товар, А и В и получи товар С со скидкой 20%».

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

В итоге создание маркетплейса типа Яндекс. Маркета будет стоить от 1 млн 705 тыс. рублей до 3 млн 498 тыс. рублей.

Пример расчёта цены на разработку маркетплейса типа Яндекс Маркета

Пример расчёта цены на разработку маркетплейса типа goods.ru

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

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

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

Читайте также:
Самая сложная программа офисная

Создание доски объявлений будет стоить от 1 млн 397 тыс. рублей до 2 млн 728 тыс. рублей.

Пример расчёта цены на разработку онлайн доски объявлений типа Авито

Пример расчёта цены на разработку онлайн доски объявлений типа Авито

Еще один распространённый вариант сервиса — сайт для . Такой формат часто используют юристы или врачи, хотя, по сути, он подходит для любой сферы, в которой эксперт может дать совет или рекомендацию без личной встречи. На сайте LiveExpert может зарегистрироваться специалист из любой области (от эзотерики до бизнеса), а пользователи будут задавать ему вопросы через специальную форму. Ресурс может быть полностью заточен под работу в интернете, как в случае с сервисом Яндекс. Здоровье, где пользователи обращаются к специалистам через чат, аудиосообщения или видеосвязь.

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

На дизайн и разработку для уйдёт от 979 тыс. до 2 млн 244 тыс. рублей.

Пример расчёта цены на разработку агрегатора онлайн-консультаций

Пример расчёта цены на разработку агрегатора

Компания из сферы услуг и торговли

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

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

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

Сервис, сравнивающий цены на различные товары, по нашим оценкам стоит от 968 тыс. до 2 млн 46 тыс. рублей.

Пример расчёта цены на разработку онлайн агрегатора со сравнением товаров типа Яндекс.Маркет

Пример расчёта цены на разработку онлайн агрегатора со сравнением товаров типа Яндекс.Маркет

Системы бронирования

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

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

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

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

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

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

Стоимость создания для бронирования — от 671 тыс. до 1 млн 584 тыс. рублей.

 Пример расчёта цены на разработку веб-сервиса для бронирования, агрегатора отелей

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

Создатели программ и приложений

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

Читайте также:
Как создать дубликат программы на ПК

С помощью сервиса Pixlr можно быстро и бесплатно обработать фотографию или картинку. Параллельно с существует одноименное мобильное приложение, в котором есть платные функции и реклама, приносящая деньги владельцам продукта.

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

Давать вилку стоимости таких сервисов очень сложно. Если доска объявлений одинакова по функциональности независимо от продаваемых товаров, то текстовый редактор и — принципиально разные вещи; отличаться друга от друга по сложности разработки будут даже текстовые редакторы, например, Telegraph и Microsoft Word. Если вам нужно оценить разработку подобного сервиса — напишите нам, разберёмся вместе.

Вывод

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

Разработка стоит дороже, чем разработка другого сайта. Потребуется ответственная работа аналитика, UX/, фронтенд и и тестировщика. Хотите обойтись конструктором? Ничего не выйдет: из ограниченного набора элементов не собрать систему, которая будет работать на определённые . Только кастомная разработка с нуля.

Источник: livetyping.com

HTTP-сервис в 1С: создание, публикация и отладка

В платформе версии 8.3.5 появилась возможность создавать HTTP-сервисы. Как и «старые» SOAP web-сервисы, HTTP-сервис позволяет получать/изменять данные, но при этом, как утверждает компания 1С, HTTP-сервисы потенциально позволяют упростить создание клиентских приложений, уменьшить объем передаваемых данных и вычислительную нагрузку, все это особенно для мобильных устройств.

В этой статья я постараюсь рассказать о том, как создавать, отлаживать и использовать HTTP-сервисы в 1С.

Начнем с того, что для создания HTTP-сервиса нам необходим веб-сервер, например Apache 2.2 (начиная с версии 8.3.8 и Apache 2.4 подойдет). Описывать установку веб-сервера думаю нет необходимости.

Создание HTTP-сервиса

Итак, создаем новый HTTP-сервис:

Новый HTTP-сервис

Корневой URL — важный параметр, входит в адрес по которому сервис будет доступен после публикации.

В соответствующем разделе создаем новый шаблон URL и метод:

Шаблоны URL и методы

У шаблона URL есть единственное свойство — шаблон. Этим свойством можно задать путь по которому будет происходить обращение к HTTP-сервису. В шаблоне можно использовать параметризованные сегменты, как на рисунке ниже (об их использовании ниже).

Свойства шаблона

У метода есть свойство HTTP-метод, которое можно указать выбрав одно из следующих значений: GET, POST, PUT, DELETE, PATCH, MERGE, CONNECT, OPTIONS, TRACE, PROPFIND, PROPPATCH, MKCOL, COPY, MOVE, LOCK, UNLOCK или Любой.

При обращении к HTTP-сервису, платформа пытается сопоставить адрес, по которому произошло обращение с одним из имеющихся шаблонов и методов. Если сопоставить удалось, то будет выполнен обработчик метода, если же сопоставить не удалось, то будет возвращен код ответа 404.

Свойства метода

Перейдем к примеру обработчика метода, в нем я возвращаю содержимое переменной «Запрос», которая передается в обработчик:

Функция ШаблонGetInfo(Запрос)
тОтвет = «HTTPМетод — «+Запрос.HTTPМетод+»
«;
тОтвет = тОтвет+»БазовыйURL — «+Запрос.БазовыйURL+»
«;
тОтвет = тОтвет+»ОтносительныйURL — «+Запрос.ОтносительныйURL+»
«;
Для Каждого тЭлем Из Запрос.ПараметрыURL Цикл
тОтвет = тОтвет+»
«+»ПараметрыURL[«+тЭлем.Ключ+»]»+» — «+тЭлем.Значение;
КонецЦикла;
тОтвет = тОтвет + » «;
Для Каждого тЭлем Из Запрос.ПараметрыЗапроса Цикл
тОтвет = тОтвет+»
«+»ПараметрыЗапроса[«+тЭлем.Ключ+»]»+» — «+тЭлем.Значение;
КонецЦикла;
тОтвет = тОтвет + » «;
Для Каждого тЭлем Из Запрос.Заголовки Цикл
тОтвет = тОтвет+»
«+»Заголовки[«+тЭлем.Ключ+»]»+» — «+тЭлем.Значение;
КонецЦикла;
HTTPОтвет = Новый HTTPСервисОтвет(200);
HTTPОтвет.УстановитьТелоИзСтроки(тОтвет);
HTTPОтвет.Заголовки[«Content-Type»] = «text/html; charset=utf-8»; //сообщаем что это html
Возврат HTTPОтвет;
КонецФункции

Публикация и проверка HTTP-сервиса

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

Публикация HTTP-сервиса

После публикации я могу обратиться к сервису вот по такому адресу: http://localhost/HTTPTest/hs/Obmen/test-parametr/Test/GetInfo?param=value, где:

Результат выполнения метода

  • localhost — адрес сервера;
  • HTTPTest — имя указанное при публикации;
  • hs — обязательный сегмент пути, дающий понять, что работаем мы именно с HTTP-сервисом;
  • Obmen — корневой URL HTTP-сервиса;
  • test-paramenter/Test — путь к методу внутри сервиса, определяется шаблоном;
  • GetInfo — название метода;
  • ?param=value — необязательный пример передачи методу параметров.

Параметры URL, параметры запроса и заголовки представлены в виде фиксированных структур.

Вероятнее всего, при обращение к HTTP-сервису нужно будет авторизоваться (если в базе есть хоть один пользователь), есть несколько способов решения этой проблемы.

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

ib=»File=»C:BaseTEST»;Usr=Логин;Pwd=Пароль».

В этом случае любые обращения к HTTP-сервису не будут требовать логина и пароля.

Во-вторых, можно указывать логин и пароль при подключении к HTTP-сервису:

Источник: 1c-programmer-blog.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru