Comments (3)
対応案
long タブへの動線の確保というよりは,A~F問題へリーチしやすくする点に主眼を置いた対応案が中心.
6問目までは YukicoderRegularTable
に入れ,余りは別表とする
- 対応内容
- 脱葉さんはTwitterを使っています 「@iiljj 前話したyukicoder problemsの件ですが,純粋にA~Fは全て纏めてtab1において,G~以降の問題が存在する場合はtab2にG~以降だけ置くというのはどうですか」 / Twitter
- G以降がある場合には別テーブルへの動線を作ることも考える
- 「<」「>」ボタンをフロートさせるか,ボタンをテーブルに統合するなどして実現する
- 利点:7問以上構成でもFまでの問題へリーチしやすくなる,ボタンをフロートさせるだけであれば実装は容易
- 欠点:同一コンテストの問題が複数テーブルに分断されるため,意味的におかしなことになる,テーブル側の実装がハード
テーブルを横スクロール可能にする
- 利点:対応が容易,標準コンポーネントのみで対応可能
- 欠点:画面幅が微妙に狭い非モバイル端末においてUIが不細工になりユーザビリティにも問題が生じる,8問目以上へ辿り着くためのスクロール量が多い,table data 領域右側に大量の空白領域ができる
G問題以降を折り返して表示する
- 利点:1つのテーブルを見るだけで yukicoder contest 全ての問題にリーチ可能
- 欠点:折り返しつつG以降であるとわかるように表示するためには,コンポーネントの標準的な使用法から外れる必要があり,実装がややハード
よりよりタブ名称を考える
- 対応内容:yukicoder contest (long) のようなタブ名称を,よりわかりやすくアクセスしやすいものに変更する
- これにより,ユーザの動線の問題が解消することを期待する
- 利点:名称さえ決まれば対応が容易
- 欠点:よい名称が思い浮かばない
何らかの註記を表示する
- 対応内容:一部の問題が
YukicoderRegularTable
に含まれないこと・別タブ内に表示されることを伝える内容のテキストを表示する - 利点:対応が容易
- 欠点:メインのテーブルの手前に置くことになるので見た目がくどくなる,そもそも註記がなくても自然に使えるページ構成を考えるべき
from yukicoder-problems.
補足
- 現在,7問以上構成の yukicoder contest を別タブで切り出している理由
- yukicoder contest 57 が10問構成であり,通常のテーブルに収めるには問題数が多すぎた
- yukicoder problems 開発開始当時,ほかに yukicoder contest 220 (7問構成) があり,その他の yukicoder contest は全て6問以下構成だった
- tab1 に10問無理やり表示するという構成のテーブルを開発初期に作ってみたが,文字を小さくする等したとしても,デザイン的にかなり無理があったため,この案は没になった
- その結果,実装の選択肢として次の2つが残った
- G問題までtab1に表示し,10問構成コンのみtab2とする
- F問題までtab1に表示し,7問以上構成コンをtab2とする
- 最終的には,tab2 にコンテストが1つだけ浮いてしまうのはバランスが悪い点,tab1 内のテーブルのデザイン上の優位性(G列がほとんど用いられないにもかかわらず,一定の画面幅を占有し続けてしまう)といった理由から,7問以上を別タブとする案を採った.
- yukicoder contest 57 が10問構成であり,通常のテーブルに収めるには問題数が多すぎた
from yukicoder-problems.
関連 issue として #128 を生やしました.
7問構成のコンテストの増加に伴い,通常テーブルに7問まで詰めたほうがユーザには優しそうな状況になってきたので,変更を加えるつもりです.
from yukicoder-problems.
Related Issues (20)
- UserPage: ユーザによってエラーが起きて真っ白になる HOT 1
- 最速実行時間ランキング対応
- テストケースの追加
- DifficultyCircle: Experimental difficulty 対応
- TablePage/ContestTable: Other Problems タブ選択でクラッシュする
- AtCoder Problemsの難易度推定アルゴリズム変更に追従 HOT 5
- TablePage: G まで regular に入れても良さそう HOT 2
- UserPage: AdC2020 の AC が Streak などに反映されない HOT 1
- 開催中のコンテストへの対応
- UserPage/SolvedProblemList: First・リジャッジ後の区別ができる表示を追加する
- ListPage/ListTable: フィルタ条件を保存・復元できるようにする
- ListPage/ListTable: 問題ラベル(A, B, C, ...)を表示する
- ProblemDetailPage: ProblemId/No がごっちゃになってるっぽい
- ranking API の v2 移行
- Actions移行対応
- ListPage/ListTable: クエリパラメータから page が正しく復元されない
- TablePage: regular/long 統合
- Table/List: AC済み問題のうち一部が未AC扱いになる HOT 1
- UserPage/SolvedProblemList: After Rejudge が出まくる
- TablePage/AllProblemsTable: 3100 番以降が欠けてしまう
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from yukicoder-problems.