Примерные идеи концепта интерфейса. Может кто помочь с дизайном?

Mar 18, 2015 11:15

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


Read more... )

блогодром, проект

Leave a comment

berezovsky March 18 2015, 16:52:17 UTC
Вот вдогонку цитата из проектной вики - мои рассуждения по интерфейсу.

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

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

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

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

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

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

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

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

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

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

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

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

Edit
Прочее
Имеет смысл подсвечивать редко обновляемый контент. Иначе внимание может его просто пропустить.
>>

Reply


Leave a comment

Up