Представление спикеров конференции Desktop UI & Business Application. Про UI
Всем привет! На днях мы рассказали, что на конференции войдет в часть посвященной бэкенду, сегодня мы расскажем, какие темы будут затронуты спикерами касательно пользовательского интерфейса в сфере энтерпрайз и проблем, связанных с ним.
И прежде чем мы перейдем к описанию докладов и отчего они важны, скажем, что картинка для привлечения внимания выбрана не просто так. У нас организовались приятные подарки для новых участников конференции. Подробности ниже.
Есть такая проблема, называется «проблема чистого листа». Это когда у тебя есть задание, и ты сидишь перед чистым листом бумаги или новым проектом в студии и не знаешь с какого края начать. Опытные люди скажут, что начни с любого места, хоть с середины, а дальше уже все пойдет как по маслу, начало или какие-то начальные фазы можно дописать потом. А еще всегда легче править уже созданное, чем самому что-то создавать с нуля. В программировании проблема создания с нуля стоит уже не так остро, потому что есть огромное количество различных генераторов кода, на основе предоставленных данных. В некотором роде это быстрое прототипирование, на основе которого уже можно пробовать и развивать идеи бизнеса.
Как раз про такой инструмент расскажет представитель компании DevExpress ведущий разработчик подразделения Desktop разработки Антон Абанин. Его доклад посвящен технологии scaffolding на основе модели данных в базе данных. В докладе рассмотрены типовые задачи, возникающие при разработке бизнес-приложений на платформе WPF, и предложены эффективные реюзабельные способы решения этих задач, воплощенные в DevExpress Scaffolding Wizard — инструменте быстрой разработки CRUD и LOB приложений.
Многие скорее всего не по наслышке знают как много приложений существует для простого чтения и обновления записей в базе данных. Т.е. нужно простое приложение с табличным интерфейсом, которое позволяет редактировать записи в таблице или же в отдельных окнах. Т.е. примерно, как вот это:
Всем это знакомо. Так вот Антон расскажет, как сделать этот рутинный процесс быстрым и безболезненным, предоставляя пользователям то что они хотят. Конечно же будут затронуты вопросы кастомизации интерфейса для более адекватного представления данных в зависимости от ограничений бизнес-модели.
Более того, будут рассмотрены типичные проблемы таких приложений и способы их решения. В качестве наиболее типичных проблем можно указать следующие:
Как лучше всего организовать навигацию между модулями приложения? Как обеспечить слабую связанность между модулями приложения? Что делать с наивными EF SQL-запросы которые вас тормозят? Почему Entity-объекты не INPC? Как сделать загрузку данных асинхронной? И как все же показать записи, когда их настолько много, что асинхронная загрузка уже не помогает? В общем, все то что встречается в типичной энетерпрайз разработке.
Еще один докладчик от DevExpress, компании которая имеет огромный опыт в создании компонентов для UI, Дмитрий Гаравский, ведущий разработчик подразделения Desktop разработки, расскажет о том, как они прикрутили подход MVVM к Winforms, и что из этого получилось. Из доклада вы узнаете о применении популярного паттерна MVVM для упрощения и ускорения процесса разработки desktop-приложений.
Будут рассмотрены общие проблемы этого паттерна и решения которые они предлагают в кроссплатформенном MVVM фреймворке. Упор будет сделан на практические аспекты и техники в условиях использования платформы WinForms и контролов от DevExpress.
Следующей больной темой при работе с пользовательским интерфейсом является его тестируемость. Погодите, погодите, сразу писать комментарии в стиле «не читай@комментируй»! Да, все знают, что надо использовать шаблон Humble View, который говорит нам о том, что представление должно быть максимально простое (читай «тупое») без какой-либо логики внутри. Но суровая правда такова, что взаимодействие элементов интерфейса между собой достаточно сложное порой и это никак не протестировать. В более-менее приемлемом виде.
В большинстве случаев принимается решение, что логика достаточно проста, а если что, то существует smoke тестирование. Т.е. мы просто запустим приложение и посмотрим, что все на своих местах. Но… часто это не помогает. Нужны автоматизированные тесты для UI, что от изменения одной части интерфейса поменялась другая, что в зависимости от набора галочек доступны или скрыты определенные возможности. Сценариев миллион и все их «протыкивать» руками весьма трудоемко.
Амир Ромашкин, разработчик из Дойче Банка, расскажет о техническом решении для тестирования WPF приложений, использующем простую технику DLL-иньекции. Вы увидите, что можно легко тестировать UI без библиотеки Microsoft UI Automation, и даже будет демонстрация того, как можно написать свой собственный подобный мини-фреймворк.
Все перечисленные темы хороши, но они не дают понять, как сделать удобный для пользователя интерфейс. Энетерпрайз программы не должны быть синонимом к «неудобные, спартанские». Наоборот, они должны максимально способствовать эффективности производственного процесса, чтобы не тратить время на обучение новых сотрудников, чтобы интерфейс был интуитивно понятен. Интересно, был бы столь же эффективен Тони Старк в своем бронекостюме, если бы интерфейс был слишком простым, что не давало бы полной информации о состоянии систем, или не удобным, тогда как всем этим хозяйством управлять?
Да, пока что интуитивно понятный интерфейс для многих энтерпрайз систем — из разряда фантастики и такое сложно себе представить без кучи кнопочек для настроек всего и вся, но все же. На наш взгляд лучше всего о проблемах и решениях для такого типа программ может рассказать представитель 1С, Петр Грибанов — технологический евангелист.
Бизнес-приложения являются одним из самых массовых типов программного обеспечения; многие из людей проводят бОльшую часть своего дня, работая с ERP, CRM и другими программами, обслуживающими жизненный цикл предприятия. Как сделать программу, которая поддерживает сложные бизнес-процессы, простой в использовании? Чем можно пожертвовать ради удобства пользователя? На примере 1С будет рассмотрено, как эволюционировал пользовательский интерфейс деловых приложений со времен DOS до наших дней, какие методики используются для улучшения юзабилити, которые вы можете взять на вооружение.
А теперь позвольте представить вам внезапный подарок: билеты Стандарт PLUS с подарком от нашего спонсора PluralSight.
Доступ на 1 месяц к 3,700+ курсам по программированию на PluralSight. Стоимость этого доступа 29$ (т.е. примерно 1680 руб.). Если вы хотите изучить что-то новое или расширить свои знания с помощью видеокурсов, то билет Стандарт PLUS ваш выбор! Билет де-факто стоит для вас 3250 — 1680 = 1570 руб.
Более того, если вы идете большой компанией и берете билеты со скидкой 15%, то цена получается еще выгоднее.
Количество билетов по акции ограниченно! Успей купить билет на Go# сегодня =)